mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
33159 lines
1.7 MiB
Plaintext
33159 lines
1.7 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_02060C00 @ 0x2060c00
|
|
void Gambit_fn_02060C00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02060C00: ; // 0x2060c00
|
|
/* 02060C00 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02060C00 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02060C00 */ if (_t1) goto L_02060C04; else goto L_02060C1C;
|
|
L_02060C04: ; // 0x2060c04
|
|
/* 02060C04 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02060C08 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 02060C0C */ _t2 = cpu->r[9] + 0x00000002u;
|
|
/* 02060C0C */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t2);
|
|
/* 02060C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02060C14 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060C14 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02060C14 */ if (_t4) goto L_02060C18; else goto L_02060C28;
|
|
L_02060C18: ; // 0x2060c18
|
|
/* 02060C18 */ return;
|
|
L_02060C1C: ; // 0x2060c1c
|
|
/* 02060C1C */ _t5 = cpu->r[12] + 0x00000002u;
|
|
/* 02060C1C */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02060C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02060C24 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060C24 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02060C24 */ if (_t7) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02060C24 */ goto L_02060C28;
|
|
L_02060C28: ; // 0x2060c28
|
|
/* 02060C28 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02060C2C */ _t8 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02060C2C */ cpu->r[7] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02060C30 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02060C30 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02060C30 */ if (_t10) goto L_02060C34; else goto L_02060C3C;
|
|
L_02060C34: ; // 0x2060c34
|
|
/* 02060C34 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02060C38 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02060C3C: ; // 0x2060c3c
|
|
/* 02060C3C */ _t11 = cpu->r[12] + 0x00000002u;
|
|
/* 02060C3C */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t11);
|
|
/* 02060C40 */ _t12 = cpu->r[12] + 0x00000000u;
|
|
/* 02060C40 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t12);
|
|
/* 02060C44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02060C48 */ _t13 = cpu->r[12] + 0x00000004u;
|
|
/* 02060C48 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02060C4C */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 02060C50 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02060C50 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02060C50 */ if (_t15) goto L_02060C68; else goto L_02060C54;
|
|
L_02060C54: ; // 0x2060c54
|
|
/* 02060C54 */ /* nop */
|
|
/* 02060C58 */ _t16 = cpu->r[3] + cpu->r[11];
|
|
/* 02060C58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02060C5C */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02060C60 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 02060C64 */ _t17 = cpu->r[12] + 0x00000004u;
|
|
/* 02060C64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
L_02060C68: ; // 0x2060c68
|
|
/* 02060C68 */ cpu->ctr = cpu->r[11];
|
|
/* 02060C6C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02060C70 @ 0x2060c70
|
|
void Gambit_fn_02060C70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02060C70: ; // 0x2060c70
|
|
/* 02060C70 */ cpu->r[0] = cpu->lr;
|
|
/* 02060C74 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02060C74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02060C74 */ cpu->r[1] = _t0;
|
|
/* 02060C78 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02060C78 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02060C7C */ cpu->r[31] = cpu->r[3];
|
|
/* 02060C80 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02060C80 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02060C84 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02060C84 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02060C88 */ cpu->r[12] = 0x00000000u;
|
|
/* 02060C8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02060C90 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02060C90 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02060C94 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060C94 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02060C94 */ if (_t6) goto L_02060CBC; else goto L_02060C98;
|
|
L_02060C98: ; // 0x2060c98
|
|
/* 02060C98 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02060C98 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02060C9C */ /* nop */
|
|
/* 02060CA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02060CA4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060CA4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02060CA4 */ if (_t9) goto L_02060CA8; else goto L_02060CBC;
|
|
L_02060CA8: ; // 0x2060ca8
|
|
/* 02060CA8 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02060CA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02060CAC */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02060CAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02060CB0 */ cpu->ctr = cpu->r[0];
|
|
/* 02060CB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02060CB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02060CBC: ; // 0x2060cbc
|
|
/* 02060CBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02060CC0 */ Gambit_fn_02060BE8(cpu);
|
|
/* 02060CC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02060CC8 */ Gambit_fn_027FC37C(cpu);
|
|
/* 02060CCC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02060CCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02060CD0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02060CD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02060CD4 */ cpu->lr = cpu->r[0];
|
|
/* 02060CD8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02060CDC */ return;
|
|
}
|
|
|
|
// fn_02060C74 @ 0x2060c74
|
|
void Gambit_fn_02060C74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02060C74: ; // 0x2060c74
|
|
/* 02060C74 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02060C74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02060C74 */ cpu->r[1] = _t0;
|
|
/* 02060C78 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02060C78 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02060C7C */ cpu->r[31] = cpu->r[3];
|
|
/* 02060C80 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02060C80 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02060C84 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02060C84 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02060C88 */ cpu->r[12] = 0x00000000u;
|
|
/* 02060C8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02060C90 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02060C90 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02060C94 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060C94 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02060C94 */ if (_t6) goto L_02060CBC; else goto L_02060C98;
|
|
L_02060C98: ; // 0x2060c98
|
|
/* 02060C98 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02060C98 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02060C9C */ /* nop */
|
|
/* 02060CA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02060CA4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060CA4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02060CA4 */ if (_t9) goto L_02060CA8; else goto L_02060CBC;
|
|
L_02060CA8: ; // 0x2060ca8
|
|
/* 02060CA8 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02060CA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02060CAC */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02060CAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02060CB0 */ cpu->ctr = cpu->r[0];
|
|
/* 02060CB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02060CB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02060CBC: ; // 0x2060cbc
|
|
/* 02060CBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02060CC0 */ Gambit_fn_02060BE8(cpu);
|
|
/* 02060CC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02060CC8 */ Gambit_fn_027FC37C(cpu);
|
|
/* 02060CCC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02060CCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02060CD0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02060CD0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02060CD4 */ cpu->lr = cpu->r[0];
|
|
/* 02060CD8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02060CDC */ return;
|
|
}
|
|
|
|
// fn_02060CE0 @ 0x2060ce0
|
|
void Gambit_fn_02060CE0(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_02060CE0: ; // 0x2060ce0
|
|
/* 02060CE0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02060CE0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02060CE4 */ /* nop */
|
|
/* 02060CE8 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 02060CE8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02060CEC */ cpu->r[7] = cpu->r[0];
|
|
/* 02060CF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02060CF4 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 02060CF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02060CF8 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02060CF8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02060CF8 */ if (_t4) goto L_02060CFC; else goto L_02060D14;
|
|
L_02060CFC: ; // 0x2060cfc
|
|
/* 02060CFC */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02060D00 */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 02060D04 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02060D04 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02060D08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02060D0C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060D0C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02060D0C */ if (_t7) goto L_02060D10; else goto L_02060D20;
|
|
L_02060D10: ; // 0x2060d10
|
|
/* 02060D10 */ return;
|
|
L_02060D14: ; // 0x2060d14
|
|
/* 02060D14 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02060D14 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02060D18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02060D1C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060D1C */ _t10 = _t9 & 0x00000001u;
|
|
/* 02060D1C */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02060D1C */ goto L_02060D20;
|
|
L_02060D20: ; // 0x2060d20
|
|
/* 02060D20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02060D24 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02060D24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02060D28 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02060D28 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02060D28 */ if (_t13) goto L_02060D2C; else goto L_02060D34;
|
|
L_02060D2C: ; // 0x2060d2c
|
|
/* 02060D2C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02060D30 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02060D34: ; // 0x2060d34
|
|
/* 02060D34 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02060D34 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02060D38 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02060D38 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02060D3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02060D40 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02060D40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02060D44 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 02060D48 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02060D48 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02060D48 */ if (_t18) goto L_02060D60; else goto L_02060D4C;
|
|
L_02060D4C: ; // 0x2060d4c
|
|
/* 02060D4C */ /* nop */
|
|
/* 02060D50 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02060D50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02060D54 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02060D58 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 02060D5C */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02060D5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02060D60: ; // 0x2060d60
|
|
/* 02060D60 */ cpu->ctr = cpu->r[11];
|
|
/* 02060D64 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02060D68 @ 0x2060d68
|
|
void Gambit_fn_02060D68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02060D68: ; // 0x2060d68
|
|
/* 02060D68 */ cpu->r[0] = cpu->lr;
|
|
/* 02060D6C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02060D6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02060D6C */ cpu->r[1] = _t0;
|
|
/* 02060D70 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02060D70 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02060D74 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02060D74 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02060D78 */ cpu->r[30] = cpu->r[3];
|
|
/* 02060D7C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02060D7C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02060D80 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02060D80 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02060D84 */ /* nop */
|
|
/* 02060D88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02060D8C */ cpu->r[31] = cpu->r[4];
|
|
/* 02060D90 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060D90 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02060D90 */ if (_t6) goto L_02060D94; else goto L_02060DA8;
|
|
L_02060D94: ; // 0x2060d94
|
|
/* 02060D94 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02060D94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02060D98 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02060D98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02060D9C */ cpu->ctr = cpu->r[0];
|
|
/* 02060DA0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02060DA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02060DA8: ; // 0x2060da8
|
|
/* 02060DA8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02060DAC */ cpu->r[4] = cpu->r[31];
|
|
/* 02060DB0 */ Gambit_fn_02060CE0(cpu);
|
|
/* 02060DB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02060DB8 */ /* nop */
|
|
/* 02060DBC */ Gambit_fn_027FC35C(cpu);
|
|
/* 02060DC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02060DC4 */ Gambit_fn_02060B60(cpu);
|
|
/* 02060DC8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02060DC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02060DCC */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02060DCC */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02060DD0 */ cpu->lr = cpu->r[0];
|
|
/* 02060DD4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02060DD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02060DD8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02060DDC */ return;
|
|
}
|
|
|
|
// fn_02060D6C @ 0x2060d6c
|
|
void Gambit_fn_02060D6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02060D6C: ; // 0x2060d6c
|
|
/* 02060D6C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02060D6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02060D6C */ cpu->r[1] = _t0;
|
|
/* 02060D70 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02060D70 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02060D74 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02060D74 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02060D78 */ cpu->r[30] = cpu->r[3];
|
|
/* 02060D7C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02060D7C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02060D80 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02060D80 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02060D84 */ /* nop */
|
|
/* 02060D88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02060D8C */ cpu->r[31] = cpu->r[4];
|
|
/* 02060D90 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060D90 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02060D90 */ if (_t6) goto L_02060D94; else goto L_02060DA8;
|
|
L_02060D94: ; // 0x2060d94
|
|
/* 02060D94 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02060D94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02060D98 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02060D98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02060D9C */ cpu->ctr = cpu->r[0];
|
|
/* 02060DA0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02060DA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02060DA8: ; // 0x2060da8
|
|
/* 02060DA8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02060DAC */ cpu->r[4] = cpu->r[31];
|
|
/* 02060DB0 */ Gambit_fn_02060CE0(cpu);
|
|
/* 02060DB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02060DB8 */ /* nop */
|
|
/* 02060DBC */ Gambit_fn_027FC35C(cpu);
|
|
/* 02060DC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02060DC4 */ Gambit_fn_02060B60(cpu);
|
|
/* 02060DC8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02060DC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02060DCC */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02060DCC */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02060DD0 */ cpu->lr = cpu->r[0];
|
|
/* 02060DD4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02060DD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02060DD8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02060DDC */ return;
|
|
}
|
|
|
|
// fn_02060DE0 @ 0x2060de0
|
|
void Gambit_fn_02060DE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_02060DE0: ; // 0x2060de0
|
|
/* 02060DE0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02060DE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02060DE0 */ cpu->r[1] = _t0;
|
|
/* 02060DE4 */ /* nop */
|
|
/* 02060DE8 */ cpu->r[0] = cpu->lr;
|
|
/* 02060DEC */ cpu->r[28] = cpu->r[3];
|
|
/* 02060DF0 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02060DF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02060DF4 */ Gambit_fn_02062AF0(cpu);
|
|
/* 02060DF8 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02060DFC */ _t2 = cpu->r[11] + 0xFFFFC5ECu;
|
|
/* 02060DFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02060DFC */ cpu->r[11] = _t2;
|
|
/* 02060E00 */ cpu->r[30] = 0x101E0000u;
|
|
/* 02060E04 */ cpu->r[27] = cpu->r[3];
|
|
/* 02060E08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02060E0C */ cpu->r[30] = cpu->r[30] + 0xFFFFC590u;
|
|
/* 02060E10 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060E10 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02060E10 */ if (_t4) goto L_02060E28; else goto L_02060E14;
|
|
L_02060E14: ; // 0x2060e14
|
|
/* 02060E14 */ cpu->r[3] = cpu->r[28];
|
|
/* 02060E18 */ cpu->r[4] = cpu->r[30];
|
|
/* 02060E1C */ Gambit_fn_027B81E4(cpu);
|
|
/* 02060E20 */ cpu->r[3] = cpu->r[27] + 0x00000001u;
|
|
/* 02060E24 */ goto L_02060F40;
|
|
L_02060E28: ; // 0x2060e28
|
|
/* 02060E28 */ cpu->r[10] = 0x10000000u;
|
|
/* 02060E2C */ cpu->r[0] = 0x00000001u;
|
|
/* 02060E30 */ cpu->r[10] = cpu->r[10] + 0x00006C58u;
|
|
/* 02060E34 */ _t5 = cpu->r[11] + 0x00000000u;
|
|
/* 02060E34 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02060E38 */ cpu->r[31] = 0x10110000u;
|
|
/* 02060E3C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02060E3C */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 02060E40 */ cpu->r[6] = 0x00000040u;
|
|
/* 02060E44 */ _t7 = cpu->r[31] + 0x00007399u;
|
|
/* 02060E44 */ cpu->r[31] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02060E48 */ cpu->r[26] = cpu->r[30] + 0x0000000Cu;
|
|
/* 02060E4C */ _t8 = cpu->r[30] + 0x00000008u;
|
|
/* 02060E4C */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 02060E50 */ cpu->r[5] = 0x10000000u;
|
|
/* 02060E54 */ cpu->r[7] = 0x10000000u;
|
|
/* 02060E58 */ _t9 = cpu->r[30] + 0x00000000u;
|
|
/* 02060E58 */ rbrew_write32(cpu->mem, _t9, cpu->r[26]);
|
|
/* 02060E5C */ cpu->r[5] = cpu->r[5] + 0x00006CC0u;
|
|
/* 02060E60 */ cpu->r[7] = cpu->r[7] + 0x00006C88u;
|
|
/* 02060E64 */ _t10 = cpu->r[30] + 0x0000004Bu;
|
|
/* 02060E64 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[31]);
|
|
/* 02060E68 */ _t11 = cpu->r[30] + 0x00000004u;
|
|
/* 02060E68 */ rbrew_write32(cpu->mem, _t11, cpu->r[7]);
|
|
/* 02060E6C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02060E70 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02060E70 */ rbrew_write32(cpu->mem, _t12, cpu->r[5]);
|
|
/* 02060E74 */ Gambit_fn_02060F68(cpu);
|
|
/* 02060E78 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02060E78 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02060E7C */ _t14 = cpu->r[7] + 0x00000000u;
|
|
/* 02060E7C */ cpu->r[8] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02060E80 */ cpu->r[0] = 0x00080000u;
|
|
/* 02060E84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02060E88 */ cpu->r[29] = 0x00000000u;
|
|
/* 02060E8C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060E8C */ _t16 = _t15 & 0x00000001u;
|
|
/* 02060E8C */ if (_t16) goto L_02060EB4; else goto L_02060E90;
|
|
L_02060E90: ; // 0x2060e90
|
|
/* 02060E90 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02060E94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 02060E98 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02060E9C */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02060E9C */ _t18 = _t17 & 0x00000001u;
|
|
/* 02060E9C */ if (_t18) goto L_02060EB0; else goto L_02060EA0;
|
|
L_02060EA0: ; // 0x2060ea0
|
|
/* 02060EA0 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 02060EA0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t19);
|
|
/* 02060EA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02060EA8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060EA8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02060EA8 */ if (_t21) goto L_02060EAC; else goto L_02060E90;
|
|
L_02060EAC: ; // 0x2060eac
|
|
/* 02060EAC */ goto L_02060EB4;
|
|
L_02060EB0: ; // 0x2060eb0
|
|
/* 02060EB0 */ cpu->r[29] = 0x00000000u;
|
|
L_02060EB4: ; // 0x2060eb4
|
|
/* 02060EB4 */ _t22 = cpu->r[30] + 0x00000008u;
|
|
/* 02060EB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02060EB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[9]);
|
|
/* 02060EBC */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02060EBC */ _t24 = _t23 & 0x00000001u;
|
|
/* 02060EBC */ if (_t24) goto L_02060EC4; else goto L_02060EC0;
|
|
L_02060EC0: ; // 0x2060ec0
|
|
/* 02060EC0 */ cpu->r[29] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_02060EC4: ; // 0x2060ec4
|
|
/* 02060EC4 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02060EC4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02060EC8 */ _t26 = cpu->r[10] + 0x00000014u;
|
|
/* 02060EC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02060ECC */ cpu->ctr = cpu->r[0];
|
|
/* 02060ED0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02060ED4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02060ED8 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 02060ED8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02060EDC */ cpu->r[3] = cpu->r[26];
|
|
/* 02060EE0 */ cpu->r[5] = cpu->r[29];
|
|
/* 02060EE4 */ cpu->r[6] = 0x00000000u;
|
|
/* 02060EE8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02060EEC */ cpu->r[0] = 0x10000000u;
|
|
/* 02060EF0 */ _t28 = cpu->r[26] + cpu->r[29];
|
|
/* 02060EF0 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[31]);
|
|
/* 02060EF4 */ cpu->r[0] = cpu->r[0] + 0x00006CA0u;
|
|
/* 02060EF8 */ cpu->r[12] = 0x10000000u;
|
|
/* 02060EFC */ _t29 = cpu->r[30] + 0x00000004u;
|
|
/* 02060EFC */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 02060F00 */ cpu->r[6] = 0x00000000u;
|
|
/* 02060F04 */ _t30 = cpu->r[12] + 0x00006CBCu;
|
|
/* 02060F04 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t30);
|
|
/* 02060F08 */ _t31 = cpu->r[30] + 0x00000050u;
|
|
/* 02060F08 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[6]);
|
|
/* 02060F0C */ cpu->r[12] = 0x10000000u;
|
|
/* 02060F10 */ _t32 = cpu->r[30] + 0x00000058u;
|
|
/* 02060F10 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[0]);
|
|
/* 02060F14 */ cpu->r[5] = 0x00000002u;
|
|
/* 02060F18 */ _t33 = cpu->r[12] + 0x00006CB8u;
|
|
/* 02060F18 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t33);
|
|
/* 02060F1C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02060F20 */ _t34 = cpu->r[30] + 0x0000004Cu;
|
|
/* 02060F20 */ rbrew_write32(cpu->mem, _t34, cpu->r[5]);
|
|
/* 02060F24 */ cpu->r[3] = cpu->r[3] + 0x00002EECu;
|
|
/* 02060F28 */ _t35 = cpu->r[30] + 0x00000054u;
|
|
/* 02060F28 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[0]);
|
|
/* 02060F2C */ Gambit_fn_02C83090(cpu);
|
|
/* 02060F30 */ cpu->r[4] = cpu->r[30];
|
|
/* 02060F34 */ cpu->r[3] = cpu->r[28];
|
|
/* 02060F38 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02060F3C */ cpu->r[3] = cpu->r[27] + 0x00000001u;
|
|
L_02060F40: ; // 0x2060f40
|
|
/* 02060F40 */ /* nop */
|
|
/* 02060F44 */ _t36 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02060F44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02060F48 */ cpu->lr = cpu->r[0];
|
|
/* 02060F4C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02060F50 */ return;
|
|
}
|
|
|
|
// fn_02060F54 @ 0x2060f54
|
|
void Gambit_fn_02060F54(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_02060F54: ; // 0x2060f54
|
|
/* 02060F54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02060F58 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060F58 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02060F58 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02060F58 */ goto L_02060F5C;
|
|
L_02060F5C: ; // 0x2060f5c
|
|
/* 02060F5C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02060F5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02060F60 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060F60 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02060F60 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02060F60 */ goto L_02060F64;
|
|
L_02060F64: ; // 0x2060f64
|
|
/* 02060F64 */ 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_02060F68 @ 0x2060f68
|
|
void Gambit_fn_02060F68(CPUState* cpu) {
|
|
L_02060F68: ; // 0x2060f68
|
|
/* 02060F68 */ return;
|
|
}
|
|
|
|
// fn_02060F6C @ 0x2060f6c
|
|
void Gambit_fn_02060F6C(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_02060F6C: ; // 0x2060f6c
|
|
/* 02060F6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02060F70 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060F70 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02060F70 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02060F70 */ goto L_02060F74;
|
|
L_02060F74: ; // 0x2060f74
|
|
/* 02060F74 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02060F74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02060F78 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060F78 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02060F78 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02060F78 */ goto L_02060F7C;
|
|
L_02060F7C: ; // 0x2060f7c
|
|
/* 02060F7C */ 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_02060F80 @ 0x2060f80
|
|
void Gambit_fn_02060F80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02060F80: ; // 0x2060f80
|
|
/* 02060F80 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02060F80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02060F84 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02060F84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02060F88 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02060F8C */ cpu->r[11] = 0x10110000u;
|
|
/* 02060F90 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02060F90 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02060F94 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02060F94 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02060F98 */ return;
|
|
}
|
|
|
|
// fn_02060F9C @ 0x2060f9c
|
|
void Gambit_fn_02060F9C(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_02060F9C: ; // 0x2060f9c
|
|
/* 02060F9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02060FA0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060FA0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02060FA0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02060FA0 */ goto L_02060FA4;
|
|
L_02060FA4: ; // 0x2060fa4
|
|
/* 02060FA4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02060FA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02060FA8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060FA8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02060FA8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02060FA8 */ goto L_02060FAC;
|
|
L_02060FAC: ; // 0x2060fac
|
|
/* 02060FAC */ 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_02060FB0 @ 0x2060fb0
|
|
void Gambit_fn_02060FB0(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_02060FB0: ; // 0x2060fb0
|
|
/* 02060FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02060FB4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060FB4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02060FB4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02060FB4 */ goto L_02060FB8;
|
|
L_02060FB8: ; // 0x2060fb8
|
|
/* 02060FB8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02060FB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02060FBC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060FBC */ _t3 = _t2 & 0x00000001u;
|
|
/* 02060FBC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02060FBC */ goto L_02060FC0;
|
|
L_02060FC0: ; // 0x2060fc0
|
|
/* 02060FC0 */ 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_02060FC4 @ 0x2060fc4
|
|
void Gambit_fn_02060FC4(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_02060FC4: ; // 0x2060fc4
|
|
/* 02060FC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02060FC8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060FC8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02060FC8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02060FC8 */ goto L_02060FCC;
|
|
L_02060FCC: ; // 0x2060fcc
|
|
/* 02060FCC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02060FCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02060FD0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02060FD0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02060FD0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02060FD0 */ goto L_02060FD4;
|
|
L_02060FD4: ; // 0x2060fd4
|
|
/* 02060FD4 */ 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_02060FD8 @ 0x2060fd8
|
|
void Gambit_fn_02060FD8(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_02060FD8: ; // 0x2060fd8
|
|
/* 02060FD8 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02060FD8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02060FD8 */ cpu->r[1] = _t0;
|
|
/* 02060FDC */ /* nop */
|
|
/* 02060FE0 */ cpu->r[0] = cpu->lr;
|
|
/* 02060FE4 */ cpu->r[23] = cpu->r[3];
|
|
/* 02060FE8 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 02060FE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02060FEC */ Gambit_fn_02062AF0(cpu);
|
|
/* 02060FF0 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02060FF4 */ _t2 = cpu->r[7] + 0xFFFFC668u;
|
|
/* 02060FF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02060FF4 */ cpu->r[7] = _t2;
|
|
/* 02060FF8 */ cpu->r[31] = 0x101E0000u;
|
|
/* 02060FFC */ cpu->r[22] = cpu->r[3];
|
|
/* 02061000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061004 */ cpu->r[31] = cpu->r[31] + 0xFFFFC5F0u;
|
|
/* 02061008 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061008 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02061008 */ if (_t4) goto L_0206100C; else goto L_02061054;
|
|
L_0206100C: ; // 0x206100c
|
|
/* 0206100C */ cpu->r[12] = 0x00000001u;
|
|
/* 02061010 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02061014 */ cpu->r[4] = 0x10000000u;
|
|
/* 02061018 */ _t5 = cpu->r[7] + 0x00000000u;
|
|
/* 02061018 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0206101C */ cpu->r[3] = cpu->r[31];
|
|
/* 02061020 */ cpu->r[5] = 0x00000003u;
|
|
/* 02061024 */ cpu->r[4] = cpu->r[4] + 0x00006CC8u;
|
|
/* 02061028 */ cpu->r[7] = 0x00000000u;
|
|
/* 0206102C */ Gambit_fn_028A6750(cpu);
|
|
/* 02061030 */ cpu->r[6] = 0x02060000u;
|
|
/* 02061034 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 02061038 */ cpu->r[4] = 0x00000003u;
|
|
/* 0206103C */ cpu->r[6] = cpu->r[6] + 0x00001178u;
|
|
/* 02061040 */ cpu->r[5] = 0x00000008u;
|
|
/* 02061044 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02061048 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0206104C */ cpu->r[3] = cpu->r[3] + 0x00002F10u;
|
|
/* 02061050 */ Gambit_fn_02C83090(cpu);
|
|
L_02061054: ; // 0x2061054
|
|
/* 02061054 */ _t6 = cpu->r[31] + 0x00000054u;
|
|
/* 02061054 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02061058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206105C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206105C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0206105C */ if (_t8) goto L_02061060; else goto L_02061154;
|
|
L_02061060: ; // 0x2061060
|
|
/* 02061060 */ cpu->r[26] = 0x101D0000u;
|
|
/* 02061064 */ cpu->r[30] = 0x00000000u;
|
|
/* 02061068 */ cpu->r[19] = 0x101D0000u;
|
|
/* 0206106C */ cpu->r[20] = 0x101D0000u;
|
|
/* 02061070 */ cpu->r[21] = 0x00000001u;
|
|
/* 02061074 */ cpu->r[27] = cpu->r[30];
|
|
/* 02061078 */ cpu->r[25] = 0x101D0000u;
|
|
/* 0206107C */ cpu->r[26] = cpu->r[26] + 0xFFFFEAB0u;
|
|
/* 02061080 */ cpu->r[24] = 0x101D0000u;
|
|
L_02061084: ; // 0x2061084
|
|
/* 02061084 */ _t9 = cpu->r[24] + 0xFFFFEAC4u;
|
|
/* 02061084 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02061088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206108C */ cpu->r[29] = cpu->r[30];
|
|
/* 02061090 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061090 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02061090 */ if (_t11) goto L_02061094; else goto L_020610AC;
|
|
L_02061094: ; // 0x2061094
|
|
/* 02061094 */ cpu->r[4] = 0x101C0000u;
|
|
/* 02061098 */ cpu->r[3] = cpu->r[25] + 0x0000390Du;
|
|
/* 0206109C */ cpu->r[5] = 0x00000016u;
|
|
/* 020610A0 */ cpu->r[4] = cpu->r[4] + 0x00002EF8u;
|
|
/* 020610A4 */ _t12 = cpu->r[24] + 0xFFFFEAC4u;
|
|
/* 020610A4 */ rbrew_write32(cpu->mem, _t12, cpu->r[21]);
|
|
/* 020610A8 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_020610AC: ; // 0x20610ac
|
|
/* 020610AC */ _t13 = cpu->r[20] + 0xFFFFEAC0u;
|
|
/* 020610AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020610B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 020610B4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020610B4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 020610B4 */ if (_t15) goto L_020610B8; else goto L_020610C0;
|
|
L_020610B8: ; // 0x20610b8
|
|
/* 020610B8 */ _t16 = cpu->r[19] + 0xFFFFEABCu;
|
|
/* 020610B8 */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 020610BC */ _t17 = cpu->r[20] + 0xFFFFEAC0u;
|
|
/* 020610BC */ rbrew_write32(cpu->mem, _t17, cpu->r[21]);
|
|
L_020610C0: ; // 0x20610c0
|
|
/* 020610C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000003u);
|
|
/* 020610C4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020610C4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 020610C4 */ if (_t19) goto L_020610EC; else goto L_020610C8;
|
|
L_020610C8: ; // 0x20610c8
|
|
/* 020610C8 */ cpu->r[4] = cpu->r[30];
|
|
/* 020610CC */ cpu->r[3] = cpu->r[31];
|
|
/* 020610D0 */ cpu->r[5] = 0x00000000u;
|
|
/* 020610D4 */ Gambit_fn_028A6634(cpu);
|
|
/* 020610D8 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 020610DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000003u);
|
|
/* 020610E0 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020610E0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 020610E0 */ if (_t21) goto L_02061154; else goto L_020610E4;
|
|
L_020610E4: ; // 0x20610e4
|
|
/* 020610E4 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020610E4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 020610E4 */ if (_t23) goto L_02061084; else goto L_020610E8;
|
|
L_020610E8: ; // 0x20610e8
|
|
/* 020610E8 */ goto L_02061154;
|
|
L_020610EC: ; // 0x20610ec
|
|
/* 020610EC */ _t24 = cpu->r[19] + 0xFFFFEABCu;
|
|
/* 020610EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 020610F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020610F4 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020610F4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 020610F4 */ if (_t26) goto L_020610F8; else goto L_02061130;
|
|
L_020610F8: ; // 0x20610f8
|
|
/* 020610F8 */ Gambit_fn_0282A450(cpu);
|
|
/* 020610FC */ cpu->r[28] = cpu->r[3];
|
|
/* 02061100 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02061104 */ _t27 = cpu->r[19] + 0xFFFFEABCu;
|
|
/* 02061104 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02061108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206110C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206110C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0206110C */ if (_t29) goto L_02061110; else goto L_02061124;
|
|
L_02061110: ; // 0x2061110
|
|
/* 02061110 */ cpu->r[5] = 0x00000003u;
|
|
/* 02061114 */ cpu->r[4] = cpu->r[25] + 0x0000390Du;
|
|
/* 02061118 */ cpu->r[3] = cpu->r[26];
|
|
/* 0206111C */ Gambit_fn_0282A374(cpu);
|
|
/* 02061120 */ _t30 = cpu->r[19] + 0xFFFFEABCu;
|
|
/* 02061120 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
L_02061124: ; // 0x2061124
|
|
/* 02061124 */ cpu->r[3] = cpu->r[28];
|
|
/* 02061128 */ Gambit_fn_02837030(cpu);
|
|
/* 0206112C */ _t31 = cpu->r[19] + 0xFFFFEABCu;
|
|
/* 0206112C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
L_02061130: ; // 0x2061130
|
|
/* 02061130 */ cpu->r[12] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02061134 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061138 */ _t32 = cpu->r[12] + cpu->r[0];
|
|
/* 02061138 */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0206113C */ cpu->r[4] = cpu->r[30];
|
|
/* 02061140 */ Gambit_fn_028A6634(cpu);
|
|
/* 02061144 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02061148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000003u);
|
|
/* 0206114C */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0206114C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0206114C */ if (_t34) goto L_02061154; else goto L_02061150;
|
|
L_02061150: ; // 0x2061150
|
|
/* 02061150 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061150 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02061150 */ if (_t36) goto L_02061084; else goto L_02061154;
|
|
L_02061154: ; // 0x2061154
|
|
/* 02061154 */ cpu->r[3] = cpu->r[23];
|
|
/* 02061158 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206115C */ Gambit_fn_027B81E4(cpu);
|
|
/* 02061160 */ cpu->r[3] = cpu->r[22] + 0x00000001u;
|
|
/* 02061164 */ /* nop */
|
|
/* 02061168 */ _t37 = cpu->r[1] + 0x00000044u;
|
|
/* 02061168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0206116C */ cpu->lr = cpu->r[0];
|
|
/* 02061170 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02061174 */ return;
|
|
}
|
|
|
|
// fn_02061184 @ 0x2061184
|
|
void Gambit_fn_02061184(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02061184: ; // 0x2061184
|
|
/* 02061184 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02061184 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061184 */ cpu->r[1] = _t0;
|
|
/* 02061188 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061188 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02061188 */ if (_t2) goto L_0206118C; else goto L_0206119C;
|
|
L_0206118C: ; // 0x206118c
|
|
/* 0206118C */ cpu->r[3] = 0x00000008u;
|
|
/* 02061190 */ Gambit_fn_02801A78(cpu);
|
|
/* 02061194 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02061198 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061198 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02061198 */ if (_t4) goto L_020611AC; else goto L_0206119C;
|
|
L_0206119C: ; // 0x206119c
|
|
/* 0206119C */ cpu->r[12] = 0x00000000u;
|
|
/* 020611A0 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 020611A4 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 020611A4 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 020611A8 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 020611A8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_020611AC: ; // 0x20611ac
|
|
/* 020611AC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020611AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 020611B0 */ cpu->lr = cpu->r[0];
|
|
/* 020611B4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 020611B8 */ return;
|
|
}
|
|
|
|
// fn_020611BC @ 0x20611bc
|
|
void Gambit_fn_020611BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_020611BC: ; // 0x20611bc
|
|
/* 020611BC */ cpu->r[0] = cpu->lr;
|
|
/* 020611C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020611C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020611C0 */ cpu->r[1] = _t0;
|
|
/* 020611C4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020611C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020611C8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 020611C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020611CC */ cpu->r[30] = cpu->r[3];
|
|
/* 020611CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 020611D0 */ cpu->r[31] = cpu->r[4];
|
|
/* 020611D4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020611D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020611D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020611D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 020611D8 */ if (_t5) goto L_020611F8; else goto L_020611DC;
|
|
L_020611DC: ; // 0x20611dc
|
|
/* 020611DC */ cpu->r[3] = cpu->r[30];
|
|
/* 020611E0 */ cpu->r[4] = 0x00000000u;
|
|
/* 020611E4 */ Gambit_fn_028A65C0(cpu);
|
|
/* 020611E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020611E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020611EC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020611EC */ _t7 = _t6 & 0x00000001u;
|
|
/* 020611EC */ if (_t7) goto L_020611F8; else goto L_020611F0;
|
|
L_020611F0: ; // 0x20611f0
|
|
/* 020611F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 020611F4 */ Gambit_fn_02801BB0(cpu);
|
|
L_020611F8: ; // 0x20611f8
|
|
/* 020611F8 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 020611F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 020611FC */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 020611FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02061200 */ cpu->lr = cpu->r[0];
|
|
/* 02061204 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061204 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02061208 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206120C */ return;
|
|
}
|
|
|
|
// fn_020611C0 @ 0x20611c0
|
|
void Gambit_fn_020611C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_020611C0: ; // 0x20611c0
|
|
/* 020611C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020611C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020611C0 */ cpu->r[1] = _t0;
|
|
/* 020611C4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020611C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020611C8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 020611C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020611CC */ cpu->r[30] = cpu->r[3];
|
|
/* 020611CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 020611D0 */ cpu->r[31] = cpu->r[4];
|
|
/* 020611D4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020611D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020611D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020611D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 020611D8 */ if (_t5) goto L_020611F8; else goto L_020611DC;
|
|
L_020611DC: ; // 0x20611dc
|
|
/* 020611DC */ cpu->r[3] = cpu->r[30];
|
|
/* 020611E0 */ cpu->r[4] = 0x00000000u;
|
|
/* 020611E4 */ Gambit_fn_028A65C0(cpu);
|
|
/* 020611E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020611E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020611EC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020611EC */ _t7 = _t6 & 0x00000001u;
|
|
/* 020611EC */ if (_t7) goto L_020611F8; else goto L_020611F0;
|
|
L_020611F0: ; // 0x20611f0
|
|
/* 020611F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 020611F4 */ Gambit_fn_02801BB0(cpu);
|
|
L_020611F8: ; // 0x20611f8
|
|
/* 020611F8 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 020611F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 020611FC */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 020611FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02061200 */ cpu->lr = cpu->r[0];
|
|
/* 02061204 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061204 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02061208 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206120C */ return;
|
|
}
|
|
|
|
// fn_02061210 @ 0x2061210
|
|
void Gambit_fn_02061210(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02061210: ; // 0x2061210
|
|
/* 02061210 */ cpu->r[0] = cpu->lr;
|
|
/* 02061214 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061214 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061214 */ cpu->r[1] = _t0;
|
|
/* 02061218 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061218 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206121C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206121C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02061220 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 02061220 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02061224 */ cpu->r[31] = cpu->r[3];
|
|
/* 02061228 */ /* nop */
|
|
/* 0206122C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02061230 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061234 */ Gambit_fn_0206124C(cpu);
|
|
/* 02061238 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02061238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206123C */ cpu->lr = cpu->r[0];
|
|
/* 02061240 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061240 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02061244 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02061248 */ return;
|
|
}
|
|
|
|
// fn_02061214 @ 0x2061214
|
|
void Gambit_fn_02061214(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02061214: ; // 0x2061214
|
|
/* 02061214 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061214 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061214 */ cpu->r[1] = _t0;
|
|
/* 02061218 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061218 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206121C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206121C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02061220 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 02061220 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02061224 */ cpu->r[31] = cpu->r[3];
|
|
/* 02061228 */ /* nop */
|
|
/* 0206122C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02061230 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061234 */ Gambit_fn_0206124C(cpu);
|
|
/* 02061238 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02061238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206123C */ cpu->lr = cpu->r[0];
|
|
/* 02061240 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061240 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02061244 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02061248 */ return;
|
|
}
|
|
|
|
// fn_0206124C @ 0x206124c
|
|
void Gambit_fn_0206124C(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_0206124C: ; // 0x206124c
|
|
/* 0206124C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206124C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02061250 */ /* nop */
|
|
/* 02061254 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 02061254 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02061258 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206125C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 02061260 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 02061260 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02061264 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061264 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02061264 */ if (_t4) goto L_02061268; else goto L_02061280;
|
|
L_02061268: ; // 0x2061268
|
|
/* 02061268 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206126C */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 02061270 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02061270 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02061274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02061278 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061278 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02061278 */ if (_t7) goto L_0206127C; else goto L_0206128C;
|
|
L_0206127C: ; // 0x206127c
|
|
/* 0206127C */ return;
|
|
L_02061280: ; // 0x2061280
|
|
/* 02061280 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02061280 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02061284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02061288 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061288 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02061288 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02061288 */ goto L_0206128C;
|
|
L_0206128C: ; // 0x206128c
|
|
/* 0206128C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02061290 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02061290 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02061294 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061294 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02061294 */ if (_t13) goto L_02061298; else goto L_020612A0;
|
|
L_02061298: ; // 0x2061298
|
|
/* 02061298 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206129C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_020612A0: ; // 0x20612a0
|
|
/* 020612A0 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 020612A0 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 020612A4 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 020612A4 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 020612A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020612AC */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 020612AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 020612B0 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 020612B4 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020612B4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 020612B4 */ if (_t18) goto L_020612CC; else goto L_020612B8;
|
|
L_020612B8: ; // 0x20612b8
|
|
/* 020612B8 */ /* nop */
|
|
/* 020612BC */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 020612BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 020612C0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020612C4 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 020612C8 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 020612C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_020612CC: ; // 0x20612cc
|
|
/* 020612CC */ cpu->ctr = cpu->r[11];
|
|
/* 020612D0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_020612D4 @ 0x20612d4
|
|
void Gambit_fn_020612D4(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_020612D4: ; // 0x20612d4
|
|
/* 020612D4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 020612D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 020612D8 */ /* nop */
|
|
/* 020612DC */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 020612DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 020612E0 */ cpu->r[8] = cpu->r[0];
|
|
/* 020612E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 020612E8 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 020612E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 020612EC */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020612EC */ _t4 = _t3 & 0x00000001u;
|
|
/* 020612EC */ if (_t4) goto L_020612F0; else goto L_02061308;
|
|
L_020612F0: ; // 0x20612f0
|
|
/* 020612F0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020612F4 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 020612F8 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 020612F8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 020612FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02061300 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061300 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02061300 */ if (_t7) goto L_02061304; else goto L_02061314;
|
|
L_02061304: ; // 0x2061304
|
|
/* 02061304 */ return;
|
|
L_02061308: ; // 0x2061308
|
|
/* 02061308 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02061308 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206130C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02061310 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061310 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02061310 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02061310 */ goto L_02061314;
|
|
L_02061314: ; // 0x2061314
|
|
/* 02061314 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02061318 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02061318 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206131C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206131C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206131C */ if (_t13) goto L_02061320; else goto L_02061328;
|
|
L_02061320: ; // 0x2061320
|
|
/* 02061320 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02061324 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02061328: ; // 0x2061328
|
|
/* 02061328 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02061328 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206132C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206132C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02061330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061334 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02061334 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02061338 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206133C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206133C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206133C */ if (_t18) goto L_02061354; else goto L_02061340;
|
|
L_02061340: ; // 0x2061340
|
|
/* 02061340 */ /* nop */
|
|
/* 02061344 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02061344 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02061348 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206134C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 02061350 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02061350 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02061354: ; // 0x2061354
|
|
/* 02061354 */ cpu->ctr = cpu->r[11];
|
|
/* 02061358 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206135C @ 0x206135c
|
|
void Gambit_fn_0206135C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206135C: ; // 0x206135c
|
|
/* 0206135C */ cpu->r[0] = cpu->lr;
|
|
/* 02061360 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061360 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061360 */ cpu->r[1] = _t0;
|
|
/* 02061364 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061364 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02061368 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206136C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206136C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02061370 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02061370 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02061374 */ cpu->r[12] = 0x00000000u;
|
|
/* 02061378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206137C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206137C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02061380 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061380 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02061380 */ if (_t6) goto L_020613A8; else goto L_02061384;
|
|
L_02061384: ; // 0x2061384
|
|
/* 02061384 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02061384 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02061388 */ /* nop */
|
|
/* 0206138C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02061390 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061390 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02061390 */ if (_t9) goto L_02061394; else goto L_020613A8;
|
|
L_02061394: ; // 0x2061394
|
|
/* 02061394 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02061394 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02061398 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02061398 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206139C */ cpu->ctr = cpu->r[0];
|
|
/* 020613A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020613A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_020613A8: ; // 0x20613a8
|
|
/* 020613A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020613AC */ Gambit_fn_020612D4(cpu);
|
|
/* 020613B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020613B4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 020613B8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 020613B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020613BC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020613BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020613C0 */ cpu->lr = cpu->r[0];
|
|
/* 020613C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020613C8 */ return;
|
|
}
|
|
|
|
// fn_02061360 @ 0x2061360
|
|
void Gambit_fn_02061360(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02061360: ; // 0x2061360
|
|
/* 02061360 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061360 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061360 */ cpu->r[1] = _t0;
|
|
/* 02061364 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061364 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02061368 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206136C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206136C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02061370 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02061370 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02061374 */ cpu->r[12] = 0x00000000u;
|
|
/* 02061378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206137C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206137C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02061380 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061380 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02061380 */ if (_t6) goto L_020613A8; else goto L_02061384;
|
|
L_02061384: ; // 0x2061384
|
|
/* 02061384 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02061384 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02061388 */ /* nop */
|
|
/* 0206138C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02061390 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061390 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02061390 */ if (_t9) goto L_02061394; else goto L_020613A8;
|
|
L_02061394: ; // 0x2061394
|
|
/* 02061394 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02061394 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02061398 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02061398 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206139C */ cpu->ctr = cpu->r[0];
|
|
/* 020613A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020613A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_020613A8: ; // 0x20613a8
|
|
/* 020613A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020613AC */ Gambit_fn_020612D4(cpu);
|
|
/* 020613B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020613B4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 020613B8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 020613B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020613BC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020613BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020613C0 */ cpu->lr = cpu->r[0];
|
|
/* 020613C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020613C8 */ return;
|
|
}
|
|
|
|
// fn_020613CC @ 0x20613cc
|
|
void Gambit_fn_020613CC(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_020613CC: ; // 0x20613cc
|
|
/* 020613CC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 020613CC */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 020613D0 */ /* nop */
|
|
/* 020613D4 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 020613D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 020613D8 */ cpu->r[7] = cpu->r[0];
|
|
/* 020613DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 020613E0 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 020613E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 020613E4 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020613E4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 020613E4 */ if (_t4) goto L_020613E8; else goto L_02061400;
|
|
L_020613E8: ; // 0x20613e8
|
|
/* 020613E8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020613EC */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 020613F0 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 020613F0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 020613F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 020613F8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020613F8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 020613F8 */ if (_t7) goto L_020613FC; else goto L_0206140C;
|
|
L_020613FC: ; // 0x20613fc
|
|
/* 020613FC */ return;
|
|
L_02061400: ; // 0x2061400
|
|
/* 02061400 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02061400 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02061404 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02061408 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061408 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02061408 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02061408 */ goto L_0206140C;
|
|
L_0206140C: ; // 0x206140c
|
|
/* 0206140C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02061410 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02061410 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02061414 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061414 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02061414 */ if (_t13) goto L_02061418; else goto L_02061420;
|
|
L_02061418: ; // 0x2061418
|
|
/* 02061418 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206141C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02061420: ; // 0x2061420
|
|
/* 02061420 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02061420 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02061424 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02061424 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02061428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0206142C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206142C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02061430 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 02061434 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061434 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02061434 */ if (_t18) goto L_0206144C; else goto L_02061438;
|
|
L_02061438: ; // 0x2061438
|
|
/* 02061438 */ /* nop */
|
|
/* 0206143C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206143C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02061440 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02061444 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 02061448 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02061448 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206144C: ; // 0x206144c
|
|
/* 0206144C */ cpu->ctr = cpu->r[11];
|
|
/* 02061450 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02061454 @ 0x2061454
|
|
void Gambit_fn_02061454(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02061454: ; // 0x2061454
|
|
/* 02061454 */ cpu->r[0] = cpu->lr;
|
|
/* 02061458 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061458 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061458 */ cpu->r[1] = _t0;
|
|
/* 0206145C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206145C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02061460 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061460 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02061464 */ cpu->r[30] = cpu->r[3];
|
|
/* 02061468 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02061468 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206146C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206146C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02061470 */ /* nop */
|
|
/* 02061474 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02061478 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206147C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206147C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206147C */ if (_t6) goto L_02061480; else goto L_02061494;
|
|
L_02061480: ; // 0x2061480
|
|
/* 02061480 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02061480 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02061484 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02061484 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02061488 */ cpu->ctr = cpu->r[0];
|
|
/* 0206148C */ cpu->r[3] = cpu->r[30];
|
|
/* 02061490 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02061494: ; // 0x2061494
|
|
/* 02061494 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061498 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206149C */ Gambit_fn_020613CC(cpu);
|
|
/* 020614A0 */ cpu->r[3] = cpu->r[30];
|
|
/* 020614A4 */ /* nop */
|
|
/* 020614A8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 020614AC */ cpu->r[3] = cpu->r[30];
|
|
/* 020614B0 */ Gambit_fn_0206124C(cpu);
|
|
/* 020614B4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 020614B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 020614B8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 020614B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020614BC */ cpu->lr = cpu->r[0];
|
|
/* 020614C0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020614C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020614C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020614C8 */ return;
|
|
}
|
|
|
|
// fn_02061458 @ 0x2061458
|
|
void Gambit_fn_02061458(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02061458: ; // 0x2061458
|
|
/* 02061458 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061458 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061458 */ cpu->r[1] = _t0;
|
|
/* 0206145C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206145C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02061460 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061460 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02061464 */ cpu->r[30] = cpu->r[3];
|
|
/* 02061468 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02061468 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206146C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206146C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02061470 */ /* nop */
|
|
/* 02061474 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02061478 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206147C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206147C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206147C */ if (_t6) goto L_02061480; else goto L_02061494;
|
|
L_02061480: ; // 0x2061480
|
|
/* 02061480 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02061480 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02061484 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02061484 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02061488 */ cpu->ctr = cpu->r[0];
|
|
/* 0206148C */ cpu->r[3] = cpu->r[30];
|
|
/* 02061490 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02061494: ; // 0x2061494
|
|
/* 02061494 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061498 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206149C */ Gambit_fn_020613CC(cpu);
|
|
/* 020614A0 */ cpu->r[3] = cpu->r[30];
|
|
/* 020614A4 */ /* nop */
|
|
/* 020614A8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 020614AC */ cpu->r[3] = cpu->r[30];
|
|
/* 020614B0 */ Gambit_fn_0206124C(cpu);
|
|
/* 020614B4 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 020614B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 020614B8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 020614B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020614BC */ cpu->lr = cpu->r[0];
|
|
/* 020614C0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020614C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020614C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020614C8 */ return;
|
|
}
|
|
|
|
// fn_020614CC @ 0x20614cc
|
|
void Gambit_fn_020614CC(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;
|
|
|
|
L_020614CC: ; // 0x20614cc
|
|
/* 020614CC */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 020614CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020614CC */ cpu->r[1] = _t0;
|
|
/* 020614D0 */ /* nop */
|
|
/* 020614D4 */ cpu->r[0] = cpu->lr;
|
|
/* 020614D8 */ cpu->r[27] = cpu->r[3];
|
|
/* 020614DC */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 020614DC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 020614E0 */ Gambit_fn_02062AF0(cpu);
|
|
/* 020614E4 */ cpu->r[12] = 0x101E0000u;
|
|
/* 020614E8 */ _t2 = cpu->r[12] + 0xFFFFC764u;
|
|
/* 020614E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 020614E8 */ cpu->r[12] = _t2;
|
|
/* 020614EC */ cpu->r[31] = 0x101E0000u;
|
|
/* 020614F0 */ cpu->r[26] = cpu->r[3];
|
|
/* 020614F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020614F8 */ cpu->r[31] = cpu->r[31] + 0xFFFFC66Cu;
|
|
/* 020614FC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020614FC */ _t4 = _t3 & 0x00000001u;
|
|
/* 020614FC */ if (_t4) goto L_02061500; else goto L_02061548;
|
|
L_02061500: ; // 0x2061500
|
|
/* 02061500 */ cpu->r[0] = 0x00000001u;
|
|
/* 02061504 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061508 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 0206150C */ cpu->r[4] = 0x10000000u;
|
|
/* 02061510 */ cpu->r[7] = 0x00000000u;
|
|
/* 02061514 */ cpu->r[5] = 0x00000003u;
|
|
/* 02061518 */ cpu->r[4] = cpu->r[4] + 0x00006D00u;
|
|
/* 0206151C */ _t5 = cpu->r[12] + 0x00000000u;
|
|
/* 0206151C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02061520 */ Gambit_fn_028A6750(cpu);
|
|
/* 02061524 */ cpu->r[6] = 0x02060000u;
|
|
/* 02061528 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 0206152C */ cpu->r[4] = 0x00000003u;
|
|
/* 02061530 */ cpu->r[6] = cpu->r[6] + 0x000017DCu;
|
|
/* 02061534 */ cpu->r[5] = 0x00000008u;
|
|
/* 02061538 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0206153C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02061540 */ cpu->r[3] = cpu->r[3] + 0x00002F58u;
|
|
/* 02061544 */ Gambit_fn_02C83090(cpu);
|
|
L_02061548: ; // 0x2061548
|
|
/* 02061548 */ _t6 = cpu->r[31] + 0x00000054u;
|
|
/* 02061548 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206154C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02061550 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061550 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02061550 */ if (_t8) goto L_02061554; else goto L_02061648;
|
|
L_02061554: ; // 0x2061554
|
|
/* 02061554 */ cpu->r[25] = 0x101D0000u;
|
|
/* 02061558 */ cpu->r[29] = 0x00000000u;
|
|
/* 0206155C */ cpu->r[20] = 0x101D0000u;
|
|
/* 02061560 */ cpu->r[21] = 0x101D0000u;
|
|
/* 02061564 */ cpu->r[22] = 0x00000001u;
|
|
/* 02061568 */ cpu->r[28] = cpu->r[29];
|
|
/* 0206156C */ cpu->r[24] = 0x101D0000u;
|
|
/* 02061570 */ cpu->r[25] = cpu->r[25] + 0xFFFFEAD8u;
|
|
/* 02061574 */ cpu->r[23] = 0x101D0000u;
|
|
L_02061578: ; // 0x2061578
|
|
/* 02061578 */ _t9 = cpu->r[23] + 0xFFFFE1C0u;
|
|
/* 02061578 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206157C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061580 */ cpu->r[30] = cpu->r[29];
|
|
/* 02061584 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061584 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02061584 */ if (_t11) goto L_02061588; else goto L_020615A0;
|
|
L_02061588: ; // 0x2061588
|
|
/* 02061588 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0206158C */ cpu->r[3] = cpu->r[24] + 0x00003923u;
|
|
/* 02061590 */ cpu->r[5] = 0x00000014u;
|
|
/* 02061594 */ cpu->r[4] = cpu->r[4] + 0x00002F1Cu;
|
|
/* 02061598 */ _t12 = cpu->r[23] + 0xFFFFE1C0u;
|
|
/* 02061598 */ rbrew_write32(cpu->mem, _t12, cpu->r[22]);
|
|
/* 0206159C */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_020615A0: ; // 0x20615a0
|
|
/* 020615A0 */ _t13 = cpu->r[21] + 0xFFFFE1BCu;
|
|
/* 020615A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020615A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020615A8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020615A8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 020615A8 */ if (_t15) goto L_020615AC; else goto L_020615B4;
|
|
L_020615AC: ; // 0x20615ac
|
|
/* 020615AC */ _t16 = cpu->r[20] + 0xFFFFEAE4u;
|
|
/* 020615AC */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 020615B0 */ _t17 = cpu->r[21] + 0xFFFFE1BCu;
|
|
/* 020615B0 */ rbrew_write32(cpu->mem, _t17, cpu->r[22]);
|
|
L_020615B4: ; // 0x20615b4
|
|
/* 020615B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000003u);
|
|
/* 020615B8 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020615B8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 020615B8 */ if (_t19) goto L_020615E0; else goto L_020615BC;
|
|
L_020615BC: ; // 0x20615bc
|
|
/* 020615BC */ cpu->r[4] = cpu->r[29];
|
|
/* 020615C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020615C4 */ cpu->r[5] = 0x00000000u;
|
|
/* 020615C8 */ Gambit_fn_028A6634(cpu);
|
|
/* 020615CC */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 020615D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000003u);
|
|
/* 020615D4 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020615D4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 020615D4 */ if (_t21) goto L_02061648; else goto L_020615D8;
|
|
L_020615D8: ; // 0x20615d8
|
|
/* 020615D8 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020615D8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 020615D8 */ if (_t23) goto L_02061578; else goto L_020615DC;
|
|
L_020615DC: ; // 0x20615dc
|
|
/* 020615DC */ goto L_02061648;
|
|
L_020615E0: ; // 0x20615e0
|
|
/* 020615E0 */ _t24 = cpu->r[20] + 0xFFFFEAE4u;
|
|
/* 020615E0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t24);
|
|
/* 020615E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 020615E8 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020615E8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 020615E8 */ if (_t26) goto L_020615EC; else goto L_02061624;
|
|
L_020615EC: ; // 0x20615ec
|
|
/* 020615EC */ Gambit_fn_0282A450(cpu);
|
|
/* 020615F0 */ cpu->r[19] = cpu->r[3];
|
|
/* 020615F4 */ Gambit_fn_02836FFC(cpu);
|
|
/* 020615F8 */ _t27 = cpu->r[20] + 0xFFFFEAE4u;
|
|
/* 020615F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 020615FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061600 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061600 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02061600 */ if (_t29) goto L_02061604; else goto L_02061618;
|
|
L_02061604: ; // 0x2061604
|
|
/* 02061604 */ cpu->r[5] = 0x00000003u;
|
|
/* 02061608 */ cpu->r[4] = cpu->r[24] + 0x00003923u;
|
|
/* 0206160C */ cpu->r[3] = cpu->r[25];
|
|
/* 02061610 */ Gambit_fn_0282A374(cpu);
|
|
/* 02061614 */ _t30 = cpu->r[20] + 0xFFFFEAE4u;
|
|
/* 02061614 */ rbrew_write32(cpu->mem, _t30, cpu->r[25]);
|
|
L_02061618: ; // 0x2061618
|
|
/* 02061618 */ cpu->r[3] = cpu->r[19];
|
|
/* 0206161C */ Gambit_fn_02837030(cpu);
|
|
/* 02061620 */ _t31 = cpu->r[20] + 0xFFFFEAE4u;
|
|
/* 02061620 */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
L_02061624: ; // 0x2061624
|
|
/* 02061624 */ cpu->r[8] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02061628 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206162C */ _t32 = cpu->r[8] + cpu->r[6];
|
|
/* 0206162C */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02061630 */ cpu->r[4] = cpu->r[29];
|
|
/* 02061634 */ Gambit_fn_028A6634(cpu);
|
|
/* 02061638 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0206163C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000003u);
|
|
/* 02061640 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02061640 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02061640 */ if (_t34) goto L_02061648; else goto L_02061644;
|
|
L_02061644: ; // 0x2061644
|
|
/* 02061644 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061644 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02061644 */ if (_t36) goto L_02061578; else goto L_02061648;
|
|
L_02061648: ; // 0x2061648
|
|
/* 02061648 */ cpu->r[3] = cpu->r[27];
|
|
/* 0206164C */ cpu->r[4] = cpu->r[31];
|
|
/* 02061650 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02061654 */ cpu->r[9] = 0x101E0000u;
|
|
/* 02061658 */ cpu->r[31] = 0x101E0000u;
|
|
/* 0206165C */ _t37 = cpu->r[9] + 0xFFFFC768u;
|
|
/* 0206165C */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0206165C */ cpu->r[9] = _t37;
|
|
/* 02061660 */ cpu->r[31] = cpu->r[31] + 0xFFFFC6E4u;
|
|
/* 02061664 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02061668 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0206166C */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206166C */ _t39 = _t38 & 0x00000001u;
|
|
/* 0206166C */ if (_t39) goto L_02061670; else goto L_020616B8;
|
|
L_02061670: ; // 0x2061670
|
|
/* 02061670 */ cpu->r[0] = 0x00000001u;
|
|
/* 02061674 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061678 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 0206167C */ cpu->r[4] = 0x10000000u;
|
|
/* 02061680 */ cpu->r[7] = 0x00000000u;
|
|
/* 02061684 */ cpu->r[5] = 0x00000004u;
|
|
/* 02061688 */ cpu->r[4] = cpu->r[4] + 0x00006D0Cu;
|
|
/* 0206168C */ _t40 = cpu->r[9] + 0x00000000u;
|
|
/* 0206168C */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 02061690 */ Gambit_fn_028A6750(cpu);
|
|
/* 02061694 */ cpu->r[6] = 0x02060000u;
|
|
/* 02061698 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 0206169C */ cpu->r[4] = 0x00000004u;
|
|
/* 020616A0 */ cpu->r[6] = cpu->r[6] + 0x000017DCu;
|
|
/* 020616A4 */ cpu->r[5] = 0x00000008u;
|
|
/* 020616A8 */ Gambit_fn_02C82E00(cpu);
|
|
/* 020616AC */ cpu->r[3] = 0x101C0000u;
|
|
/* 020616B0 */ cpu->r[3] = cpu->r[3] + 0x00002F64u;
|
|
/* 020616B4 */ Gambit_fn_02C83090(cpu);
|
|
L_020616B8: ; // 0x20616b8
|
|
/* 020616B8 */ _t41 = cpu->r[31] + 0x00000054u;
|
|
/* 020616B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 020616BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 020616C0 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020616C0 */ _t43 = _t42 & 0x00000001u;
|
|
/* 020616C0 */ if (_t43) goto L_020616C4; else goto L_020617B8;
|
|
L_020616C4: ; // 0x20616c4
|
|
/* 020616C4 */ cpu->r[22] = 0x101D0000u;
|
|
/* 020616C8 */ cpu->r[30] = 0xFFFFFFFFu;
|
|
/* 020616CC */ cpu->r[28] = 0x101D0000u;
|
|
/* 020616D0 */ cpu->r[29] = 0x101D0000u;
|
|
/* 020616D4 */ cpu->r[19] = 0x101D0000u;
|
|
/* 020616D8 */ cpu->r[20] = 0x00000001u;
|
|
/* 020616DC */ cpu->r[22] = cpu->r[22] + 0xFFFFE340u;
|
|
/* 020616E0 */ cpu->r[23] = 0x00000000u;
|
|
/* 020616E4 */ cpu->r[21] = 0x101D0000u;
|
|
L_020616E8: ; // 0x20616e8
|
|
/* 020616E8 */ _t44 = cpu->r[19] + 0xFFFFD8F0u;
|
|
/* 020616E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t44);
|
|
/* 020616EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 020616F0 */ cpu->r[24] = cpu->r[30] + 0x00000001u;
|
|
/* 020616F4 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020616F4 */ _t46 = _t45 & 0x00000001u;
|
|
/* 020616F4 */ if (_t46) goto L_020616F8; else goto L_02061710;
|
|
L_020616F8: ; // 0x20616f8
|
|
/* 020616F8 */ cpu->r[4] = 0x101C0000u;
|
|
/* 020616FC */ cpu->r[3] = cpu->r[21] + 0x00002FECu;
|
|
/* 02061700 */ cpu->r[5] = 0x00000026u;
|
|
/* 02061704 */ cpu->r[4] = cpu->r[4] + 0x00002F30u;
|
|
/* 02061708 */ _t47 = cpu->r[19] + 0xFFFFD8F0u;
|
|
/* 02061708 */ rbrew_write32(cpu->mem, _t47, cpu->r[20]);
|
|
/* 0206170C */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02061710: ; // 0x2061710
|
|
/* 02061710 */ _t48 = cpu->r[29] + 0xFFFFD8ECu;
|
|
/* 02061710 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02061714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061718 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061718 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02061718 */ if (_t50) goto L_0206171C; else goto L_02061724;
|
|
L_0206171C: ; // 0x206171c
|
|
/* 0206171C */ _t51 = cpu->r[28] + 0xFFFFE350u;
|
|
/* 0206171C */ rbrew_write32(cpu->mem, _t51, cpu->r[23]);
|
|
/* 02061720 */ _t52 = cpu->r[29] + 0xFFFFD8ECu;
|
|
/* 02061720 */ rbrew_write32(cpu->mem, _t52, cpu->r[20]);
|
|
L_02061724: ; // 0x2061724
|
|
/* 02061724 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], 0x00000004u);
|
|
/* 02061728 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061728 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02061728 */ if (_t54) goto L_02061750; else goto L_0206172C;
|
|
L_0206172C: ; // 0x206172c
|
|
/* 0206172C */ cpu->r[4] = cpu->r[30];
|
|
/* 02061730 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061734 */ cpu->r[5] = 0x00000000u;
|
|
/* 02061738 */ Gambit_fn_028A6634(cpu);
|
|
/* 0206173C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02061740 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000003u);
|
|
/* 02061744 */ _t55 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02061744 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02061744 */ if (_t56) goto L_020617B8; else goto L_02061748;
|
|
L_02061748: ; // 0x2061748
|
|
/* 02061748 */ _t57 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061748 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02061748 */ if (_t58) goto L_020616E8; else goto L_0206174C;
|
|
L_0206174C: ; // 0x206174c
|
|
/* 0206174C */ goto L_020617B8;
|
|
L_02061750: ; // 0x2061750
|
|
/* 02061750 */ _t59 = cpu->r[28] + 0xFFFFE350u;
|
|
/* 02061750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02061754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061758 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061758 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02061758 */ if (_t61) goto L_0206175C; else goto L_02061794;
|
|
L_0206175C: ; // 0x206175c
|
|
/* 0206175C */ Gambit_fn_0282A450(cpu);
|
|
/* 02061760 */ cpu->r[25] = cpu->r[3];
|
|
/* 02061764 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02061768 */ _t62 = cpu->r[28] + 0xFFFFE350u;
|
|
/* 02061768 */ cpu->r[7] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0206176C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02061770 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061770 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02061770 */ if (_t64) goto L_02061774; else goto L_02061788;
|
|
L_02061774: ; // 0x2061774
|
|
/* 02061774 */ cpu->r[5] = 0x00000004u;
|
|
/* 02061778 */ cpu->r[4] = cpu->r[21] + 0x00002FECu;
|
|
/* 0206177C */ cpu->r[3] = cpu->r[22];
|
|
/* 02061780 */ Gambit_fn_0282A374(cpu);
|
|
/* 02061784 */ _t65 = cpu->r[28] + 0xFFFFE350u;
|
|
/* 02061784 */ rbrew_write32(cpu->mem, _t65, cpu->r[22]);
|
|
L_02061788: ; // 0x2061788
|
|
/* 02061788 */ cpu->r[3] = cpu->r[25];
|
|
/* 0206178C */ Gambit_fn_02837030(cpu);
|
|
/* 02061790 */ _t66 = cpu->r[28] + 0xFFFFE350u;
|
|
/* 02061790 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
L_02061794: ; // 0x2061794
|
|
/* 02061794 */ cpu->r[9] = rbrew_rlwinm(cpu->r[24], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02061798 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206179C */ _t67 = cpu->r[9] + cpu->r[0];
|
|
/* 0206179C */ cpu->r[5] = rbrew_read32(cpu->mem, _t67);
|
|
/* 020617A0 */ cpu->r[4] = cpu->r[30];
|
|
/* 020617A4 */ Gambit_fn_028A6634(cpu);
|
|
/* 020617A8 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 020617AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000003u);
|
|
/* 020617B0 */ _t68 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020617B0 */ _t69 = _t68 & 0x00000001u;
|
|
/* 020617B0 */ if (_t69) goto L_020617B8; else goto L_020617B4;
|
|
L_020617B4: ; // 0x20617b4
|
|
/* 020617B4 */ _t70 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020617B4 */ _t71 = _t70 & 0x00000001u;
|
|
/* 020617B4 */ if (_t71) goto L_020616E8; else goto L_020617B8;
|
|
L_020617B8: ; // 0x20617b8
|
|
/* 020617B8 */ cpu->r[3] = cpu->r[27];
|
|
/* 020617BC */ cpu->r[4] = cpu->r[31];
|
|
/* 020617C0 */ Gambit_fn_027B81E4(cpu);
|
|
/* 020617C4 */ cpu->r[3] = cpu->r[26] + 0x00000001u;
|
|
/* 020617C8 */ /* nop */
|
|
/* 020617CC */ _t72 = cpu->r[1] + 0x00000044u;
|
|
/* 020617CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 020617D0 */ cpu->lr = cpu->r[0];
|
|
/* 020617D4 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 020617D8 */ return;
|
|
}
|
|
|
|
// fn_020617E8 @ 0x20617e8
|
|
void Gambit_fn_020617E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_020617E8: ; // 0x20617e8
|
|
/* 020617E8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 020617E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020617E8 */ cpu->r[1] = _t0;
|
|
/* 020617EC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020617EC */ _t2 = _t1 & 0x00000001u;
|
|
/* 020617EC */ if (_t2) goto L_020617F0; else goto L_02061800;
|
|
L_020617F0: ; // 0x20617f0
|
|
/* 020617F0 */ cpu->r[3] = 0x00000008u;
|
|
/* 020617F4 */ Gambit_fn_02801A78(cpu);
|
|
/* 020617F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020617FC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020617FC */ _t4 = _t3 & 0x00000001u;
|
|
/* 020617FC */ if (_t4) goto L_02061810; else goto L_02061800;
|
|
L_02061800: ; // 0x2061800
|
|
/* 02061800 */ cpu->r[12] = 0x00000000u;
|
|
/* 02061804 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02061808 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02061808 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 0206180C */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 0206180C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_02061810: ; // 0x2061810
|
|
/* 02061810 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061810 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02061814 */ cpu->lr = cpu->r[0];
|
|
/* 02061818 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0206181C */ return;
|
|
}
|
|
|
|
// fn_02061820 @ 0x2061820
|
|
void Gambit_fn_02061820(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02061820: ; // 0x2061820
|
|
/* 02061820 */ cpu->r[0] = cpu->lr;
|
|
/* 02061824 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061824 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061824 */ cpu->r[1] = _t0;
|
|
/* 02061828 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061828 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206182C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206182C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02061830 */ cpu->r[30] = cpu->r[3];
|
|
/* 02061830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02061834 */ cpu->r[31] = cpu->r[4];
|
|
/* 02061838 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02061838 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206183C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206183C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206183C */ if (_t5) goto L_0206185C; else goto L_02061840;
|
|
L_02061840: ; // 0x2061840
|
|
/* 02061840 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061844 */ cpu->r[4] = 0x00000000u;
|
|
/* 02061848 */ Gambit_fn_028A65C0(cpu);
|
|
/* 0206184C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206184C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061850 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061850 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02061850 */ if (_t7) goto L_0206185C; else goto L_02061854;
|
|
L_02061854: ; // 0x2061854
|
|
/* 02061854 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061858 */ Gambit_fn_02801BB0(cpu);
|
|
L_0206185C: ; // 0x206185c
|
|
/* 0206185C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0206185C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02061860 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02061860 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02061864 */ cpu->lr = cpu->r[0];
|
|
/* 02061868 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061868 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206186C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02061870 */ return;
|
|
}
|
|
|
|
// fn_02061824 @ 0x2061824
|
|
void Gambit_fn_02061824(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02061824: ; // 0x2061824
|
|
/* 02061824 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061824 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061824 */ cpu->r[1] = _t0;
|
|
/* 02061828 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061828 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206182C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206182C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02061830 */ cpu->r[30] = cpu->r[3];
|
|
/* 02061830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02061834 */ cpu->r[31] = cpu->r[4];
|
|
/* 02061838 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02061838 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206183C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206183C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206183C */ if (_t5) goto L_0206185C; else goto L_02061840;
|
|
L_02061840: ; // 0x2061840
|
|
/* 02061840 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061844 */ cpu->r[4] = 0x00000000u;
|
|
/* 02061848 */ Gambit_fn_028A65C0(cpu);
|
|
/* 0206184C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206184C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061850 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061850 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02061850 */ if (_t7) goto L_0206185C; else goto L_02061854;
|
|
L_02061854: ; // 0x2061854
|
|
/* 02061854 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061858 */ Gambit_fn_02801BB0(cpu);
|
|
L_0206185C: ; // 0x206185c
|
|
/* 0206185C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0206185C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02061860 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02061860 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02061864 */ cpu->lr = cpu->r[0];
|
|
/* 02061868 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061868 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206186C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02061870 */ return;
|
|
}
|
|
|
|
// fn_02061874 @ 0x2061874
|
|
void Gambit_fn_02061874(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02061874: ; // 0x2061874
|
|
/* 02061874 */ cpu->r[0] = cpu->lr;
|
|
/* 02061878 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061878 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061878 */ cpu->r[1] = _t0;
|
|
/* 0206187C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206187C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02061880 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02061880 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02061884 */ cpu->r[30] = cpu->r[3];
|
|
/* 02061884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02061888 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206188C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206188C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02061890 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061890 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02061890 */ if (_t5) goto L_020618B0; else goto L_02061894;
|
|
L_02061894: ; // 0x2061894
|
|
/* 02061894 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061898 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206189C */ Gambit_fn_028A65C0(cpu);
|
|
/* 020618A0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020618A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020618A4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020618A4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 020618A4 */ if (_t7) goto L_020618B0; else goto L_020618A8;
|
|
L_020618A8: ; // 0x20618a8
|
|
/* 020618A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 020618AC */ Gambit_fn_02801BB0(cpu);
|
|
L_020618B0: ; // 0x20618b0
|
|
/* 020618B0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 020618B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 020618B4 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 020618B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 020618B8 */ cpu->lr = cpu->r[0];
|
|
/* 020618BC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020618BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020618C0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020618C4 */ return;
|
|
}
|
|
|
|
// fn_02061878 @ 0x2061878
|
|
void Gambit_fn_02061878(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02061878: ; // 0x2061878
|
|
/* 02061878 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061878 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061878 */ cpu->r[1] = _t0;
|
|
/* 0206187C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206187C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02061880 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02061880 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02061884 */ cpu->r[30] = cpu->r[3];
|
|
/* 02061884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02061888 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206188C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206188C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02061890 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061890 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02061890 */ if (_t5) goto L_020618B0; else goto L_02061894;
|
|
L_02061894: ; // 0x2061894
|
|
/* 02061894 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061898 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206189C */ Gambit_fn_028A65C0(cpu);
|
|
/* 020618A0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020618A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020618A4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020618A4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 020618A4 */ if (_t7) goto L_020618B0; else goto L_020618A8;
|
|
L_020618A8: ; // 0x20618a8
|
|
/* 020618A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 020618AC */ Gambit_fn_02801BB0(cpu);
|
|
L_020618B0: ; // 0x20618b0
|
|
/* 020618B0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 020618B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 020618B4 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 020618B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 020618B8 */ cpu->lr = cpu->r[0];
|
|
/* 020618BC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020618BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020618C0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020618C4 */ return;
|
|
}
|
|
|
|
// fn_020618C8 @ 0x20618c8
|
|
void Gambit_fn_020618C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44;
|
|
|
|
L_020618C8: ; // 0x20618c8
|
|
/* 020618C8 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 020618C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020618C8 */ cpu->r[1] = _t0;
|
|
/* 020618CC */ /* nop */
|
|
/* 020618D0 */ cpu->r[0] = cpu->lr;
|
|
/* 020618D4 */ cpu->r[25] = cpu->r[3];
|
|
/* 020618D8 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 020618D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 020618DC */ Gambit_fn_0205AED4(cpu);
|
|
/* 020618E0 */ cpu->r[9] = 0x101E0000u;
|
|
/* 020618E4 */ _t2 = cpu->r[9] + 0xFFFFC84Cu;
|
|
/* 020618E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t2);
|
|
/* 020618E4 */ cpu->r[9] = _t2;
|
|
/* 020618E8 */ cpu->r[31] = 0x101E0000u;
|
|
/* 020618EC */ cpu->r[24] = cpu->r[3];
|
|
/* 020618F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 020618F4 */ cpu->r[31] = cpu->r[31] + 0xFFFFC76Cu;
|
|
/* 020618F8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020618F8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 020618F8 */ if (_t4) goto L_020618FC; else goto L_02061944;
|
|
L_020618FC: ; // 0x20618fc
|
|
/* 020618FC */ cpu->r[7] = 0x00000001u;
|
|
/* 02061900 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02061904 */ cpu->r[4] = 0x10000000u;
|
|
/* 02061908 */ _t5 = cpu->r[9] + 0x00000000u;
|
|
/* 02061908 */ rbrew_write32(cpu->mem, _t5, cpu->r[7]);
|
|
/* 0206190C */ cpu->r[3] = cpu->r[31];
|
|
/* 02061910 */ cpu->r[5] = 0x00000002u;
|
|
/* 02061914 */ cpu->r[4] = cpu->r[4] + 0x00006D20u;
|
|
/* 02061918 */ cpu->r[7] = 0x00000000u;
|
|
/* 0206191C */ Gambit_fn_028A6750(cpu);
|
|
/* 02061920 */ cpu->r[6] = 0x02060000u;
|
|
/* 02061924 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 02061928 */ cpu->r[4] = 0x00000002u;
|
|
/* 0206192C */ cpu->r[6] = cpu->r[6] + 0x00001B0Cu;
|
|
/* 02061930 */ cpu->r[5] = 0x00000008u;
|
|
/* 02061934 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02061938 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0206193C */ cpu->r[3] = cpu->r[3] + 0x00002F80u;
|
|
/* 02061940 */ Gambit_fn_02C83090(cpu);
|
|
L_02061944: ; // 0x2061944
|
|
/* 02061944 */ _t6 = cpu->r[31] + 0x00000054u;
|
|
/* 02061944 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02061948 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0206194C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206194C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0206194C */ if (_t8) goto L_02061950; else goto L_02061A44;
|
|
L_02061950: ; // 0x2061950
|
|
/* 02061950 */ cpu->r[22] = 0x101D0000u;
|
|
/* 02061954 */ cpu->r[30] = 0x00000000u;
|
|
/* 02061958 */ cpu->r[27] = 0x101D0000u;
|
|
/* 0206195C */ cpu->r[28] = 0x101D0000u;
|
|
/* 02061960 */ cpu->r[19] = 0x00000001u;
|
|
/* 02061964 */ cpu->r[23] = cpu->r[30];
|
|
/* 02061968 */ cpu->r[21] = 0x101D0000u;
|
|
/* 0206196C */ cpu->r[22] = cpu->r[22] + 0xFFFFEAF0u;
|
|
/* 02061970 */ cpu->r[20] = 0x101D0000u;
|
|
L_02061974: ; // 0x2061974
|
|
/* 02061974 */ _t9 = cpu->r[20] + 0xFFFFEB00u;
|
|
/* 02061974 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02061978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206197C */ cpu->r[29] = cpu->r[30];
|
|
/* 02061980 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061980 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02061980 */ if (_t11) goto L_02061984; else goto L_0206199C;
|
|
L_02061984: ; // 0x2061984
|
|
/* 02061984 */ cpu->r[4] = 0x101C0000u;
|
|
/* 02061988 */ cpu->r[3] = cpu->r[21] + 0x00003937u;
|
|
/* 0206198C */ cpu->r[5] = 0x0000000Eu;
|
|
/* 02061990 */ cpu->r[4] = cpu->r[4] + 0x00002F70u;
|
|
/* 02061994 */ _t12 = cpu->r[20] + 0xFFFFEB00u;
|
|
/* 02061994 */ rbrew_write32(cpu->mem, _t12, cpu->r[19]);
|
|
/* 02061998 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0206199C: ; // 0x206199c
|
|
/* 0206199C */ _t13 = cpu->r[28] + 0xFFFFEAFCu;
|
|
/* 0206199C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020619A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020619A4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020619A4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 020619A4 */ if (_t15) goto L_020619A8; else goto L_020619B0;
|
|
L_020619A8: ; // 0x20619a8
|
|
/* 020619A8 */ _t16 = cpu->r[27] + 0xFFFFEAF8u;
|
|
/* 020619A8 */ rbrew_write32(cpu->mem, _t16, cpu->r[23]);
|
|
/* 020619AC */ _t17 = cpu->r[28] + 0xFFFFEAFCu;
|
|
/* 020619AC */ rbrew_write32(cpu->mem, _t17, cpu->r[19]);
|
|
L_020619B0: ; // 0x20619b0
|
|
/* 020619B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000002u);
|
|
/* 020619B4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020619B4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 020619B4 */ if (_t19) goto L_020619DC; else goto L_020619B8;
|
|
L_020619B8: ; // 0x20619b8
|
|
/* 020619B8 */ cpu->r[4] = cpu->r[29];
|
|
/* 020619BC */ cpu->r[3] = cpu->r[31];
|
|
/* 020619C0 */ cpu->r[5] = 0x00000000u;
|
|
/* 020619C4 */ Gambit_fn_028A6634(cpu);
|
|
/* 020619C8 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 020619CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 020619D0 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020619D0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 020619D0 */ if (_t21) goto L_02061A44; else goto L_020619D4;
|
|
L_020619D4: ; // 0x20619d4
|
|
/* 020619D4 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020619D4 */ _t23 = _t22 & 0x00000001u;
|
|
/* 020619D4 */ if (_t23) goto L_02061974; else goto L_020619D8;
|
|
L_020619D8: ; // 0x20619d8
|
|
/* 020619D8 */ goto L_02061A44;
|
|
L_020619DC: ; // 0x20619dc
|
|
/* 020619DC */ _t24 = cpu->r[27] + 0xFFFFEAF8u;
|
|
/* 020619DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 020619E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020619E4 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020619E4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 020619E4 */ if (_t26) goto L_020619E8; else goto L_02061A20;
|
|
L_020619E8: ; // 0x20619e8
|
|
/* 020619E8 */ Gambit_fn_0282A450(cpu);
|
|
/* 020619EC */ cpu->r[26] = cpu->r[3];
|
|
/* 020619F0 */ Gambit_fn_02836FFC(cpu);
|
|
/* 020619F4 */ _t27 = cpu->r[27] + 0xFFFFEAF8u;
|
|
/* 020619F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 020619F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 020619FC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020619FC */ _t29 = _t28 & 0x00000001u;
|
|
/* 020619FC */ if (_t29) goto L_02061A00; else goto L_02061A14;
|
|
L_02061A00: ; // 0x2061a00
|
|
/* 02061A00 */ cpu->r[5] = 0x00000002u;
|
|
/* 02061A04 */ cpu->r[4] = cpu->r[21] + 0x00003937u;
|
|
/* 02061A08 */ cpu->r[3] = cpu->r[22];
|
|
/* 02061A0C */ Gambit_fn_0282A374(cpu);
|
|
/* 02061A10 */ _t30 = cpu->r[27] + 0xFFFFEAF8u;
|
|
/* 02061A10 */ rbrew_write32(cpu->mem, _t30, cpu->r[22]);
|
|
L_02061A14: ; // 0x2061a14
|
|
/* 02061A14 */ cpu->r[3] = cpu->r[26];
|
|
/* 02061A18 */ Gambit_fn_02837030(cpu);
|
|
/* 02061A1C */ _t31 = cpu->r[27] + 0xFFFFEAF8u;
|
|
/* 02061A1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
L_02061A20: ; // 0x2061a20
|
|
/* 02061A20 */ cpu->r[11] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02061A24 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061A28 */ _t32 = cpu->r[11] + cpu->r[0];
|
|
/* 02061A28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02061A2C */ cpu->r[4] = cpu->r[29];
|
|
/* 02061A30 */ Gambit_fn_028A6634(cpu);
|
|
/* 02061A34 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02061A38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 02061A3C */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02061A3C */ _t34 = _t33 & 0x00000001u;
|
|
/* 02061A3C */ if (_t34) goto L_02061A44; else goto L_02061A40;
|
|
L_02061A40: ; // 0x2061a40
|
|
/* 02061A40 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061A40 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02061A40 */ if (_t36) goto L_02061974; else goto L_02061A44;
|
|
L_02061A44: ; // 0x2061a44
|
|
/* 02061A44 */ cpu->r[3] = cpu->r[25];
|
|
/* 02061A48 */ cpu->r[4] = cpu->r[31];
|
|
/* 02061A4C */ Gambit_fn_027B81E4(cpu);
|
|
/* 02061A50 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02061A54 */ cpu->r[31] = 0x101E0000u;
|
|
/* 02061A58 */ _t37 = cpu->r[12] + 0xFFFFC850u;
|
|
/* 02061A58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02061A58 */ cpu->r[12] = _t37;
|
|
/* 02061A5C */ cpu->r[31] = cpu->r[31] + 0xFFFFC7DCu;
|
|
/* 02061A60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061A64 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 02061A68 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061A68 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02061A68 */ if (_t39) goto L_02061A6C; else goto L_02061AB4;
|
|
L_02061A6C: ; // 0x2061a6c
|
|
/* 02061A6C */ cpu->r[10] = 0x00000001u;
|
|
/* 02061A70 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061A74 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02061A78 */ cpu->r[4] = 0x10000000u;
|
|
/* 02061A7C */ cpu->r[7] = 0x00000000u;
|
|
/* 02061A80 */ cpu->r[5] = 0x00000002u;
|
|
/* 02061A84 */ cpu->r[4] = cpu->r[4] + 0x00006D30u;
|
|
/* 02061A88 */ _t40 = cpu->r[12] + 0x00000000u;
|
|
/* 02061A88 */ rbrew_write32(cpu->mem, _t40, cpu->r[10]);
|
|
/* 02061A8C */ Gambit_fn_028A6750(cpu);
|
|
/* 02061A90 */ cpu->r[6] = 0x02060000u;
|
|
/* 02061A94 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 02061A98 */ cpu->r[4] = 0x00000002u;
|
|
/* 02061A9C */ cpu->r[6] = cpu->r[6] + 0x00001B0Cu;
|
|
/* 02061AA0 */ cpu->r[5] = 0x00000008u;
|
|
/* 02061AA4 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02061AA8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02061AAC */ cpu->r[3] = cpu->r[3] + 0x00002F8Cu;
|
|
/* 02061AB0 */ Gambit_fn_02C83090(cpu);
|
|
L_02061AB4: ; // 0x2061ab4
|
|
/* 02061AB4 */ _t41 = cpu->r[31] + 0x00000054u;
|
|
/* 02061AB4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02061AB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02061ABC */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061ABC */ _t43 = _t42 & 0x00000001u;
|
|
/* 02061ABC */ if (_t43) goto L_02061AC0; else goto L_02061AE8;
|
|
L_02061AC0: ; // 0x2061ac0
|
|
/* 02061AC0 */ cpu->r[5] = 0x10000000u;
|
|
/* 02061AC4 */ cpu->r[4] = 0x00000000u;
|
|
/* 02061AC8 */ cpu->r[5] = cpu->r[5] + 0x00006D28u;
|
|
/* 02061ACC */ cpu->r[3] = cpu->r[31];
|
|
/* 02061AD0 */ Gambit_fn_028A6634(cpu);
|
|
/* 02061AD4 */ cpu->r[5] = 0x10000000u;
|
|
/* 02061AD8 */ cpu->r[4] = 0x00000001u;
|
|
/* 02061ADC */ cpu->r[5] = cpu->r[5] + 0x00006D18u;
|
|
/* 02061AE0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061AE4 */ Gambit_fn_028A6634(cpu);
|
|
L_02061AE8: ; // 0x2061ae8
|
|
/* 02061AE8 */ cpu->r[3] = cpu->r[25];
|
|
/* 02061AEC */ cpu->r[4] = cpu->r[31];
|
|
/* 02061AF0 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02061AF4 */ cpu->r[3] = cpu->r[24] + 0x00000001u;
|
|
/* 02061AF8 */ /* nop */
|
|
/* 02061AFC */ _t44 = cpu->r[1] + 0x00000044u;
|
|
/* 02061AFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02061B00 */ cpu->lr = cpu->r[0];
|
|
/* 02061B04 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02061B08 */ return;
|
|
}
|
|
|
|
// fn_02061B18 @ 0x2061b18
|
|
void Gambit_fn_02061B18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02061B18: ; // 0x2061b18
|
|
/* 02061B18 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02061B18 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061B18 */ cpu->r[1] = _t0;
|
|
/* 02061B1C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061B1C */ _t2 = _t1 & 0x00000001u;
|
|
/* 02061B1C */ if (_t2) goto L_02061B20; else goto L_02061B30;
|
|
L_02061B20: ; // 0x2061b20
|
|
/* 02061B20 */ cpu->r[3] = 0x00000008u;
|
|
/* 02061B24 */ Gambit_fn_02801A78(cpu);
|
|
/* 02061B28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02061B2C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061B2C */ _t4 = _t3 & 0x00000001u;
|
|
/* 02061B2C */ if (_t4) goto L_02061B40; else goto L_02061B30;
|
|
L_02061B30: ; // 0x2061b30
|
|
/* 02061B30 */ cpu->r[12] = 0x00000000u;
|
|
/* 02061B34 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02061B38 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02061B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02061B3C */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02061B3C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_02061B40: ; // 0x2061b40
|
|
/* 02061B40 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061B40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02061B44 */ cpu->lr = cpu->r[0];
|
|
/* 02061B48 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02061B4C */ return;
|
|
}
|
|
|
|
// fn_02061B50 @ 0x2061b50
|
|
void Gambit_fn_02061B50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02061B50: ; // 0x2061b50
|
|
/* 02061B50 */ cpu->r[0] = cpu->lr;
|
|
/* 02061B54 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061B54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061B54 */ cpu->r[1] = _t0;
|
|
/* 02061B58 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061B58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02061B5C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02061B5C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02061B60 */ cpu->r[30] = cpu->r[3];
|
|
/* 02061B60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02061B64 */ cpu->r[31] = cpu->r[4];
|
|
/* 02061B68 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02061B68 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02061B6C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061B6C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02061B6C */ if (_t5) goto L_02061B8C; else goto L_02061B70;
|
|
L_02061B70: ; // 0x2061b70
|
|
/* 02061B70 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061B74 */ cpu->r[4] = 0x00000000u;
|
|
/* 02061B78 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02061B7C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02061B7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061B80 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061B80 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02061B80 */ if (_t7) goto L_02061B8C; else goto L_02061B84;
|
|
L_02061B84: ; // 0x2061b84
|
|
/* 02061B84 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061B88 */ Gambit_fn_02801BB0(cpu);
|
|
L_02061B8C: ; // 0x2061b8c
|
|
/* 02061B8C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02061B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02061B90 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02061B90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02061B94 */ cpu->lr = cpu->r[0];
|
|
/* 02061B98 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061B98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02061B9C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02061BA0 */ return;
|
|
}
|
|
|
|
// fn_02061B54 @ 0x2061b54
|
|
void Gambit_fn_02061B54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02061B54: ; // 0x2061b54
|
|
/* 02061B54 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061B54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061B54 */ cpu->r[1] = _t0;
|
|
/* 02061B58 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061B58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02061B5C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02061B5C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02061B60 */ cpu->r[30] = cpu->r[3];
|
|
/* 02061B60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02061B64 */ cpu->r[31] = cpu->r[4];
|
|
/* 02061B68 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02061B68 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02061B6C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061B6C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02061B6C */ if (_t5) goto L_02061B8C; else goto L_02061B70;
|
|
L_02061B70: ; // 0x2061b70
|
|
/* 02061B70 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061B74 */ cpu->r[4] = 0x00000000u;
|
|
/* 02061B78 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02061B7C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02061B7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061B80 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061B80 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02061B80 */ if (_t7) goto L_02061B8C; else goto L_02061B84;
|
|
L_02061B84: ; // 0x2061b84
|
|
/* 02061B84 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061B88 */ Gambit_fn_02801BB0(cpu);
|
|
L_02061B8C: ; // 0x2061b8c
|
|
/* 02061B8C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02061B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02061B90 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02061B90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02061B94 */ cpu->lr = cpu->r[0];
|
|
/* 02061B98 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061B98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02061B9C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02061BA0 */ return;
|
|
}
|
|
|
|
// fn_02061BA4 @ 0x2061ba4
|
|
void Gambit_fn_02061BA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02061BA4: ; // 0x2061ba4
|
|
/* 02061BA4 */ cpu->r[0] = cpu->lr;
|
|
/* 02061BA8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061BA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061BA8 */ cpu->r[1] = _t0;
|
|
/* 02061BAC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061BAC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02061BB0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02061BB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02061BB4 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 02061BB4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02061BB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02061BBC */ /* nop */
|
|
/* 02061BC0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02061BC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061BC8 */ Gambit_fn_02061BE0(cpu);
|
|
/* 02061BCC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02061BCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02061BD0 */ cpu->lr = cpu->r[0];
|
|
/* 02061BD4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061BD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02061BD8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02061BDC */ return;
|
|
}
|
|
|
|
// fn_02061BA8 @ 0x2061ba8
|
|
void Gambit_fn_02061BA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02061BA8: ; // 0x2061ba8
|
|
/* 02061BA8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061BA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061BA8 */ cpu->r[1] = _t0;
|
|
/* 02061BAC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061BAC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02061BB0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02061BB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02061BB4 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 02061BB4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02061BB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02061BBC */ /* nop */
|
|
/* 02061BC0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02061BC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061BC8 */ Gambit_fn_02061BE0(cpu);
|
|
/* 02061BCC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02061BCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02061BD0 */ cpu->lr = cpu->r[0];
|
|
/* 02061BD4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061BD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02061BD8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02061BDC */ return;
|
|
}
|
|
|
|
// fn_02061BE0 @ 0x2061be0
|
|
void Gambit_fn_02061BE0(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_02061BE0: ; // 0x2061be0
|
|
/* 02061BE0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02061BE0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02061BE4 */ /* nop */
|
|
/* 02061BE8 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 02061BE8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02061BEC */ cpu->r[8] = cpu->r[0];
|
|
/* 02061BF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 02061BF4 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 02061BF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02061BF8 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061BF8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02061BF8 */ if (_t4) goto L_02061BFC; else goto L_02061C14;
|
|
L_02061BFC: ; // 0x2061bfc
|
|
/* 02061BFC */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02061C00 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 02061C04 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02061C04 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02061C08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02061C0C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061C0C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02061C0C */ if (_t7) goto L_02061C10; else goto L_02061C20;
|
|
L_02061C10: ; // 0x2061c10
|
|
/* 02061C10 */ return;
|
|
L_02061C14: ; // 0x2061c14
|
|
/* 02061C14 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02061C14 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02061C18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02061C1C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061C1C */ _t10 = _t9 & 0x00000001u;
|
|
/* 02061C1C */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02061C1C */ goto L_02061C20;
|
|
L_02061C20: ; // 0x2061c20
|
|
/* 02061C20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02061C24 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02061C24 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02061C28 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061C28 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02061C28 */ if (_t13) goto L_02061C2C; else goto L_02061C34;
|
|
L_02061C2C: ; // 0x2061c2c
|
|
/* 02061C2C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02061C30 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02061C34: ; // 0x2061c34
|
|
/* 02061C34 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02061C34 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02061C38 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02061C38 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02061C3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061C40 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02061C40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02061C44 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 02061C48 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061C48 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02061C48 */ if (_t18) goto L_02061C60; else goto L_02061C4C;
|
|
L_02061C4C: ; // 0x2061c4c
|
|
/* 02061C4C */ /* nop */
|
|
/* 02061C50 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02061C50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02061C54 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02061C58 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 02061C5C */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02061C5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02061C60: ; // 0x2061c60
|
|
/* 02061C60 */ cpu->ctr = cpu->r[11];
|
|
/* 02061C64 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02061C68 @ 0x2061c68
|
|
void Gambit_fn_02061C68(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_02061C68: ; // 0x2061c68
|
|
/* 02061C68 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02061C68 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02061C6C */ /* nop */
|
|
/* 02061C70 */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 02061C70 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02061C74 */ cpu->r[8] = cpu->r[0];
|
|
/* 02061C78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 02061C7C */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02061C7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02061C80 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061C80 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02061C80 */ if (_t4) goto L_02061C84; else goto L_02061C9C;
|
|
L_02061C84: ; // 0x2061c84
|
|
/* 02061C84 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02061C88 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 02061C8C */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02061C8C */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02061C90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02061C94 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061C94 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02061C94 */ if (_t7) goto L_02061C98; else goto L_02061CA8;
|
|
L_02061C98: ; // 0x2061c98
|
|
/* 02061C98 */ return;
|
|
L_02061C9C: ; // 0x2061c9c
|
|
/* 02061C9C */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02061C9C */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02061CA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02061CA4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061CA4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02061CA4 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02061CA4 */ goto L_02061CA8;
|
|
L_02061CA8: ; // 0x2061ca8
|
|
/* 02061CA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02061CAC */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02061CAC */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02061CB0 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061CB0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02061CB0 */ if (_t13) goto L_02061CB4; else goto L_02061CBC;
|
|
L_02061CB4: ; // 0x2061cb4
|
|
/* 02061CB4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02061CB8 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02061CBC: ; // 0x2061cbc
|
|
/* 02061CBC */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02061CBC */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02061CC0 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02061CC0 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02061CC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061CC8 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02061CC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02061CCC */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 02061CD0 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061CD0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02061CD0 */ if (_t18) goto L_02061CE8; else goto L_02061CD4;
|
|
L_02061CD4: ; // 0x2061cd4
|
|
/* 02061CD4 */ /* nop */
|
|
/* 02061CD8 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02061CD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02061CDC */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02061CE0 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 02061CE4 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02061CE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02061CE8: ; // 0x2061ce8
|
|
/* 02061CE8 */ cpu->ctr = cpu->r[11];
|
|
/* 02061CEC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02061CF0 @ 0x2061cf0
|
|
void Gambit_fn_02061CF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02061CF0: ; // 0x2061cf0
|
|
/* 02061CF0 */ cpu->r[0] = cpu->lr;
|
|
/* 02061CF4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061CF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061CF4 */ cpu->r[1] = _t0;
|
|
/* 02061CF8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061CF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02061CFC */ cpu->r[31] = cpu->r[3];
|
|
/* 02061D00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02061D00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02061D04 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02061D04 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02061D08 */ cpu->r[12] = 0x00000000u;
|
|
/* 02061D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061D10 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02061D10 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02061D14 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061D14 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02061D14 */ if (_t6) goto L_02061D3C; else goto L_02061D18;
|
|
L_02061D18: ; // 0x2061d18
|
|
/* 02061D18 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02061D18 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02061D1C */ /* nop */
|
|
/* 02061D20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02061D24 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061D24 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02061D24 */ if (_t9) goto L_02061D28; else goto L_02061D3C;
|
|
L_02061D28: ; // 0x2061d28
|
|
/* 02061D28 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02061D28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02061D2C */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02061D2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02061D30 */ cpu->ctr = cpu->r[0];
|
|
/* 02061D34 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061D38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02061D3C: ; // 0x2061d3c
|
|
/* 02061D3C */ cpu->r[3] = cpu->r[31];
|
|
/* 02061D40 */ Gambit_fn_02061C68(cpu);
|
|
/* 02061D44 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061D48 */ Gambit_fn_027FC37C(cpu);
|
|
/* 02061D4C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02061D4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02061D50 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061D50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02061D54 */ cpu->lr = cpu->r[0];
|
|
/* 02061D58 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02061D5C */ return;
|
|
}
|
|
|
|
// fn_02061CF4 @ 0x2061cf4
|
|
void Gambit_fn_02061CF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02061CF4: ; // 0x2061cf4
|
|
/* 02061CF4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061CF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061CF4 */ cpu->r[1] = _t0;
|
|
/* 02061CF8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061CF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02061CFC */ cpu->r[31] = cpu->r[3];
|
|
/* 02061D00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02061D00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02061D04 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02061D04 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02061D08 */ cpu->r[12] = 0x00000000u;
|
|
/* 02061D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061D10 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02061D10 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02061D14 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061D14 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02061D14 */ if (_t6) goto L_02061D3C; else goto L_02061D18;
|
|
L_02061D18: ; // 0x2061d18
|
|
/* 02061D18 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02061D18 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02061D1C */ /* nop */
|
|
/* 02061D20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02061D24 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061D24 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02061D24 */ if (_t9) goto L_02061D28; else goto L_02061D3C;
|
|
L_02061D28: ; // 0x2061d28
|
|
/* 02061D28 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02061D28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02061D2C */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02061D2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02061D30 */ cpu->ctr = cpu->r[0];
|
|
/* 02061D34 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061D38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02061D3C: ; // 0x2061d3c
|
|
/* 02061D3C */ cpu->r[3] = cpu->r[31];
|
|
/* 02061D40 */ Gambit_fn_02061C68(cpu);
|
|
/* 02061D44 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061D48 */ Gambit_fn_027FC37C(cpu);
|
|
/* 02061D4C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02061D4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02061D50 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061D50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02061D54 */ cpu->lr = cpu->r[0];
|
|
/* 02061D58 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02061D5C */ return;
|
|
}
|
|
|
|
// fn_02061D60 @ 0x2061d60
|
|
void Gambit_fn_02061D60(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_02061D60: ; // 0x2061d60
|
|
/* 02061D60 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02061D60 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02061D64 */ /* nop */
|
|
/* 02061D68 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 02061D68 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02061D6C */ cpu->r[7] = cpu->r[0];
|
|
/* 02061D70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02061D74 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 02061D74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02061D78 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061D78 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02061D78 */ if (_t4) goto L_02061D7C; else goto L_02061D94;
|
|
L_02061D7C: ; // 0x2061d7c
|
|
/* 02061D7C */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02061D80 */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 02061D84 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02061D84 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02061D88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02061D8C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061D8C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02061D8C */ if (_t7) goto L_02061D90; else goto L_02061DA0;
|
|
L_02061D90: ; // 0x2061d90
|
|
/* 02061D90 */ return;
|
|
L_02061D94: ; // 0x2061d94
|
|
/* 02061D94 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02061D94 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02061D98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02061D9C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061D9C */ _t10 = _t9 & 0x00000001u;
|
|
/* 02061D9C */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02061D9C */ goto L_02061DA0;
|
|
L_02061DA0: ; // 0x2061da0
|
|
/* 02061DA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02061DA4 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02061DA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02061DA8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061DA8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02061DA8 */ if (_t13) goto L_02061DAC; else goto L_02061DB4;
|
|
L_02061DAC: ; // 0x2061dac
|
|
/* 02061DAC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02061DB0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02061DB4: ; // 0x2061db4
|
|
/* 02061DB4 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02061DB4 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02061DB8 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02061DB8 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02061DBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02061DC0 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02061DC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02061DC4 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 02061DC8 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061DC8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02061DC8 */ if (_t18) goto L_02061DE0; else goto L_02061DCC;
|
|
L_02061DCC: ; // 0x2061dcc
|
|
/* 02061DCC */ /* nop */
|
|
/* 02061DD0 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02061DD0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02061DD4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02061DD8 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 02061DDC */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02061DDC */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02061DE0: ; // 0x2061de0
|
|
/* 02061DE0 */ cpu->ctr = cpu->r[11];
|
|
/* 02061DE4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02061DE8 @ 0x2061de8
|
|
void Gambit_fn_02061DE8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02061DE8: ; // 0x2061de8
|
|
/* 02061DE8 */ cpu->r[0] = cpu->lr;
|
|
/* 02061DEC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061DEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061DEC */ cpu->r[1] = _t0;
|
|
/* 02061DF0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02061DF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02061DF4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061DF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02061DF8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02061DFC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02061DFC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02061E00 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02061E00 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02061E04 */ /* nop */
|
|
/* 02061E08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02061E0C */ cpu->r[31] = cpu->r[4];
|
|
/* 02061E10 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061E10 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02061E10 */ if (_t6) goto L_02061E14; else goto L_02061E28;
|
|
L_02061E14: ; // 0x2061e14
|
|
/* 02061E14 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02061E14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02061E18 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02061E18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02061E1C */ cpu->ctr = cpu->r[0];
|
|
/* 02061E20 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061E24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02061E28: ; // 0x2061e28
|
|
/* 02061E28 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061E2C */ cpu->r[4] = cpu->r[31];
|
|
/* 02061E30 */ Gambit_fn_02061D60(cpu);
|
|
/* 02061E34 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061E38 */ /* nop */
|
|
/* 02061E3C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02061E40 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061E44 */ Gambit_fn_02061BE0(cpu);
|
|
/* 02061E48 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02061E48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02061E4C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02061E4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02061E50 */ cpu->lr = cpu->r[0];
|
|
/* 02061E54 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061E54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02061E58 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02061E5C */ return;
|
|
}
|
|
|
|
// fn_02061DEC @ 0x2061dec
|
|
void Gambit_fn_02061DEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02061DEC: ; // 0x2061dec
|
|
/* 02061DEC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02061DEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061DEC */ cpu->r[1] = _t0;
|
|
/* 02061DF0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02061DF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02061DF4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061DF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02061DF8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02061DFC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02061DFC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02061E00 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02061E00 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02061E04 */ /* nop */
|
|
/* 02061E08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02061E0C */ cpu->r[31] = cpu->r[4];
|
|
/* 02061E10 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061E10 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02061E10 */ if (_t6) goto L_02061E14; else goto L_02061E28;
|
|
L_02061E14: ; // 0x2061e14
|
|
/* 02061E14 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02061E14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02061E18 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02061E18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02061E1C */ cpu->ctr = cpu->r[0];
|
|
/* 02061E20 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061E24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02061E28: ; // 0x2061e28
|
|
/* 02061E28 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061E2C */ cpu->r[4] = cpu->r[31];
|
|
/* 02061E30 */ Gambit_fn_02061D60(cpu);
|
|
/* 02061E34 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061E38 */ /* nop */
|
|
/* 02061E3C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02061E40 */ cpu->r[3] = cpu->r[30];
|
|
/* 02061E44 */ Gambit_fn_02061BE0(cpu);
|
|
/* 02061E48 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02061E48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02061E4C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02061E4C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02061E50 */ cpu->lr = cpu->r[0];
|
|
/* 02061E54 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02061E54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02061E58 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02061E5C */ return;
|
|
}
|
|
|
|
// fn_02061E60 @ 0x2061e60
|
|
void Gambit_fn_02061E60(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_02061E60: ; // 0x2061e60
|
|
/* 02061E60 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02061E60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02061E60 */ cpu->r[1] = _t0;
|
|
/* 02061E64 */ /* nop */
|
|
/* 02061E68 */ cpu->r[0] = cpu->lr;
|
|
/* 02061E6C */ cpu->r[23] = cpu->r[3];
|
|
/* 02061E70 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 02061E70 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02061E74 */ Gambit_fn_02062AF0(cpu);
|
|
/* 02061E78 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02061E7C */ _t2 = cpu->r[7] + 0xFFFFC8C4u;
|
|
/* 02061E7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02061E7C */ cpu->r[7] = _t2;
|
|
/* 02061E80 */ cpu->r[31] = 0x101E0000u;
|
|
/* 02061E84 */ cpu->r[22] = cpu->r[3];
|
|
/* 02061E88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061E8C */ cpu->r[31] = cpu->r[31] + 0xFFFFC854u;
|
|
/* 02061E90 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061E90 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02061E90 */ if (_t4) goto L_02061E94; else goto L_02061EDC;
|
|
L_02061E94: ; // 0x2061e94
|
|
/* 02061E94 */ cpu->r[12] = 0x00000001u;
|
|
/* 02061E98 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02061E9C */ cpu->r[4] = 0x10000000u;
|
|
/* 02061EA0 */ _t5 = cpu->r[7] + 0x00000000u;
|
|
/* 02061EA0 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02061EA4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061EA8 */ cpu->r[5] = 0x00000002u;
|
|
/* 02061EAC */ cpu->r[4] = cpu->r[4] + 0x00006D6Cu;
|
|
/* 02061EB0 */ cpu->r[7] = 0x00000000u;
|
|
/* 02061EB4 */ Gambit_fn_028A6750(cpu);
|
|
/* 02061EB8 */ cpu->r[6] = 0x02060000u;
|
|
/* 02061EBC */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 02061EC0 */ cpu->r[4] = 0x00000002u;
|
|
/* 02061EC4 */ cpu->r[6] = cpu->r[6] + 0x00002000u;
|
|
/* 02061EC8 */ cpu->r[5] = 0x00000008u;
|
|
/* 02061ECC */ Gambit_fn_02C82E00(cpu);
|
|
/* 02061ED0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02061ED4 */ cpu->r[3] = cpu->r[3] + 0x00002FA8u;
|
|
/* 02061ED8 */ Gambit_fn_02C83090(cpu);
|
|
L_02061EDC: ; // 0x2061edc
|
|
/* 02061EDC */ _t6 = cpu->r[31] + 0x00000054u;
|
|
/* 02061EDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02061EE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061EE4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061EE4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02061EE4 */ if (_t8) goto L_02061EE8; else goto L_02061FDC;
|
|
L_02061EE8: ; // 0x2061ee8
|
|
/* 02061EE8 */ cpu->r[26] = 0x101D0000u;
|
|
/* 02061EEC */ cpu->r[30] = 0x00000000u;
|
|
/* 02061EF0 */ cpu->r[19] = 0x101D0000u;
|
|
/* 02061EF4 */ cpu->r[20] = 0x101D0000u;
|
|
/* 02061EF8 */ cpu->r[21] = 0x00000001u;
|
|
/* 02061EFC */ cpu->r[27] = cpu->r[30];
|
|
/* 02061F00 */ cpu->r[25] = 0x101D0000u;
|
|
/* 02061F04 */ cpu->r[26] = cpu->r[26] + 0xFFFFEB14u;
|
|
/* 02061F08 */ cpu->r[24] = 0x101D0000u;
|
|
L_02061F0C: ; // 0x2061f0c
|
|
/* 02061F0C */ _t9 = cpu->r[24] + 0xFFFFEB24u;
|
|
/* 02061F0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02061F10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061F14 */ cpu->r[29] = cpu->r[30];
|
|
/* 02061F18 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061F18 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02061F18 */ if (_t11) goto L_02061F1C; else goto L_02061F34;
|
|
L_02061F1C: ; // 0x2061f1c
|
|
/* 02061F1C */ cpu->r[4] = 0x101C0000u;
|
|
/* 02061F20 */ cpu->r[3] = cpu->r[25] + 0x00003945u;
|
|
/* 02061F24 */ cpu->r[5] = 0x0000000Eu;
|
|
/* 02061F28 */ cpu->r[4] = cpu->r[4] + 0x00002F98u;
|
|
/* 02061F2C */ _t12 = cpu->r[24] + 0xFFFFEB24u;
|
|
/* 02061F2C */ rbrew_write32(cpu->mem, _t12, cpu->r[21]);
|
|
/* 02061F30 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02061F34: ; // 0x2061f34
|
|
/* 02061F34 */ _t13 = cpu->r[20] + 0xFFFFEB20u;
|
|
/* 02061F34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02061F38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02061F3C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061F3C */ _t15 = _t14 & 0x00000001u;
|
|
/* 02061F3C */ if (_t15) goto L_02061F40; else goto L_02061F48;
|
|
L_02061F40: ; // 0x2061f40
|
|
/* 02061F40 */ _t16 = cpu->r[19] + 0xFFFFEB1Cu;
|
|
/* 02061F40 */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 02061F44 */ _t17 = cpu->r[20] + 0xFFFFEB20u;
|
|
/* 02061F44 */ rbrew_write32(cpu->mem, _t17, cpu->r[21]);
|
|
L_02061F48: ; // 0x2061f48
|
|
/* 02061F48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000002u);
|
|
/* 02061F4C */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061F4C */ _t19 = _t18 & 0x00000001u;
|
|
/* 02061F4C */ if (_t19) goto L_02061F74; else goto L_02061F50;
|
|
L_02061F50: ; // 0x2061f50
|
|
/* 02061F50 */ cpu->r[4] = cpu->r[30];
|
|
/* 02061F54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02061F58 */ cpu->r[5] = 0x00000000u;
|
|
/* 02061F5C */ Gambit_fn_028A6634(cpu);
|
|
/* 02061F60 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02061F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 02061F68 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02061F68 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02061F68 */ if (_t21) goto L_02061FDC; else goto L_02061F6C;
|
|
L_02061F6C: ; // 0x2061f6c
|
|
/* 02061F6C */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061F6C */ _t23 = _t22 & 0x00000001u;
|
|
/* 02061F6C */ if (_t23) goto L_02061F0C; else goto L_02061F70;
|
|
L_02061F70: ; // 0x2061f70
|
|
/* 02061F70 */ goto L_02061FDC;
|
|
L_02061F74: ; // 0x2061f74
|
|
/* 02061F74 */ _t24 = cpu->r[19] + 0xFFFFEB1Cu;
|
|
/* 02061F74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02061F78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061F7C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061F7C */ _t26 = _t25 & 0x00000001u;
|
|
/* 02061F7C */ if (_t26) goto L_02061F80; else goto L_02061FB8;
|
|
L_02061F80: ; // 0x2061f80
|
|
/* 02061F80 */ Gambit_fn_0282A450(cpu);
|
|
/* 02061F84 */ cpu->r[28] = cpu->r[3];
|
|
/* 02061F88 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02061F8C */ _t27 = cpu->r[19] + 0xFFFFEB1Cu;
|
|
/* 02061F8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02061F90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02061F94 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02061F94 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02061F94 */ if (_t29) goto L_02061F98; else goto L_02061FAC;
|
|
L_02061F98: ; // 0x2061f98
|
|
/* 02061F98 */ cpu->r[5] = 0x00000002u;
|
|
/* 02061F9C */ cpu->r[4] = cpu->r[25] + 0x00003945u;
|
|
/* 02061FA0 */ cpu->r[3] = cpu->r[26];
|
|
/* 02061FA4 */ Gambit_fn_0282A374(cpu);
|
|
/* 02061FA8 */ _t30 = cpu->r[19] + 0xFFFFEB1Cu;
|
|
/* 02061FA8 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
L_02061FAC: ; // 0x2061fac
|
|
/* 02061FAC */ cpu->r[3] = cpu->r[28];
|
|
/* 02061FB0 */ Gambit_fn_02837030(cpu);
|
|
/* 02061FB4 */ _t31 = cpu->r[19] + 0xFFFFEB1Cu;
|
|
/* 02061FB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
L_02061FB8: ; // 0x2061fb8
|
|
/* 02061FB8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02061FBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02061FC0 */ _t32 = cpu->r[12] + cpu->r[0];
|
|
/* 02061FC0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02061FC4 */ cpu->r[4] = cpu->r[30];
|
|
/* 02061FC8 */ Gambit_fn_028A6634(cpu);
|
|
/* 02061FCC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02061FD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 02061FD4 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02061FD4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02061FD4 */ if (_t34) goto L_02061FDC; else goto L_02061FD8;
|
|
L_02061FD8: ; // 0x2061fd8
|
|
/* 02061FD8 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02061FD8 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02061FD8 */ if (_t36) goto L_02061F0C; else goto L_02061FDC;
|
|
L_02061FDC: ; // 0x2061fdc
|
|
/* 02061FDC */ cpu->r[3] = cpu->r[23];
|
|
/* 02061FE0 */ cpu->r[4] = cpu->r[31];
|
|
/* 02061FE4 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02061FE8 */ cpu->r[3] = cpu->r[22] + 0x00000001u;
|
|
/* 02061FEC */ /* nop */
|
|
/* 02061FF0 */ _t37 = cpu->r[1] + 0x00000044u;
|
|
/* 02061FF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02061FF4 */ cpu->lr = cpu->r[0];
|
|
/* 02061FF8 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02061FFC */ return;
|
|
}
|
|
|
|
// fn_0206200C @ 0x206200c
|
|
void Gambit_fn_0206200C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0206200C: ; // 0x206200c
|
|
/* 0206200C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0206200C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206200C */ cpu->r[1] = _t0;
|
|
/* 02062010 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062010 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02062010 */ if (_t2) goto L_02062014; else goto L_02062024;
|
|
L_02062014: ; // 0x2062014
|
|
/* 02062014 */ cpu->r[3] = 0x00000008u;
|
|
/* 02062018 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206201C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02062020 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062020 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02062020 */ if (_t4) goto L_02062034; else goto L_02062024;
|
|
L_02062024: ; // 0x2062024
|
|
/* 02062024 */ cpu->r[12] = 0x00000000u;
|
|
/* 02062028 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0206202C */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 0206202C */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02062030 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02062030 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_02062034: ; // 0x2062034
|
|
/* 02062034 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02062034 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02062038 */ cpu->lr = cpu->r[0];
|
|
/* 0206203C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02062040 */ return;
|
|
}
|
|
|
|
// fn_02062044 @ 0x2062044
|
|
void Gambit_fn_02062044(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02062044: ; // 0x2062044
|
|
/* 02062044 */ cpu->r[0] = cpu->lr;
|
|
/* 02062048 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02062048 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02062048 */ cpu->r[1] = _t0;
|
|
/* 0206204C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206204C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02062050 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02062050 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02062054 */ cpu->r[30] = cpu->r[3];
|
|
/* 02062054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02062058 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206205C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206205C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02062060 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062060 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02062060 */ if (_t5) goto L_02062080; else goto L_02062064;
|
|
L_02062064: ; // 0x2062064
|
|
/* 02062064 */ cpu->r[3] = cpu->r[30];
|
|
/* 02062068 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206206C */ Gambit_fn_028A65C0(cpu);
|
|
/* 02062070 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02062070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062074 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062074 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02062074 */ if (_t7) goto L_02062080; else goto L_02062078;
|
|
L_02062078: ; // 0x2062078
|
|
/* 02062078 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206207C */ Gambit_fn_02801BB0(cpu);
|
|
L_02062080: ; // 0x2062080
|
|
/* 02062080 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02062080 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02062084 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02062084 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02062088 */ cpu->lr = cpu->r[0];
|
|
/* 0206208C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206208C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02062090 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02062094 */ return;
|
|
}
|
|
|
|
// fn_02062048 @ 0x2062048
|
|
void Gambit_fn_02062048(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02062048: ; // 0x2062048
|
|
/* 02062048 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02062048 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02062048 */ cpu->r[1] = _t0;
|
|
/* 0206204C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206204C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02062050 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02062050 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02062054 */ cpu->r[30] = cpu->r[3];
|
|
/* 02062054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02062058 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206205C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206205C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02062060 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062060 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02062060 */ if (_t5) goto L_02062080; else goto L_02062064;
|
|
L_02062064: ; // 0x2062064
|
|
/* 02062064 */ cpu->r[3] = cpu->r[30];
|
|
/* 02062068 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206206C */ Gambit_fn_028A65C0(cpu);
|
|
/* 02062070 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02062070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062074 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062074 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02062074 */ if (_t7) goto L_02062080; else goto L_02062078;
|
|
L_02062078: ; // 0x2062078
|
|
/* 02062078 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206207C */ Gambit_fn_02801BB0(cpu);
|
|
L_02062080: ; // 0x2062080
|
|
/* 02062080 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02062080 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02062084 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02062084 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02062088 */ cpu->lr = cpu->r[0];
|
|
/* 0206208C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206208C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02062090 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02062094 */ return;
|
|
}
|
|
|
|
// fn_02062098 @ 0x2062098
|
|
void Gambit_fn_02062098(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02062098: ; // 0x2062098
|
|
/* 02062098 */ cpu->r[0] = cpu->lr;
|
|
/* 0206209C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206209C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206209C */ cpu->r[1] = _t0;
|
|
/* 020620A0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020620A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020620A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 020620A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 020620A8 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 020620A8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 020620AC */ cpu->r[31] = cpu->r[3];
|
|
/* 020620B0 */ /* nop */
|
|
/* 020620B4 */ Gambit_fn_027FC35C(cpu);
|
|
/* 020620B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020620BC */ Gambit_fn_020620D4(cpu);
|
|
/* 020620C0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 020620C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 020620C4 */ cpu->lr = cpu->r[0];
|
|
/* 020620C8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020620C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020620CC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020620D0 */ return;
|
|
}
|
|
|
|
// fn_0206209C @ 0x206209c
|
|
void Gambit_fn_0206209C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206209C: ; // 0x206209c
|
|
/* 0206209C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206209C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206209C */ cpu->r[1] = _t0;
|
|
/* 020620A0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020620A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020620A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 020620A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 020620A8 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 020620A8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 020620AC */ cpu->r[31] = cpu->r[3];
|
|
/* 020620B0 */ /* nop */
|
|
/* 020620B4 */ Gambit_fn_027FC35C(cpu);
|
|
/* 020620B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020620BC */ Gambit_fn_020620D4(cpu);
|
|
/* 020620C0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 020620C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 020620C4 */ cpu->lr = cpu->r[0];
|
|
/* 020620C8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020620C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020620CC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020620D0 */ return;
|
|
}
|
|
|
|
// fn_020620D4 @ 0x20620d4
|
|
void Gambit_fn_020620D4(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_020620D4: ; // 0x20620d4
|
|
/* 020620D4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 020620D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 020620D8 */ /* nop */
|
|
/* 020620DC */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 020620DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 020620E0 */ cpu->r[8] = cpu->r[0];
|
|
/* 020620E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 020620E8 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 020620E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 020620EC */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020620EC */ _t4 = _t3 & 0x00000001u;
|
|
/* 020620EC */ if (_t4) goto L_020620F0; else goto L_02062108;
|
|
L_020620F0: ; // 0x20620f0
|
|
/* 020620F0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020620F4 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 020620F8 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 020620F8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 020620FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02062100 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062100 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02062100 */ if (_t7) goto L_02062104; else goto L_02062114;
|
|
L_02062104: ; // 0x2062104
|
|
/* 02062104 */ return;
|
|
L_02062108: ; // 0x2062108
|
|
/* 02062108 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02062108 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206210C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02062110 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062110 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02062110 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062110 */ goto L_02062114;
|
|
L_02062114: ; // 0x2062114
|
|
/* 02062114 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02062118 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02062118 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206211C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206211C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206211C */ if (_t13) goto L_02062120; else goto L_02062128;
|
|
L_02062120: ; // 0x2062120
|
|
/* 02062120 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02062124 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02062128: ; // 0x2062128
|
|
/* 02062128 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02062128 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206212C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206212C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02062130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062134 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02062134 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02062138 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206213C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206213C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206213C */ if (_t18) goto L_02062154; else goto L_02062140;
|
|
L_02062140: ; // 0x2062140
|
|
/* 02062140 */ /* nop */
|
|
/* 02062144 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02062144 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02062148 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206214C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 02062150 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02062150 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02062154: ; // 0x2062154
|
|
/* 02062154 */ cpu->ctr = cpu->r[11];
|
|
/* 02062158 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206215C @ 0x206215c
|
|
void Gambit_fn_0206215C(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_0206215C: ; // 0x206215c
|
|
/* 0206215C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206215C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02062160 */ /* nop */
|
|
/* 02062164 */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 02062164 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02062168 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206216C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 02062170 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02062170 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02062174 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02062174 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02062174 */ if (_t4) goto L_02062178; else goto L_02062190;
|
|
L_02062178: ; // 0x2062178
|
|
/* 02062178 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206217C */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 02062180 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02062180 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02062184 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02062188 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062188 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02062188 */ if (_t7) goto L_0206218C; else goto L_0206219C;
|
|
L_0206218C: ; // 0x206218c
|
|
/* 0206218C */ return;
|
|
L_02062190: ; // 0x2062190
|
|
/* 02062190 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02062190 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02062194 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02062198 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062198 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02062198 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062198 */ goto L_0206219C;
|
|
L_0206219C: ; // 0x206219c
|
|
/* 0206219C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 020621A0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 020621A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020621A4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020621A4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 020621A4 */ if (_t13) goto L_020621A8; else goto L_020621B0;
|
|
L_020621A8: ; // 0x20621a8
|
|
/* 020621A8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020621AC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_020621B0: ; // 0x20621b0
|
|
/* 020621B0 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 020621B0 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 020621B4 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 020621B4 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 020621B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020621BC */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 020621BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 020621C0 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 020621C4 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020621C4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 020621C4 */ if (_t18) goto L_020621DC; else goto L_020621C8;
|
|
L_020621C8: ; // 0x20621c8
|
|
/* 020621C8 */ /* nop */
|
|
/* 020621CC */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 020621CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 020621D0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020621D4 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 020621D8 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 020621D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_020621DC: ; // 0x20621dc
|
|
/* 020621DC */ cpu->ctr = cpu->r[11];
|
|
/* 020621E0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_020621E4 @ 0x20621e4
|
|
void Gambit_fn_020621E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_020621E4: ; // 0x20621e4
|
|
/* 020621E4 */ cpu->r[0] = cpu->lr;
|
|
/* 020621E8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020621E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020621E8 */ cpu->r[1] = _t0;
|
|
/* 020621EC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020621EC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020621F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 020621F4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 020621F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 020621F8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 020621F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 020621FC */ cpu->r[12] = 0x00000000u;
|
|
/* 02062200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062204 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02062204 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02062208 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062208 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02062208 */ if (_t6) goto L_02062230; else goto L_0206220C;
|
|
L_0206220C: ; // 0x206220c
|
|
/* 0206220C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206220C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02062210 */ /* nop */
|
|
/* 02062214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02062218 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062218 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02062218 */ if (_t9) goto L_0206221C; else goto L_02062230;
|
|
L_0206221C: ; // 0x206221c
|
|
/* 0206221C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206221C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02062220 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02062220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02062224 */ cpu->ctr = cpu->r[0];
|
|
/* 02062228 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206222C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02062230: ; // 0x2062230
|
|
/* 02062230 */ cpu->r[3] = cpu->r[31];
|
|
/* 02062234 */ Gambit_fn_0206215C(cpu);
|
|
/* 02062238 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206223C */ Gambit_fn_027FC37C(cpu);
|
|
/* 02062240 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02062240 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02062244 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02062244 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02062248 */ cpu->lr = cpu->r[0];
|
|
/* 0206224C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02062250 */ return;
|
|
}
|
|
|
|
// fn_020621E8 @ 0x20621e8
|
|
void Gambit_fn_020621E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_020621E8: ; // 0x20621e8
|
|
/* 020621E8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020621E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020621E8 */ cpu->r[1] = _t0;
|
|
/* 020621EC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020621EC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020621F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 020621F4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 020621F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 020621F8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 020621F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 020621FC */ cpu->r[12] = 0x00000000u;
|
|
/* 02062200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062204 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02062204 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02062208 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062208 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02062208 */ if (_t6) goto L_02062230; else goto L_0206220C;
|
|
L_0206220C: ; // 0x206220c
|
|
/* 0206220C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206220C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02062210 */ /* nop */
|
|
/* 02062214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02062218 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062218 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02062218 */ if (_t9) goto L_0206221C; else goto L_02062230;
|
|
L_0206221C: ; // 0x206221c
|
|
/* 0206221C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206221C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02062220 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02062220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02062224 */ cpu->ctr = cpu->r[0];
|
|
/* 02062228 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206222C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02062230: ; // 0x2062230
|
|
/* 02062230 */ cpu->r[3] = cpu->r[31];
|
|
/* 02062234 */ Gambit_fn_0206215C(cpu);
|
|
/* 02062238 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206223C */ Gambit_fn_027FC37C(cpu);
|
|
/* 02062240 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02062240 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02062244 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02062244 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02062248 */ cpu->lr = cpu->r[0];
|
|
/* 0206224C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02062250 */ return;
|
|
}
|
|
|
|
// fn_02062254 @ 0x2062254
|
|
void Gambit_fn_02062254(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_02062254: ; // 0x2062254
|
|
/* 02062254 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02062254 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02062258 */ /* nop */
|
|
/* 0206225C */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0206225C */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02062260 */ cpu->r[7] = cpu->r[0];
|
|
/* 02062264 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02062268 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 02062268 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206226C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206226C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206226C */ if (_t4) goto L_02062270; else goto L_02062288;
|
|
L_02062270: ; // 0x2062270
|
|
/* 02062270 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02062274 */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 02062278 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02062278 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206227C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02062280 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062280 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02062280 */ if (_t7) goto L_02062284; else goto L_02062294;
|
|
L_02062284: ; // 0x2062284
|
|
/* 02062284 */ return;
|
|
L_02062288: ; // 0x2062288
|
|
/* 02062288 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02062288 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206228C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02062290 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062290 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02062290 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062290 */ goto L_02062294;
|
|
L_02062294: ; // 0x2062294
|
|
/* 02062294 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02062298 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02062298 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206229C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206229C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206229C */ if (_t13) goto L_020622A0; else goto L_020622A8;
|
|
L_020622A0: ; // 0x20622a0
|
|
/* 020622A0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020622A4 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_020622A8: ; // 0x20622a8
|
|
/* 020622A8 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 020622A8 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 020622AC */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 020622AC */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 020622B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 020622B4 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 020622B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 020622B8 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 020622BC */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020622BC */ _t18 = _t17 & 0x00000001u;
|
|
/* 020622BC */ if (_t18) goto L_020622D4; else goto L_020622C0;
|
|
L_020622C0: ; // 0x20622c0
|
|
/* 020622C0 */ /* nop */
|
|
/* 020622C4 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 020622C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 020622C8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020622CC */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 020622D0 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 020622D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_020622D4: ; // 0x20622d4
|
|
/* 020622D4 */ cpu->ctr = cpu->r[11];
|
|
/* 020622D8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_020622DC @ 0x20622dc
|
|
void Gambit_fn_020622DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_020622DC: ; // 0x20622dc
|
|
/* 020622DC */ cpu->r[0] = cpu->lr;
|
|
/* 020622E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020622E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020622E0 */ cpu->r[1] = _t0;
|
|
/* 020622E4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 020622E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 020622E8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020622E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 020622EC */ cpu->r[30] = cpu->r[3];
|
|
/* 020622F0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020622F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020622F4 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 020622F4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 020622F8 */ /* nop */
|
|
/* 020622FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02062300 */ cpu->r[31] = cpu->r[4];
|
|
/* 02062304 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062304 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02062304 */ if (_t6) goto L_02062308; else goto L_0206231C;
|
|
L_02062308: ; // 0x2062308
|
|
/* 02062308 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02062308 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206230C */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206230C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02062310 */ cpu->ctr = cpu->r[0];
|
|
/* 02062314 */ cpu->r[3] = cpu->r[30];
|
|
/* 02062318 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206231C: ; // 0x206231c
|
|
/* 0206231C */ cpu->r[3] = cpu->r[30];
|
|
/* 02062320 */ cpu->r[4] = cpu->r[31];
|
|
/* 02062324 */ Gambit_fn_02062254(cpu);
|
|
/* 02062328 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206232C */ /* nop */
|
|
/* 02062330 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02062334 */ cpu->r[3] = cpu->r[30];
|
|
/* 02062338 */ Gambit_fn_020620D4(cpu);
|
|
/* 0206233C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206233C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02062340 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02062340 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02062344 */ cpu->lr = cpu->r[0];
|
|
/* 02062348 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02062348 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206234C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02062350 */ return;
|
|
}
|
|
|
|
// fn_020622E0 @ 0x20622e0
|
|
void Gambit_fn_020622E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_020622E0: ; // 0x20622e0
|
|
/* 020622E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020622E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020622E0 */ cpu->r[1] = _t0;
|
|
/* 020622E4 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 020622E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 020622E8 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020622E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 020622EC */ cpu->r[30] = cpu->r[3];
|
|
/* 020622F0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020622F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020622F4 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 020622F4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 020622F8 */ /* nop */
|
|
/* 020622FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02062300 */ cpu->r[31] = cpu->r[4];
|
|
/* 02062304 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062304 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02062304 */ if (_t6) goto L_02062308; else goto L_0206231C;
|
|
L_02062308: ; // 0x2062308
|
|
/* 02062308 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02062308 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206230C */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206230C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02062310 */ cpu->ctr = cpu->r[0];
|
|
/* 02062314 */ cpu->r[3] = cpu->r[30];
|
|
/* 02062318 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206231C: ; // 0x206231c
|
|
/* 0206231C */ cpu->r[3] = cpu->r[30];
|
|
/* 02062320 */ cpu->r[4] = cpu->r[31];
|
|
/* 02062324 */ Gambit_fn_02062254(cpu);
|
|
/* 02062328 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206232C */ /* nop */
|
|
/* 02062330 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02062334 */ cpu->r[3] = cpu->r[30];
|
|
/* 02062338 */ Gambit_fn_020620D4(cpu);
|
|
/* 0206233C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206233C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02062340 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02062340 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02062344 */ cpu->lr = cpu->r[0];
|
|
/* 02062348 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02062348 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206234C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02062350 */ return;
|
|
}
|
|
|
|
// fn_02062354 @ 0x2062354
|
|
void Gambit_fn_02062354(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;
|
|
|
|
L_02062354: ; // 0x2062354
|
|
/* 02062354 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02062354 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02062354 */ cpu->r[1] = _t0;
|
|
/* 02062358 */ /* nop */
|
|
/* 0206235C */ cpu->r[0] = cpu->lr;
|
|
/* 02062360 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 02062360 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02062364 */ cpu->r[29] = cpu->r[3];
|
|
/* 02062368 */ Gambit_fn_02062AF0(cpu);
|
|
/* 0206236C */ cpu->r[11] = 0x101E0000u;
|
|
/* 02062370 */ _t2 = cpu->r[11] + 0xFFFFCA88u;
|
|
/* 02062370 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02062374 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02062378 */ cpu->r[27] = cpu->r[3];
|
|
/* 0206237C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206237C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206237C */ if (_t4) goto L_02062398; else goto L_02062380;
|
|
L_02062380: ; // 0x2062380
|
|
/* 02062380 */ cpu->r[26] = 0x101E0000u;
|
|
/* 02062384 */ cpu->r[26] = cpu->r[26] + 0xFFFFC8C8u;
|
|
/* 02062388 */ _t5 = cpu->r[26] + 0x00000054u;
|
|
/* 02062388 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206238C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062390 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062390 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02062390 */ if (_t7) goto L_02062394; else goto L_020624EC;
|
|
L_02062394: ; // 0x2062394
|
|
/* 02062394 */ goto L_020623F8;
|
|
L_02062398: ; // 0x2062398
|
|
/* 02062398 */ cpu->r[4] = 0x10000000u;
|
|
/* 0206239C */ cpu->r[0] = 0x00000001u;
|
|
/* 020623A0 */ cpu->r[26] = 0x101E0000u;
|
|
/* 020623A4 */ cpu->r[4] = cpu->r[4] + 0x00006DA4u;
|
|
/* 020623A8 */ cpu->r[10] = 0x101E0000u;
|
|
/* 020623AC */ cpu->r[26] = cpu->r[26] + 0xFFFFC8C8u;
|
|
/* 020623B0 */ cpu->r[7] = 0x00000000u;
|
|
/* 020623B4 */ cpu->r[5] = 0x00000002u;
|
|
/* 020623B8 */ cpu->r[6] = cpu->r[26] + 0x00000060u;
|
|
/* 020623BC */ cpu->r[3] = cpu->r[26];
|
|
/* 020623C0 */ _t8 = cpu->r[10] + 0xFFFFCA88u;
|
|
/* 020623C0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 020623C4 */ Gambit_fn_028A6750(cpu);
|
|
/* 020623C8 */ cpu->r[6] = 0x02060000u;
|
|
/* 020623CC */ cpu->r[3] = cpu->r[26] + 0x00000060u;
|
|
/* 020623D0 */ cpu->r[4] = 0x00000002u;
|
|
/* 020623D4 */ cpu->r[6] = cpu->r[6] + 0x0000297Cu;
|
|
/* 020623D8 */ cpu->r[5] = 0x00000008u;
|
|
/* 020623DC */ Gambit_fn_02C82E00(cpu);
|
|
/* 020623E0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 020623E4 */ cpu->r[3] = cpu->r[3] + 0x00003008u;
|
|
/* 020623E8 */ Gambit_fn_02C83090(cpu);
|
|
/* 020623EC */ _t9 = cpu->r[26] + 0x00000054u;
|
|
/* 020623EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 020623F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020623F4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020623F4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 020623F4 */ if (_t11) goto L_020623F8; else goto L_020624EC;
|
|
L_020623F8: ; // 0x20623f8
|
|
/* 020623F8 */ cpu->r[24] = 0x101D0000u;
|
|
/* 020623FC */ cpu->r[31] = 0x00000000u;
|
|
/* 02062400 */ cpu->r[19] = 0x101D0000u;
|
|
/* 02062404 */ cpu->r[20] = 0x101D0000u;
|
|
/* 02062408 */ cpu->r[21] = 0x00000001u;
|
|
/* 0206240C */ cpu->r[25] = cpu->r[31];
|
|
/* 02062410 */ cpu->r[23] = 0x101D0000u;
|
|
/* 02062414 */ cpu->r[24] = cpu->r[24] + 0xFFFFEB34u;
|
|
/* 02062418 */ cpu->r[22] = 0x101D0000u;
|
|
L_0206241C: ; // 0x206241c
|
|
/* 0206241C */ _t12 = cpu->r[22] + 0xFFFFEB44u;
|
|
/* 0206241C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02062420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062424 */ cpu->r[30] = cpu->r[31];
|
|
/* 02062428 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062428 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02062428 */ if (_t14) goto L_0206242C; else goto L_02062444;
|
|
L_0206242C: ; // 0x206242c
|
|
/* 0206242C */ cpu->r[4] = 0x101C0000u;
|
|
/* 02062430 */ cpu->r[3] = cpu->r[23] + 0x00003953u;
|
|
/* 02062434 */ cpu->r[5] = 0x0000000Du;
|
|
/* 02062438 */ cpu->r[4] = cpu->r[4] + 0x00002FC4u;
|
|
/* 0206243C */ _t15 = cpu->r[22] + 0xFFFFEB44u;
|
|
/* 0206243C */ rbrew_write32(cpu->mem, _t15, cpu->r[21]);
|
|
/* 02062440 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02062444: ; // 0x2062444
|
|
/* 02062444 */ _t16 = cpu->r[20] + 0xFFFFEB40u;
|
|
/* 02062444 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02062448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0206244C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206244C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206244C */ if (_t18) goto L_02062450; else goto L_02062458;
|
|
L_02062450: ; // 0x2062450
|
|
/* 02062450 */ _t19 = cpu->r[19] + 0xFFFFEB3Cu;
|
|
/* 02062450 */ rbrew_write32(cpu->mem, _t19, cpu->r[25]);
|
|
/* 02062454 */ _t20 = cpu->r[20] + 0xFFFFEB40u;
|
|
/* 02062454 */ rbrew_write32(cpu->mem, _t20, cpu->r[21]);
|
|
L_02062458: ; // 0x2062458
|
|
/* 02062458 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000002u);
|
|
/* 0206245C */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206245C */ _t22 = _t21 & 0x00000001u;
|
|
/* 0206245C */ if (_t22) goto L_02062484; else goto L_02062460;
|
|
L_02062460: ; // 0x2062460
|
|
/* 02062460 */ cpu->r[4] = cpu->r[30];
|
|
/* 02062464 */ cpu->r[3] = cpu->r[26];
|
|
/* 02062468 */ cpu->r[5] = 0x00000000u;
|
|
/* 0206246C */ Gambit_fn_028A6634(cpu);
|
|
/* 02062470 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02062474 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000002u);
|
|
/* 02062478 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02062478 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02062478 */ if (_t24) goto L_020624EC; else goto L_0206247C;
|
|
L_0206247C: ; // 0x206247c
|
|
/* 0206247C */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206247C */ _t26 = _t25 & 0x00000001u;
|
|
/* 0206247C */ if (_t26) goto L_0206241C; else goto L_02062480;
|
|
L_02062480: ; // 0x2062480
|
|
/* 02062480 */ goto L_020624EC;
|
|
L_02062484: ; // 0x2062484
|
|
/* 02062484 */ _t27 = cpu->r[19] + 0xFFFFEB3Cu;
|
|
/* 02062484 */ cpu->r[7] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02062488 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0206248C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206248C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0206248C */ if (_t29) goto L_02062490; else goto L_020624C8;
|
|
L_02062490: ; // 0x2062490
|
|
/* 02062490 */ Gambit_fn_0282A450(cpu);
|
|
/* 02062494 */ cpu->r[28] = cpu->r[3];
|
|
/* 02062498 */ Gambit_fn_02836FFC(cpu);
|
|
/* 0206249C */ _t30 = cpu->r[19] + 0xFFFFEB3Cu;
|
|
/* 0206249C */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 020624A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020624A4 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020624A4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 020624A4 */ if (_t32) goto L_020624A8; else goto L_020624BC;
|
|
L_020624A8: ; // 0x20624a8
|
|
/* 020624A8 */ cpu->r[5] = 0x00000002u;
|
|
/* 020624AC */ cpu->r[4] = cpu->r[23] + 0x00003953u;
|
|
/* 020624B0 */ cpu->r[3] = cpu->r[24];
|
|
/* 020624B4 */ Gambit_fn_0282A374(cpu);
|
|
/* 020624B8 */ _t33 = cpu->r[19] + 0xFFFFEB3Cu;
|
|
/* 020624B8 */ rbrew_write32(cpu->mem, _t33, cpu->r[24]);
|
|
L_020624BC: ; // 0x20624bc
|
|
/* 020624BC */ cpu->r[3] = cpu->r[28];
|
|
/* 020624C0 */ Gambit_fn_02837030(cpu);
|
|
/* 020624C4 */ _t34 = cpu->r[19] + 0xFFFFEB3Cu;
|
|
/* 020624C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t34);
|
|
L_020624C8: ; // 0x20624c8
|
|
/* 020624C8 */ cpu->r[4] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 020624CC */ cpu->r[3] = cpu->r[26];
|
|
/* 020624D0 */ _t35 = cpu->r[4] + cpu->r[7];
|
|
/* 020624D0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35);
|
|
/* 020624D4 */ cpu->r[4] = cpu->r[30];
|
|
/* 020624D8 */ Gambit_fn_028A6634(cpu);
|
|
/* 020624DC */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 020624E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000002u);
|
|
/* 020624E4 */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020624E4 */ _t37 = _t36 & 0x00000001u;
|
|
/* 020624E4 */ if (_t37) goto L_020624EC; else goto L_020624E8;
|
|
L_020624E8: ; // 0x20624e8
|
|
/* 020624E8 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020624E8 */ _t39 = _t38 & 0x00000001u;
|
|
/* 020624E8 */ if (_t39) goto L_0206241C; else goto L_020624EC;
|
|
L_020624EC: ; // 0x20624ec
|
|
/* 020624EC */ cpu->r[3] = cpu->r[29];
|
|
/* 020624F0 */ cpu->r[4] = cpu->r[26];
|
|
/* 020624F4 */ Gambit_fn_027B81E4(cpu);
|
|
/* 020624F8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 020624FC */ _t40 = cpu->r[12] + 0xFFFFCA8Cu;
|
|
/* 020624FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02062500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02062504 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02062508 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062508 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02062508 */ if (_t42) goto L_02062524; else goto L_0206250C;
|
|
L_0206250C: ; // 0x206250c
|
|
/* 0206250C */ cpu->r[26] = 0x101E0000u;
|
|
/* 02062510 */ cpu->r[26] = cpu->r[26] + 0xFFFFC938u;
|
|
/* 02062514 */ _t43 = cpu->r[26] + 0x00000054u;
|
|
/* 02062514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02062518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206251C */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206251C */ _t45 = _t44 & 0x00000001u;
|
|
/* 0206251C */ if (_t45) goto L_02062520; else goto L_02062678;
|
|
L_02062520: ; // 0x2062520
|
|
/* 02062520 */ goto L_02062584;
|
|
L_02062524: ; // 0x2062524
|
|
/* 02062524 */ cpu->r[4] = 0x10000000u;
|
|
/* 02062528 */ cpu->r[0] = 0x00000001u;
|
|
/* 0206252C */ cpu->r[26] = 0x101E0000u;
|
|
/* 02062530 */ cpu->r[4] = cpu->r[4] + 0x00006DBCu;
|
|
/* 02062534 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02062538 */ cpu->r[26] = cpu->r[26] + 0xFFFFC938u;
|
|
/* 0206253C */ cpu->r[7] = 0x00000000u;
|
|
/* 02062540 */ cpu->r[5] = 0x00000002u;
|
|
/* 02062544 */ cpu->r[6] = cpu->r[26] + 0x00000060u;
|
|
/* 02062548 */ cpu->r[3] = cpu->r[26];
|
|
/* 0206254C */ _t46 = cpu->r[12] + 0xFFFFCA8Cu;
|
|
/* 0206254C */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 02062550 */ Gambit_fn_028A6750(cpu);
|
|
/* 02062554 */ cpu->r[6] = 0x02060000u;
|
|
/* 02062558 */ cpu->r[3] = cpu->r[26] + 0x00000060u;
|
|
/* 0206255C */ cpu->r[4] = 0x00000002u;
|
|
/* 02062560 */ cpu->r[6] = cpu->r[6] + 0x0000297Cu;
|
|
/* 02062564 */ cpu->r[5] = 0x00000008u;
|
|
/* 02062568 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0206256C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02062570 */ cpu->r[3] = cpu->r[3] + 0x00003014u;
|
|
/* 02062574 */ Gambit_fn_02C83090(cpu);
|
|
/* 02062578 */ _t47 = cpu->r[26] + 0x00000054u;
|
|
/* 02062578 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0206257C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062580 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062580 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02062580 */ if (_t49) goto L_02062584; else goto L_02062678;
|
|
L_02062584: ; // 0x2062584
|
|
/* 02062584 */ cpu->r[24] = 0x101D0000u;
|
|
/* 02062588 */ cpu->r[31] = 0x00000000u;
|
|
/* 0206258C */ cpu->r[19] = 0x101D0000u;
|
|
/* 02062590 */ cpu->r[20] = 0x101D0000u;
|
|
/* 02062594 */ cpu->r[21] = 0x00000001u;
|
|
/* 02062598 */ cpu->r[25] = cpu->r[31];
|
|
/* 0206259C */ cpu->r[23] = 0x101D0000u;
|
|
/* 020625A0 */ cpu->r[24] = cpu->r[24] + 0xFFFFEB48u;
|
|
/* 020625A4 */ cpu->r[22] = 0x101D0000u;
|
|
L_020625A8: ; // 0x20625a8
|
|
/* 020625A8 */ _t50 = cpu->r[22] + 0xFFFFEB58u;
|
|
/* 020625A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 020625AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020625B0 */ cpu->r[30] = cpu->r[31];
|
|
/* 020625B4 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020625B4 */ _t52 = _t51 & 0x00000001u;
|
|
/* 020625B4 */ if (_t52) goto L_020625B8; else goto L_020625D0;
|
|
L_020625B8: ; // 0x20625b8
|
|
/* 020625B8 */ cpu->r[4] = 0x101C0000u;
|
|
/* 020625BC */ cpu->r[3] = cpu->r[23] + 0x00003960u;
|
|
/* 020625C0 */ cpu->r[5] = 0x0000000Eu;
|
|
/* 020625C4 */ cpu->r[4] = cpu->r[4] + 0x00002FB4u;
|
|
/* 020625C8 */ _t53 = cpu->r[22] + 0xFFFFEB58u;
|
|
/* 020625C8 */ rbrew_write32(cpu->mem, _t53, cpu->r[21]);
|
|
/* 020625CC */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_020625D0: ; // 0x20625d0
|
|
/* 020625D0 */ _t54 = cpu->r[20] + 0xFFFFEB54u;
|
|
/* 020625D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 020625D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020625D8 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020625D8 */ _t56 = _t55 & 0x00000001u;
|
|
/* 020625D8 */ if (_t56) goto L_020625DC; else goto L_020625E4;
|
|
L_020625DC: ; // 0x20625dc
|
|
/* 020625DC */ _t57 = cpu->r[19] + 0xFFFFEB50u;
|
|
/* 020625DC */ rbrew_write32(cpu->mem, _t57, cpu->r[25]);
|
|
/* 020625E0 */ _t58 = cpu->r[20] + 0xFFFFEB54u;
|
|
/* 020625E0 */ rbrew_write32(cpu->mem, _t58, cpu->r[21]);
|
|
L_020625E4: ; // 0x20625e4
|
|
/* 020625E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000002u);
|
|
/* 020625E8 */ _t59 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020625E8 */ _t60 = _t59 & 0x00000001u;
|
|
/* 020625E8 */ if (_t60) goto L_02062610; else goto L_020625EC;
|
|
L_020625EC: ; // 0x20625ec
|
|
/* 020625EC */ cpu->r[4] = cpu->r[30];
|
|
/* 020625F0 */ cpu->r[3] = cpu->r[26];
|
|
/* 020625F4 */ cpu->r[5] = 0x00000000u;
|
|
/* 020625F8 */ Gambit_fn_028A6634(cpu);
|
|
/* 020625FC */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02062600 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000002u);
|
|
/* 02062604 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02062604 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02062604 */ if (_t62) goto L_02062678; else goto L_02062608;
|
|
L_02062608: ; // 0x2062608
|
|
/* 02062608 */ _t63 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02062608 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02062608 */ if (_t64) goto L_020625A8; else goto L_0206260C;
|
|
L_0206260C: ; // 0x206260c
|
|
/* 0206260C */ goto L_02062678;
|
|
L_02062610: ; // 0x2062610
|
|
/* 02062610 */ _t65 = cpu->r[19] + 0xFFFFEB50u;
|
|
/* 02062610 */ cpu->r[8] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02062614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02062618 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062618 */ _t67 = _t66 & 0x00000001u;
|
|
/* 02062618 */ if (_t67) goto L_0206261C; else goto L_02062654;
|
|
L_0206261C: ; // 0x206261c
|
|
/* 0206261C */ Gambit_fn_0282A450(cpu);
|
|
/* 02062620 */ cpu->r[28] = cpu->r[3];
|
|
/* 02062624 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02062628 */ _t68 = cpu->r[19] + 0xFFFFEB50u;
|
|
/* 02062628 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0206262C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062630 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062630 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02062630 */ if (_t70) goto L_02062634; else goto L_02062648;
|
|
L_02062634: ; // 0x2062634
|
|
/* 02062634 */ cpu->r[5] = 0x00000002u;
|
|
/* 02062638 */ cpu->r[4] = cpu->r[23] + 0x00003960u;
|
|
/* 0206263C */ cpu->r[3] = cpu->r[24];
|
|
/* 02062640 */ Gambit_fn_0282A374(cpu);
|
|
/* 02062644 */ _t71 = cpu->r[19] + 0xFFFFEB50u;
|
|
/* 02062644 */ rbrew_write32(cpu->mem, _t71, cpu->r[24]);
|
|
L_02062648: ; // 0x2062648
|
|
/* 02062648 */ cpu->r[3] = cpu->r[28];
|
|
/* 0206264C */ Gambit_fn_02837030(cpu);
|
|
/* 02062650 */ _t72 = cpu->r[19] + 0xFFFFEB50u;
|
|
/* 02062650 */ cpu->r[8] = rbrew_read32(cpu->mem, _t72);
|
|
L_02062654: ; // 0x2062654
|
|
/* 02062654 */ cpu->r[10] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02062658 */ cpu->r[3] = cpu->r[26];
|
|
/* 0206265C */ _t73 = cpu->r[10] + cpu->r[8];
|
|
/* 0206265C */ cpu->r[5] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02062660 */ cpu->r[4] = cpu->r[30];
|
|
/* 02062664 */ Gambit_fn_028A6634(cpu);
|
|
/* 02062668 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0206266C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000002u);
|
|
/* 02062670 */ _t74 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02062670 */ _t75 = _t74 & 0x00000001u;
|
|
/* 02062670 */ if (_t75) goto L_02062678; else goto L_02062674;
|
|
L_02062674: ; // 0x2062674
|
|
/* 02062674 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02062674 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02062674 */ if (_t77) goto L_020625A8; else goto L_02062678;
|
|
L_02062678: ; // 0x2062678
|
|
/* 02062678 */ cpu->r[3] = cpu->r[29];
|
|
/* 0206267C */ cpu->r[4] = cpu->r[26];
|
|
/* 02062680 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02062684 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02062688 */ cpu->r[31] = 0x101E0000u;
|
|
/* 0206268C */ _t78 = cpu->r[7] + 0xFFFFCA90u;
|
|
/* 0206268C */ cpu->r[11] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0206268C */ cpu->r[7] = _t78;
|
|
/* 02062690 */ cpu->r[31] = cpu->r[31] + 0xFFFFC9A8u;
|
|
/* 02062694 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02062698 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 0206269C */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206269C */ _t80 = _t79 & 0x00000001u;
|
|
/* 0206269C */ if (_t80) goto L_020626A0; else goto L_020626E8;
|
|
L_020626A0: ; // 0x20626a0
|
|
/* 020626A0 */ cpu->r[12] = 0x00000001u;
|
|
/* 020626A4 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 020626A8 */ cpu->r[4] = 0x10000000u;
|
|
/* 020626AC */ _t81 = cpu->r[7] + 0x00000000u;
|
|
/* 020626AC */ rbrew_write32(cpu->mem, _t81, cpu->r[12]);
|
|
/* 020626B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020626B4 */ cpu->r[5] = 0x00000002u;
|
|
/* 020626B8 */ cpu->r[4] = cpu->r[4] + 0x00006DC8u;
|
|
/* 020626BC */ cpu->r[7] = 0x00000000u;
|
|
/* 020626C0 */ Gambit_fn_028A6750(cpu);
|
|
/* 020626C4 */ cpu->r[6] = 0x02060000u;
|
|
/* 020626C8 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 020626CC */ cpu->r[4] = 0x00000002u;
|
|
/* 020626D0 */ cpu->r[6] = cpu->r[6] + 0x0000297Cu;
|
|
/* 020626D4 */ cpu->r[5] = 0x00000008u;
|
|
/* 020626D8 */ Gambit_fn_02C82E00(cpu);
|
|
/* 020626DC */ cpu->r[3] = 0x101C0000u;
|
|
/* 020626E0 */ cpu->r[3] = cpu->r[3] + 0x00003020u;
|
|
/* 020626E4 */ Gambit_fn_02C83090(cpu);
|
|
L_020626E8: ; // 0x20626e8
|
|
/* 020626E8 */ _t82 = cpu->r[31] + 0x00000054u;
|
|
/* 020626E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82);
|
|
/* 020626EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020626F0 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020626F0 */ _t84 = _t83 & 0x00000001u;
|
|
/* 020626F0 */ if (_t84) goto L_020626F4; else goto L_020627E8;
|
|
L_020626F4: ; // 0x20626f4
|
|
/* 020626F4 */ cpu->r[25] = 0x101D0000u;
|
|
/* 020626F8 */ cpu->r[30] = 0x00000000u;
|
|
/* 020626FC */ cpu->r[20] = 0x101D0000u;
|
|
/* 02062700 */ cpu->r[21] = 0x101D0000u;
|
|
/* 02062704 */ cpu->r[22] = 0x00000001u;
|
|
/* 02062708 */ cpu->r[26] = cpu->r[30];
|
|
/* 0206270C */ cpu->r[24] = 0x101D0000u;
|
|
/* 02062710 */ cpu->r[25] = cpu->r[25] + 0xFFFFEB5Cu;
|
|
/* 02062714 */ cpu->r[23] = 0x101D0000u;
|
|
L_02062718: ; // 0x2062718
|
|
/* 02062718 */ _t85 = cpu->r[23] + 0xFFFFEB6Cu;
|
|
/* 02062718 */ cpu->r[4] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0206271C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02062720 */ cpu->r[28] = cpu->r[30];
|
|
/* 02062724 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062724 */ _t87 = _t86 & 0x00000001u;
|
|
/* 02062724 */ if (_t87) goto L_02062728; else goto L_02062740;
|
|
L_02062728: ; // 0x2062728
|
|
/* 02062728 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0206272C */ cpu->r[3] = cpu->r[24] + 0x0000396Eu;
|
|
/* 02062730 */ cpu->r[5] = 0x00000023u;
|
|
/* 02062734 */ cpu->r[4] = cpu->r[4] + 0x00002FD4u;
|
|
/* 02062738 */ _t88 = cpu->r[23] + 0xFFFFEB6Cu;
|
|
/* 02062738 */ rbrew_write32(cpu->mem, _t88, cpu->r[22]);
|
|
/* 0206273C */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02062740: ; // 0x2062740
|
|
/* 02062740 */ _t89 = cpu->r[21] + 0xFFFFEB68u;
|
|
/* 02062740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02062744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062748 */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062748 */ _t91 = _t90 & 0x00000001u;
|
|
/* 02062748 */ if (_t91) goto L_0206274C; else goto L_02062754;
|
|
L_0206274C: ; // 0x206274c
|
|
/* 0206274C */ _t92 = cpu->r[20] + 0xFFFFEB64u;
|
|
/* 0206274C */ rbrew_write32(cpu->mem, _t92, cpu->r[26]);
|
|
/* 02062750 */ _t93 = cpu->r[21] + 0xFFFFEB68u;
|
|
/* 02062750 */ rbrew_write32(cpu->mem, _t93, cpu->r[22]);
|
|
L_02062754: ; // 0x2062754
|
|
/* 02062754 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000002u);
|
|
/* 02062758 */ _t94 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02062758 */ _t95 = _t94 & 0x00000001u;
|
|
/* 02062758 */ if (_t95) goto L_02062780; else goto L_0206275C;
|
|
L_0206275C: ; // 0x206275c
|
|
/* 0206275C */ cpu->r[4] = cpu->r[28];
|
|
/* 02062760 */ cpu->r[3] = cpu->r[31];
|
|
/* 02062764 */ cpu->r[5] = 0x00000000u;
|
|
/* 02062768 */ Gambit_fn_028A6634(cpu);
|
|
/* 0206276C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02062770 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 02062774 */ _t96 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02062774 */ _t97 = _t96 & 0x00000001u;
|
|
/* 02062774 */ if (_t97) goto L_020627E8; else goto L_02062778;
|
|
L_02062778: ; // 0x2062778
|
|
/* 02062778 */ _t98 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02062778 */ _t99 = _t98 & 0x00000001u;
|
|
/* 02062778 */ if (_t99) goto L_02062718; else goto L_0206277C;
|
|
L_0206277C: ; // 0x206277c
|
|
/* 0206277C */ goto L_020627E8;
|
|
L_02062780: ; // 0x2062780
|
|
/* 02062780 */ _t100 = cpu->r[20] + 0xFFFFEB64u;
|
|
/* 02062780 */ cpu->r[11] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02062784 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02062788 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062788 */ _t102 = _t101 & 0x00000001u;
|
|
/* 02062788 */ if (_t102) goto L_0206278C; else goto L_020627C4;
|
|
L_0206278C: ; // 0x206278c
|
|
/* 0206278C */ Gambit_fn_0282A450(cpu);
|
|
/* 02062790 */ cpu->r[19] = cpu->r[3];
|
|
/* 02062794 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02062798 */ _t103 = cpu->r[20] + 0xFFFFEB64u;
|
|
/* 02062798 */ cpu->r[0] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0206279C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020627A0 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020627A0 */ _t105 = _t104 & 0x00000001u;
|
|
/* 020627A0 */ if (_t105) goto L_020627A4; else goto L_020627B8;
|
|
L_020627A4: ; // 0x20627a4
|
|
/* 020627A4 */ cpu->r[5] = 0x00000002u;
|
|
/* 020627A8 */ cpu->r[4] = cpu->r[24] + 0x0000396Eu;
|
|
/* 020627AC */ cpu->r[3] = cpu->r[25];
|
|
/* 020627B0 */ Gambit_fn_0282A374(cpu);
|
|
/* 020627B4 */ _t106 = cpu->r[20] + 0xFFFFEB64u;
|
|
/* 020627B4 */ rbrew_write32(cpu->mem, _t106, cpu->r[25]);
|
|
L_020627B8: ; // 0x20627b8
|
|
/* 020627B8 */ cpu->r[3] = cpu->r[19];
|
|
/* 020627BC */ Gambit_fn_02837030(cpu);
|
|
/* 020627C0 */ _t107 = cpu->r[20] + 0xFFFFEB64u;
|
|
/* 020627C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t107);
|
|
L_020627C4: ; // 0x20627c4
|
|
/* 020627C4 */ cpu->r[7] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 020627C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020627CC */ _t108 = cpu->r[7] + cpu->r[11];
|
|
/* 020627CC */ cpu->r[5] = rbrew_read32(cpu->mem, _t108);
|
|
/* 020627D0 */ cpu->r[4] = cpu->r[28];
|
|
/* 020627D4 */ Gambit_fn_028A6634(cpu);
|
|
/* 020627D8 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 020627DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 020627E0 */ _t109 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020627E0 */ _t110 = _t109 & 0x00000001u;
|
|
/* 020627E0 */ if (_t110) goto L_020627E8; else goto L_020627E4;
|
|
L_020627E4: ; // 0x20627e4
|
|
/* 020627E4 */ _t111 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020627E4 */ _t112 = _t111 & 0x00000001u;
|
|
/* 020627E4 */ if (_t112) goto L_02062718; else goto L_020627E8;
|
|
L_020627E8: ; // 0x20627e8
|
|
/* 020627E8 */ cpu->r[3] = cpu->r[29];
|
|
/* 020627EC */ cpu->r[4] = cpu->r[31];
|
|
/* 020627F0 */ Gambit_fn_027B81E4(cpu);
|
|
/* 020627F4 */ cpu->r[5] = 0x101E0000u;
|
|
/* 020627F8 */ cpu->r[31] = 0x101E0000u;
|
|
/* 020627FC */ _t113 = cpu->r[5] + 0xFFFFCA94u;
|
|
/* 020627FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t113);
|
|
/* 020627FC */ cpu->r[5] = _t113;
|
|
/* 02062800 */ cpu->r[31] = cpu->r[31] + 0xFFFFCA18u;
|
|
/* 02062804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02062808 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 0206280C */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206280C */ _t115 = _t114 & 0x00000001u;
|
|
/* 0206280C */ if (_t115) goto L_02062810; else goto L_02062858;
|
|
L_02062810: ; // 0x2062810
|
|
/* 02062810 */ cpu->r[4] = 0x10000000u;
|
|
/* 02062814 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02062818 */ cpu->r[0] = 0x00000001u;
|
|
/* 0206281C */ cpu->r[4] = cpu->r[4] + 0x00006DB0u;
|
|
/* 02062820 */ cpu->r[7] = 0x00000000u;
|
|
/* 02062824 */ _t116 = cpu->r[5] + 0x00000000u;
|
|
/* 02062824 */ rbrew_write32(cpu->mem, _t116, cpu->r[0]);
|
|
/* 02062828 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206282C */ cpu->r[5] = 0x00000002u;
|
|
/* 02062830 */ Gambit_fn_028A6750(cpu);
|
|
/* 02062834 */ cpu->r[6] = 0x02060000u;
|
|
/* 02062838 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 0206283C */ cpu->r[4] = 0x00000002u;
|
|
/* 02062840 */ cpu->r[6] = cpu->r[6] + 0x0000297Cu;
|
|
/* 02062844 */ cpu->r[5] = 0x00000008u;
|
|
/* 02062848 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0206284C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02062850 */ cpu->r[3] = cpu->r[3] + 0x0000302Cu;
|
|
/* 02062854 */ Gambit_fn_02C83090(cpu);
|
|
L_02062858: ; // 0x2062858
|
|
/* 02062858 */ _t117 = cpu->r[31] + 0x00000054u;
|
|
/* 02062858 */ cpu->r[10] = rbrew_read32(cpu->mem, _t117);
|
|
/* 0206285C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02062860 */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062860 */ _t119 = _t118 & 0x00000001u;
|
|
/* 02062860 */ if (_t119) goto L_02062864; else goto L_02062958;
|
|
L_02062864: ; // 0x2062864
|
|
/* 02062864 */ cpu->r[25] = 0x101D0000u;
|
|
/* 02062868 */ cpu->r[28] = 0x00000000u;
|
|
/* 0206286C */ cpu->r[20] = 0x101D0000u;
|
|
/* 02062870 */ cpu->r[21] = 0x101D0000u;
|
|
/* 02062874 */ cpu->r[22] = 0x00000001u;
|
|
/* 02062878 */ cpu->r[26] = cpu->r[28];
|
|
/* 0206287C */ cpu->r[24] = 0x101D0000u;
|
|
/* 02062880 */ cpu->r[25] = cpu->r[25] + 0xFFFFEB70u;
|
|
/* 02062884 */ cpu->r[23] = 0x101D0000u;
|
|
L_02062888: ; // 0x2062888
|
|
/* 02062888 */ _t120 = cpu->r[23] + 0xFFFFEB80u;
|
|
/* 02062888 */ cpu->r[0] = rbrew_read32(cpu->mem, _t120);
|
|
/* 0206288C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062890 */ cpu->r[30] = cpu->r[28];
|
|
/* 02062894 */ _t121 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062894 */ _t122 = _t121 & 0x00000001u;
|
|
/* 02062894 */ if (_t122) goto L_02062898; else goto L_020628B0;
|
|
L_02062898: ; // 0x2062898
|
|
/* 02062898 */ cpu->r[4] = 0x101C0000u;
|
|
/* 0206289C */ cpu->r[3] = cpu->r[24] + 0x00003991u;
|
|
/* 020628A0 */ cpu->r[5] = 0x0000000Du;
|
|
/* 020628A4 */ cpu->r[4] = cpu->r[4] + 0x00002FF8u;
|
|
/* 020628A8 */ _t123 = cpu->r[23] + 0xFFFFEB80u;
|
|
/* 020628A8 */ rbrew_write32(cpu->mem, _t123, cpu->r[22]);
|
|
/* 020628AC */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_020628B0: ; // 0x20628b0
|
|
/* 020628B0 */ _t124 = cpu->r[21] + 0xFFFFEB7Cu;
|
|
/* 020628B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t124);
|
|
/* 020628B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020628B8 */ _t125 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020628B8 */ _t126 = _t125 & 0x00000001u;
|
|
/* 020628B8 */ if (_t126) goto L_020628BC; else goto L_020628C4;
|
|
L_020628BC: ; // 0x20628bc
|
|
/* 020628BC */ _t127 = cpu->r[20] + 0xFFFFEB78u;
|
|
/* 020628BC */ rbrew_write32(cpu->mem, _t127, cpu->r[26]);
|
|
/* 020628C0 */ _t128 = cpu->r[21] + 0xFFFFEB7Cu;
|
|
/* 020628C0 */ rbrew_write32(cpu->mem, _t128, cpu->r[22]);
|
|
L_020628C4: ; // 0x20628c4
|
|
/* 020628C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000002u);
|
|
/* 020628C8 */ _t129 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020628C8 */ _t130 = _t129 & 0x00000001u;
|
|
/* 020628C8 */ if (_t130) goto L_020628F0; else goto L_020628CC;
|
|
L_020628CC: ; // 0x20628cc
|
|
/* 020628CC */ cpu->r[4] = cpu->r[28];
|
|
/* 020628D0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020628D4 */ cpu->r[5] = 0x00000000u;
|
|
/* 020628D8 */ Gambit_fn_028A6634(cpu);
|
|
/* 020628DC */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 020628E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000002u);
|
|
/* 020628E4 */ _t131 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020628E4 */ _t132 = _t131 & 0x00000001u;
|
|
/* 020628E4 */ if (_t132) goto L_02062958; else goto L_020628E8;
|
|
L_020628E8: ; // 0x20628e8
|
|
/* 020628E8 */ _t133 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020628E8 */ _t134 = _t133 & 0x00000001u;
|
|
/* 020628E8 */ if (_t134) goto L_02062888; else goto L_020628EC;
|
|
L_020628EC: ; // 0x20628ec
|
|
/* 020628EC */ goto L_02062958;
|
|
L_020628F0: ; // 0x20628f0
|
|
/* 020628F0 */ _t135 = cpu->r[20] + 0xFFFFEB78u;
|
|
/* 020628F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t135);
|
|
/* 020628F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020628F8 */ _t136 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020628F8 */ _t137 = _t136 & 0x00000001u;
|
|
/* 020628F8 */ if (_t137) goto L_020628FC; else goto L_02062934;
|
|
L_020628FC: ; // 0x20628fc
|
|
/* 020628FC */ Gambit_fn_0282A450(cpu);
|
|
/* 02062900 */ cpu->r[19] = cpu->r[3];
|
|
/* 02062904 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02062908 */ _t138 = cpu->r[20] + 0xFFFFEB78u;
|
|
/* 02062908 */ cpu->r[6] = rbrew_read32(cpu->mem, _t138);
|
|
/* 0206290C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02062910 */ _t139 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062910 */ _t140 = _t139 & 0x00000001u;
|
|
/* 02062910 */ if (_t140) goto L_02062914; else goto L_02062928;
|
|
L_02062914: ; // 0x2062914
|
|
/* 02062914 */ cpu->r[5] = 0x00000002u;
|
|
/* 02062918 */ cpu->r[4] = cpu->r[24] + 0x00003991u;
|
|
/* 0206291C */ cpu->r[3] = cpu->r[25];
|
|
/* 02062920 */ Gambit_fn_0282A374(cpu);
|
|
/* 02062924 */ _t141 = cpu->r[20] + 0xFFFFEB78u;
|
|
/* 02062924 */ rbrew_write32(cpu->mem, _t141, cpu->r[25]);
|
|
L_02062928: ; // 0x2062928
|
|
/* 02062928 */ cpu->r[3] = cpu->r[19];
|
|
/* 0206292C */ Gambit_fn_02837030(cpu);
|
|
/* 02062930 */ _t142 = cpu->r[20] + 0xFFFFEB78u;
|
|
/* 02062930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t142);
|
|
L_02062934: ; // 0x2062934
|
|
/* 02062934 */ cpu->r[9] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02062938 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206293C */ _t143 = cpu->r[9] + cpu->r[0];
|
|
/* 0206293C */ cpu->r[5] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02062940 */ cpu->r[4] = cpu->r[28];
|
|
/* 02062944 */ Gambit_fn_028A6634(cpu);
|
|
/* 02062948 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 0206294C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000002u);
|
|
/* 02062950 */ _t144 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02062950 */ _t145 = _t144 & 0x00000001u;
|
|
/* 02062950 */ if (_t145) goto L_02062958; else goto L_02062954;
|
|
L_02062954: ; // 0x2062954
|
|
/* 02062954 */ _t146 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02062954 */ _t147 = _t146 & 0x00000001u;
|
|
/* 02062954 */ if (_t147) goto L_02062888; else goto L_02062958;
|
|
L_02062958: ; // 0x2062958
|
|
/* 02062958 */ cpu->r[3] = cpu->r[29];
|
|
/* 0206295C */ cpu->r[4] = cpu->r[31];
|
|
/* 02062960 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02062964 */ cpu->r[3] = cpu->r[27] + 0x00000001u;
|
|
/* 02062968 */ /* nop */
|
|
/* 0206296C */ _t148 = cpu->r[1] + 0x00000044u;
|
|
/* 0206296C */ cpu->r[0] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02062970 */ cpu->lr = cpu->r[0];
|
|
/* 02062974 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02062978 */ return;
|
|
}
|
|
|
|
// fn_02062988 @ 0x2062988
|
|
void Gambit_fn_02062988(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02062988: ; // 0x2062988
|
|
/* 02062988 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02062988 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02062988 */ cpu->r[1] = _t0;
|
|
/* 0206298C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206298C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0206298C */ if (_t2) goto L_02062990; else goto L_020629A0;
|
|
L_02062990: ; // 0x2062990
|
|
/* 02062990 */ cpu->r[3] = 0x00000008u;
|
|
/* 02062994 */ Gambit_fn_02801A78(cpu);
|
|
/* 02062998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206299C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206299C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206299C */ if (_t4) goto L_020629B0; else goto L_020629A0;
|
|
L_020629A0: ; // 0x20629a0
|
|
/* 020629A0 */ cpu->r[12] = 0x00000000u;
|
|
/* 020629A4 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 020629A8 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 020629A8 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 020629AC */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 020629AC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_020629B0: ; // 0x20629b0
|
|
/* 020629B0 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020629B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 020629B4 */ cpu->lr = cpu->r[0];
|
|
/* 020629B8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 020629BC */ return;
|
|
}
|
|
|
|
// fn_020629C0 @ 0x20629c0
|
|
void Gambit_fn_020629C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_020629C0: ; // 0x20629c0
|
|
/* 020629C0 */ cpu->r[0] = cpu->lr;
|
|
/* 020629C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020629C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020629C4 */ cpu->r[1] = _t0;
|
|
/* 020629C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020629C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020629CC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 020629CC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020629D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 020629D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 020629D4 */ cpu->r[31] = cpu->r[4];
|
|
/* 020629D8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020629D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020629DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020629DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 020629DC */ if (_t5) goto L_020629FC; else goto L_020629E0;
|
|
L_020629E0: ; // 0x20629e0
|
|
/* 020629E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 020629E4 */ cpu->r[4] = 0x00000000u;
|
|
/* 020629E8 */ Gambit_fn_028A65C0(cpu);
|
|
/* 020629EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020629EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020629F0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020629F0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 020629F0 */ if (_t7) goto L_020629FC; else goto L_020629F4;
|
|
L_020629F4: ; // 0x20629f4
|
|
/* 020629F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 020629F8 */ Gambit_fn_02801BB0(cpu);
|
|
L_020629FC: ; // 0x20629fc
|
|
/* 020629FC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 020629FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02062A00 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02062A00 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02062A04 */ cpu->lr = cpu->r[0];
|
|
/* 02062A08 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02062A08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02062A0C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02062A10 */ return;
|
|
}
|
|
|
|
// fn_020629C4 @ 0x20629c4
|
|
void Gambit_fn_020629C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_020629C4: ; // 0x20629c4
|
|
/* 020629C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020629C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020629C4 */ cpu->r[1] = _t0;
|
|
/* 020629C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020629C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020629CC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 020629CC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020629D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 020629D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 020629D4 */ cpu->r[31] = cpu->r[4];
|
|
/* 020629D8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020629D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020629DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020629DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 020629DC */ if (_t5) goto L_020629FC; else goto L_020629E0;
|
|
L_020629E0: ; // 0x20629e0
|
|
/* 020629E0 */ cpu->r[3] = cpu->r[30];
|
|
/* 020629E4 */ cpu->r[4] = 0x00000000u;
|
|
/* 020629E8 */ Gambit_fn_028A65C0(cpu);
|
|
/* 020629EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020629EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020629F0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020629F0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 020629F0 */ if (_t7) goto L_020629FC; else goto L_020629F4;
|
|
L_020629F4: ; // 0x20629f4
|
|
/* 020629F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 020629F8 */ Gambit_fn_02801BB0(cpu);
|
|
L_020629FC: ; // 0x20629fc
|
|
/* 020629FC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 020629FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02062A00 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02062A00 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02062A04 */ cpu->lr = cpu->r[0];
|
|
/* 02062A08 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02062A08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02062A0C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02062A10 */ return;
|
|
}
|
|
|
|
// fn_02062A14 @ 0x2062a14
|
|
void Gambit_fn_02062A14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02062A14: ; // 0x2062a14
|
|
/* 02062A14 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02062A18 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02062A18 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02062A18 */ cpu->r[1] = _t0;
|
|
/* 02062A1C */ cpu->r[10] = 0x101E0000u;
|
|
/* 02062A20 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02062A24 */ _t1 = cpu->r[10] + 0xFFFFCA98u;
|
|
/* 02062A24 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02062A24 */ cpu->r[10] = _t1;
|
|
/* 02062A28 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02062A2C */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02062A2C */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02062A30 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02062A34 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02062A38 */ _t3 = cpu->r[7] + 0xFFFFCAA8u;
|
|
/* 02062A38 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02062A38 */ cpu->r[7] = _t3;
|
|
/* 02062A3C */ _t4 = cpu->r[8] + 0xFFFFCAA0u;
|
|
/* 02062A3C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02062A3C */ cpu->r[8] = _t4;
|
|
/* 02062A40 */ cpu->r[0] = 0x00000002u;
|
|
/* 02062A44 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02062A44 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02062A48 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02062A4C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02062A4C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02062A50 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02062A54 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02062A54 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02062A58 */ _t8 = cpu->r[8] + 0xFFFFCAB8u;
|
|
/* 02062A58 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02062A58 */ cpu->r[8] = _t8;
|
|
/* 02062A5C */ _t9 = cpu->r[12] + 0xFFFFCAB0u;
|
|
/* 02062A5C */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02062A5C */ cpu->r[12] = _t9;
|
|
/* 02062A60 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02062A60 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02062A64 */ cpu->r[0] = 0x00000004u;
|
|
/* 02062A68 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02062A68 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02062A6C */ cpu->r[11] = 0x101E0000u;
|
|
/* 02062A70 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02062A70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02062A74 */ _t13 = cpu->r[11] + 0xFFFFCAC0u;
|
|
/* 02062A74 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02062A78 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02062A7C */ return;
|
|
}
|
|
|
|
// fn_02062A18 @ 0x2062a18
|
|
void Gambit_fn_02062A18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02062A18: ; // 0x2062a18
|
|
/* 02062A18 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02062A18 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02062A18 */ cpu->r[1] = _t0;
|
|
/* 02062A1C */ cpu->r[10] = 0x101E0000u;
|
|
/* 02062A20 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02062A24 */ _t1 = cpu->r[10] + 0xFFFFCA98u;
|
|
/* 02062A24 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02062A24 */ cpu->r[10] = _t1;
|
|
/* 02062A28 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02062A2C */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02062A2C */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02062A30 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02062A34 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02062A38 */ _t3 = cpu->r[7] + 0xFFFFCAA8u;
|
|
/* 02062A38 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02062A38 */ cpu->r[7] = _t3;
|
|
/* 02062A3C */ _t4 = cpu->r[8] + 0xFFFFCAA0u;
|
|
/* 02062A3C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02062A3C */ cpu->r[8] = _t4;
|
|
/* 02062A40 */ cpu->r[0] = 0x00000002u;
|
|
/* 02062A44 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02062A44 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02062A48 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02062A4C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02062A4C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02062A50 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02062A54 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02062A54 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02062A58 */ _t8 = cpu->r[8] + 0xFFFFCAB8u;
|
|
/* 02062A58 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02062A58 */ cpu->r[8] = _t8;
|
|
/* 02062A5C */ _t9 = cpu->r[12] + 0xFFFFCAB0u;
|
|
/* 02062A5C */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02062A5C */ cpu->r[12] = _t9;
|
|
/* 02062A60 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02062A60 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02062A64 */ cpu->r[0] = 0x00000004u;
|
|
/* 02062A68 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02062A68 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02062A6C */ cpu->r[11] = 0x101E0000u;
|
|
/* 02062A70 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02062A70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02062A74 */ _t13 = cpu->r[11] + 0xFFFFCAC0u;
|
|
/* 02062A74 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02062A78 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02062A7C */ return;
|
|
}
|
|
|
|
// fn_02062A80 @ 0x2062a80
|
|
void Gambit_fn_02062A80(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_02062A80: ; // 0x2062a80
|
|
/* 02062A80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02062A84 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062A84 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02062A84 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062A84 */ goto L_02062A88;
|
|
L_02062A88: ; // 0x2062a88
|
|
/* 02062A88 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02062A88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062A8C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062A8C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02062A8C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062A8C */ goto L_02062A90;
|
|
L_02062A90: ; // 0x2062a90
|
|
/* 02062A90 */ 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_02062A94 @ 0x2062a94
|
|
void Gambit_fn_02062A94(CPUState* cpu) {
|
|
L_02062A94: ; // 0x2062a94
|
|
/* 02062A94 */ return;
|
|
}
|
|
|
|
// fn_02062A98 @ 0x2062a98
|
|
void Gambit_fn_02062A98(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_02062A98: ; // 0x2062a98
|
|
/* 02062A98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02062A9C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062A9C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02062A9C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062A9C */ goto L_02062AA0;
|
|
L_02062AA0: ; // 0x2062aa0
|
|
/* 02062AA0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02062AA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062AA4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062AA4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02062AA4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062AA4 */ goto L_02062AA8;
|
|
L_02062AA8: ; // 0x2062aa8
|
|
/* 02062AA8 */ 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_02062AAC @ 0x2062aac
|
|
void Gambit_fn_02062AAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02062AAC: ; // 0x2062aac
|
|
/* 02062AAC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02062AAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02062AB0 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02062AB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02062AB4 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02062AB8 */ cpu->r[11] = 0x10110000u;
|
|
/* 02062ABC */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02062ABC */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02062AC0 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02062AC0 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02062AC4 */ return;
|
|
}
|
|
|
|
// fn_02062AC8 @ 0x2062ac8
|
|
void Gambit_fn_02062AC8(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_02062AC8: ; // 0x2062ac8
|
|
/* 02062AC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02062ACC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062ACC */ _t1 = _t0 & 0x00000001u;
|
|
/* 02062ACC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062ACC */ goto L_02062AD0;
|
|
L_02062AD0: ; // 0x2062ad0
|
|
/* 02062AD0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02062AD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062AD4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062AD4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02062AD4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062AD4 */ goto L_02062AD8;
|
|
L_02062AD8: ; // 0x2062ad8
|
|
/* 02062AD8 */ 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_02062ADC @ 0x2062adc
|
|
void Gambit_fn_02062ADC(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_02062ADC: ; // 0x2062adc
|
|
/* 02062ADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02062AE0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062AE0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02062AE0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062AE0 */ goto L_02062AE4;
|
|
L_02062AE4: ; // 0x2062ae4
|
|
/* 02062AE4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02062AE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062AE8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062AE8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02062AE8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062AE8 */ goto L_02062AEC;
|
|
L_02062AEC: ; // 0x2062aec
|
|
/* 02062AEC */ 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_02062AF0 @ 0x2062af0
|
|
void Gambit_fn_02062AF0(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;
|
|
|
|
L_02062AF0: ; // 0x2062af0
|
|
/* 02062AF0 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02062AF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02062AF0 */ cpu->r[1] = _t0;
|
|
/* 02062AF4 */ /* nop */
|
|
/* 02062AF8 */ cpu->r[0] = cpu->lr;
|
|
/* 02062AFC */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 02062AFC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02062B00 */ cpu->r[28] = cpu->r[3];
|
|
/* 02062B04 */ cpu->r[26] = 0x10000000u;
|
|
/* 02062B08 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02062B0C */ cpu->r[27] = 0x10000000u;
|
|
/* 02062B10 */ _t2 = cpu->r[12] + 0xFFFFCCB4u;
|
|
/* 02062B10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02062B14 */ cpu->r[25] = 0x00000000u;
|
|
/* 02062B18 */ cpu->r[26] = cpu->r[26] + 0x00006E80u;
|
|
/* 02062B1C */ cpu->r[27] = cpu->r[27] + 0x00006E68u;
|
|
/* 02062B20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02062B24 */ cpu->r[29] = cpu->r[4];
|
|
/* 02062B28 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062B28 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02062B28 */ if (_t4) goto L_02062B54; else goto L_02062B2C;
|
|
L_02062B2C: ; // 0x2062b2c
|
|
/* 02062B2C */ cpu->r[4] = 0x101E0000u;
|
|
/* 02062B30 */ cpu->r[3] = cpu->r[28];
|
|
/* 02062B34 */ cpu->r[4] = cpu->r[4] + 0xFFFFCAC4u;
|
|
/* 02062B38 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02062B3C */ cpu->r[11] = 0x101E0000u;
|
|
/* 02062B40 */ _t5 = cpu->r[11] + 0xFFFFCCB8u;
|
|
/* 02062B40 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02062B44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02062B48 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02062B4C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062B4C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02062B4C */ if (_t7) goto L_02062B50; else goto L_02062C68;
|
|
L_02062B50: ; // 0x2062b50
|
|
/* 02062B50 */ goto L_02062C98;
|
|
L_02062B54: ; // 0x2062b54
|
|
/* 02062B54 */ cpu->r[6] = 0x101E0000u;
|
|
/* 02062B58 */ cpu->r[0] = 0x00000001u;
|
|
/* 02062B5C */ cpu->r[31] = 0x10110000u;
|
|
/* 02062B60 */ cpu->r[7] = 0x10000000u;
|
|
/* 02062B64 */ _t8 = cpu->r[6] + 0xFFFFCCB4u;
|
|
/* 02062B64 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02062B68 */ cpu->r[23] = 0x101E0000u;
|
|
/* 02062B6C */ cpu->r[7] = cpu->r[7] + 0x00006E38u;
|
|
/* 02062B70 */ _t9 = cpu->r[31] + 0x00007399u;
|
|
/* 02062B70 */ cpu->r[31] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02062B74 */ cpu->r[23] = cpu->r[23] + 0xFFFFCAC4u;
|
|
/* 02062B78 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02062B78 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
/* 02062B7C */ cpu->r[10] = 0x00000040u;
|
|
/* 02062B80 */ _t11 = cpu->r[23] + 0x00000004u;
|
|
/* 02062B80 */ rbrew_write32(cpu->mem, _t11, cpu->r[27]);
|
|
/* 02062B84 */ cpu->r[24] = cpu->r[23] + 0x0000000Cu;
|
|
/* 02062B88 */ _t12 = cpu->r[23] + 0x00000008u;
|
|
/* 02062B88 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02062B8C */ cpu->r[8] = 0x10000000u;
|
|
/* 02062B90 */ _t13 = cpu->r[23] + 0x0000004Bu;
|
|
/* 02062B90 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[31]);
|
|
/* 02062B94 */ cpu->r[8] = cpu->r[8] + 0x00006EA0u;
|
|
/* 02062B98 */ _t14 = cpu->r[23] + 0x00000000u;
|
|
/* 02062B98 */ rbrew_write32(cpu->mem, _t14, cpu->r[24]);
|
|
/* 02062B9C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02062BA0 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02062BA0 */ rbrew_write32(cpu->mem, _t15, cpu->r[8]);
|
|
/* 02062BA4 */ Gambit_fn_02062F40(cpu);
|
|
/* 02062BA8 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02062BA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02062BAC */ _t17 = cpu->r[12] + 0x00000000u;
|
|
/* 02062BAC */ cpu->r[7] = rbrew_read8(cpu->mem, _t17);
|
|
/* 02062BB0 */ cpu->r[30] = 0x00000000u;
|
|
/* 02062BB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 02062BB8 */ cpu->r[5] = 0x00080000u;
|
|
/* 02062BBC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062BBC */ _t19 = _t18 & 0x00000001u;
|
|
/* 02062BBC */ if (_t19) goto L_02062BE4; else goto L_02062BC0;
|
|
L_02062BC0: ; // 0x2062bc0
|
|
/* 02062BC0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02062BC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02062BC8 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02062BCC */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02062BCC */ _t21 = _t20 & 0x00000001u;
|
|
/* 02062BCC */ if (_t21) goto L_02062BE0; else goto L_02062BD0;
|
|
L_02062BD0: ; // 0x2062bd0
|
|
/* 02062BD0 */ _t22 = cpu->r[12] + 0x00000000u;
|
|
/* 02062BD0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t22);
|
|
/* 02062BD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02062BD8 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062BD8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02062BD8 */ if (_t24) goto L_02062BDC; else goto L_02062BC0;
|
|
L_02062BDC: ; // 0x2062bdc
|
|
/* 02062BDC */ goto L_02062BE4;
|
|
L_02062BE0: ; // 0x2062be0
|
|
/* 02062BE0 */ cpu->r[30] = 0x00000000u;
|
|
L_02062BE4: ; // 0x2062be4
|
|
/* 02062BE4 */ _t25 = cpu->r[23] + 0x00000008u;
|
|
/* 02062BE4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02062BE8 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02062BE8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02062BEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 02062BF0 */ _t27 = cpu->r[11] + 0x00000014u;
|
|
/* 02062BF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02062BF4 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02062BF4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02062BF4 */ if (_t29) goto L_02062BFC; else goto L_02062BF8;
|
|
L_02062BF8: ; // 0x2062bf8
|
|
/* 02062BF8 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02062BFC: ; // 0x2062bfc
|
|
/* 02062BFC */ cpu->ctr = cpu->r[12];
|
|
/* 02062C00 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02062C04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02062C08 */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 02062C08 */ cpu->r[4] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02062C0C */ cpu->r[3] = cpu->r[24];
|
|
/* 02062C10 */ cpu->r[5] = cpu->r[30];
|
|
/* 02062C14 */ cpu->r[6] = 0x00000000u;
|
|
/* 02062C18 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02062C1C */ _t31 = cpu->r[24] + cpu->r[30];
|
|
/* 02062C1C */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[31]);
|
|
/* 02062C20 */ cpu->r[0] = 0x00000001u;
|
|
/* 02062C24 */ _t32 = cpu->r[23] + 0x00000004u;
|
|
/* 02062C24 */ rbrew_write32(cpu->mem, _t32, cpu->r[26]);
|
|
/* 02062C28 */ cpu->r[5] = 0x00000020u;
|
|
/* 02062C2C */ _t33 = cpu->r[23] + 0x0000004Cu;
|
|
/* 02062C2C */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 02062C30 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02062C34 */ _t34 = cpu->r[23] + 0x00000050u;
|
|
/* 02062C34 */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[25]);
|
|
/* 02062C38 */ cpu->r[3] = cpu->r[3] + 0x00003164u;
|
|
/* 02062C3C */ _t35 = cpu->r[23] + 0x00000058u;
|
|
/* 02062C3C */ rbrew_write32(cpu->mem, _t35, cpu->r[5]);
|
|
/* 02062C40 */ _t36 = cpu->r[23] + 0x00000054u;
|
|
/* 02062C40 */ rbrew_write32(cpu->mem, _t36, cpu->r[25]);
|
|
/* 02062C44 */ Gambit_fn_02C83090(cpu);
|
|
/* 02062C48 */ cpu->r[4] = cpu->r[23];
|
|
/* 02062C4C */ cpu->r[3] = cpu->r[28];
|
|
/* 02062C50 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02062C54 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02062C58 */ _t37 = cpu->r[11] + 0xFFFFCCB8u;
|
|
/* 02062C58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02062C5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02062C60 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02062C64 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062C64 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02062C64 */ if (_t39) goto L_02062C98; else goto L_02062C68;
|
|
L_02062C68: ; // 0x2062c68
|
|
/* 02062C68 */ cpu->r[4] = 0x101E0000u;
|
|
/* 02062C6C */ cpu->r[3] = cpu->r[28];
|
|
/* 02062C70 */ cpu->r[4] = cpu->r[4] + 0xFFFFCB20u;
|
|
/* 02062C74 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02062C78 */ cpu->r[9] = 0x101E0000u;
|
|
/* 02062C7C */ cpu->r[31] = 0x101E0000u;
|
|
/* 02062C80 */ _t40 = cpu->r[9] + 0xFFFFCCBCu;
|
|
/* 02062C80 */ cpu->r[7] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02062C80 */ cpu->r[9] = _t40;
|
|
/* 02062C84 */ cpu->r[31] = cpu->r[31] + 0xFFFFCB7Cu;
|
|
/* 02062C88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02062C8C */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02062C90 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062C90 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02062C90 */ if (_t42) goto L_02062DC0; else goto L_02062C94;
|
|
L_02062C94: ; // 0x2062c94
|
|
/* 02062C94 */ goto L_02062E08;
|
|
L_02062C98: ; // 0x2062c98
|
|
/* 02062C98 */ cpu->r[5] = 0x101E0000u;
|
|
/* 02062C9C */ cpu->r[6] = 0x00000001u;
|
|
/* 02062CA0 */ cpu->r[31] = 0x10110000u;
|
|
/* 02062CA4 */ cpu->r[7] = 0x10000000u;
|
|
/* 02062CA8 */ _t43 = cpu->r[5] + 0xFFFFCCB8u;
|
|
/* 02062CA8 */ rbrew_write32(cpu->mem, _t43, cpu->r[6]);
|
|
/* 02062CAC */ cpu->r[24] = 0x101E0000u;
|
|
/* 02062CB0 */ cpu->r[7] = cpu->r[7] + 0x00006E38u;
|
|
/* 02062CB4 */ _t44 = cpu->r[31] + 0x00007399u;
|
|
/* 02062CB4 */ cpu->r[31] = rbrew_read8(cpu->mem, _t44);
|
|
/* 02062CB8 */ cpu->r[24] = cpu->r[24] + 0xFFFFCB20u;
|
|
/* 02062CBC */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 02062CBC */ rbrew_write32(cpu->mem, _t45, cpu->r[7]);
|
|
/* 02062CC0 */ cpu->r[9] = 0x00000040u;
|
|
/* 02062CC4 */ _t46 = cpu->r[24] + 0x00000004u;
|
|
/* 02062CC4 */ rbrew_write32(cpu->mem, _t46, cpu->r[27]);
|
|
/* 02062CC8 */ cpu->r[27] = cpu->r[24] + 0x0000000Cu;
|
|
/* 02062CCC */ _t47 = cpu->r[24] + 0x00000008u;
|
|
/* 02062CCC */ rbrew_write32(cpu->mem, _t47, cpu->r[9]);
|
|
/* 02062CD0 */ cpu->r[8] = 0x10000000u;
|
|
/* 02062CD4 */ _t48 = cpu->r[24] + 0x0000004Bu;
|
|
/* 02062CD4 */ rbrew_write8(cpu->mem, _t48, (uint8_t)cpu->r[31]);
|
|
/* 02062CD8 */ cpu->r[8] = cpu->r[8] + 0x00006EB4u;
|
|
/* 02062CDC */ _t49 = cpu->r[24] + 0x00000000u;
|
|
/* 02062CDC */ rbrew_write32(cpu->mem, _t49, cpu->r[27]);
|
|
/* 02062CE0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02062CE4 */ _t50 = cpu->r[1] + 0x00000010u;
|
|
/* 02062CE4 */ rbrew_write32(cpu->mem, _t50, cpu->r[8]);
|
|
/* 02062CE8 */ Gambit_fn_02062F40(cpu);
|
|
/* 02062CEC */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 02062CEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02062CF0 */ _t52 = cpu->r[9] + 0x00000000u;
|
|
/* 02062CF0 */ cpu->r[10] = rbrew_read8(cpu->mem, _t52);
|
|
/* 02062CF4 */ cpu->r[30] = 0x00000000u;
|
|
/* 02062CF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02062CFC */ cpu->r[10] = 0x00080000u;
|
|
/* 02062D00 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062D00 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02062D00 */ if (_t54) goto L_02062D28; else goto L_02062D04;
|
|
L_02062D04: ; // 0x2062d04
|
|
/* 02062D04 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02062D08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 02062D0C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02062D10 */ _t55 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02062D10 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02062D10 */ if (_t56) goto L_02062D24; else goto L_02062D14;
|
|
L_02062D14: ; // 0x2062d14
|
|
/* 02062D14 */ _t57 = cpu->r[9] + 0x00000000u;
|
|
/* 02062D14 */ cpu->r[0] = rbrew_read8(cpu->mem, _t57);
|
|
/* 02062D18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02062D1C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062D1C */ _t59 = _t58 & 0x00000001u;
|
|
/* 02062D1C */ if (_t59) goto L_02062D20; else goto L_02062D04;
|
|
L_02062D20: ; // 0x2062d20
|
|
/* 02062D20 */ goto L_02062D28;
|
|
L_02062D24: ; // 0x2062d24
|
|
/* 02062D24 */ cpu->r[30] = 0x00000000u;
|
|
L_02062D28: ; // 0x2062d28
|
|
/* 02062D28 */ _t60 = cpu->r[24] + 0x00000008u;
|
|
/* 02062D28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02062D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 02062D30 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02062D30 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02062D30 */ if (_t62) goto L_02062D38; else goto L_02062D34;
|
|
L_02062D34: ; // 0x2062d34
|
|
/* 02062D34 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02062D38: ; // 0x2062d38
|
|
/* 02062D38 */ _t63 = cpu->r[1] + 0x00000014u;
|
|
/* 02062D38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02062D3C */ _t64 = cpu->r[12] + 0x00000014u;
|
|
/* 02062D3C */ cpu->r[5] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02062D40 */ cpu->ctr = cpu->r[5];
|
|
/* 02062D44 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02062D48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02062D4C */ _t65 = cpu->r[1] + 0x00000010u;
|
|
/* 02062D4C */ cpu->r[4] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02062D50 */ cpu->r[3] = cpu->r[27];
|
|
/* 02062D54 */ cpu->r[5] = cpu->r[30];
|
|
/* 02062D58 */ cpu->r[6] = 0x00000000u;
|
|
/* 02062D5C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02062D60 */ _t66 = cpu->r[27] + cpu->r[30];
|
|
/* 02062D60 */ rbrew_write8(cpu->mem, _t66, (uint8_t)cpu->r[31]);
|
|
/* 02062D64 */ cpu->r[6] = 0x00000002u;
|
|
/* 02062D68 */ cpu->r[9] = 0x10000000u;
|
|
/* 02062D6C */ _t67 = cpu->r[24] + 0x0000004Cu;
|
|
/* 02062D6C */ rbrew_write32(cpu->mem, _t67, cpu->r[6]);
|
|
/* 02062D70 */ _t68 = cpu->r[9] + 0x00006E9Cu;
|
|
/* 02062D70 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t68);
|
|
/* 02062D74 */ _t69 = cpu->r[24] + 0x00000004u;
|
|
/* 02062D74 */ rbrew_write32(cpu->mem, _t69, cpu->r[26]);
|
|
/* 02062D78 */ cpu->r[7] = 0x10000000u;
|
|
/* 02062D7C */ _t70 = cpu->r[24] + 0x00000058u;
|
|
/* 02062D7C */ rbrew_write_f32(cpu->mem, _t70, cpu->f[0]);
|
|
/* 02062D80 */ _t71 = cpu->r[7] + 0x00006E98u;
|
|
/* 02062D80 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02062D84 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02062D88 */ _t72 = cpu->r[24] + 0x00000050u;
|
|
/* 02062D88 */ rbrew_write8(cpu->mem, _t72, (uint8_t)cpu->r[25]);
|
|
/* 02062D8C */ cpu->r[3] = cpu->r[3] + 0x00003170u;
|
|
/* 02062D90 */ _t73 = cpu->r[24] + 0x00000054u;
|
|
/* 02062D90 */ rbrew_write_f32(cpu->mem, _t73, cpu->f[0]);
|
|
/* 02062D94 */ Gambit_fn_02C83090(cpu);
|
|
/* 02062D98 */ cpu->r[3] = cpu->r[28];
|
|
/* 02062D9C */ cpu->r[4] = cpu->r[24];
|
|
/* 02062DA0 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02062DA4 */ cpu->r[9] = 0x101E0000u;
|
|
/* 02062DA8 */ _t74 = cpu->r[9] + 0xFFFFCCBCu;
|
|
/* 02062DA8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02062DA8 */ cpu->r[9] = _t74;
|
|
/* 02062DAC */ cpu->r[31] = 0x101E0000u;
|
|
/* 02062DB0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02062DB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02062DB8 */ cpu->r[31] = cpu->r[31] + 0xFFFFCB7Cu;
|
|
/* 02062DBC */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062DBC */ _t76 = _t75 & 0x00000001u;
|
|
/* 02062DBC */ if (_t76) goto L_02062DC0; else goto L_02062E08;
|
|
L_02062DC0: ; // 0x2062dc0
|
|
/* 02062DC0 */ cpu->r[8] = 0x00000001u;
|
|
/* 02062DC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02062DC8 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02062DCC */ cpu->r[4] = 0x10000000u;
|
|
/* 02062DD0 */ cpu->r[7] = 0x00000000u;
|
|
/* 02062DD4 */ cpu->r[5] = 0x0000001Bu;
|
|
/* 02062DD8 */ cpu->r[4] = cpu->r[4] + 0x00006EA8u;
|
|
/* 02062DDC */ _t77 = cpu->r[9] + 0x00000000u;
|
|
/* 02062DDC */ rbrew_write32(cpu->mem, _t77, cpu->r[8]);
|
|
/* 02062DE0 */ Gambit_fn_028A6750(cpu);
|
|
/* 02062DE4 */ cpu->r[6] = 0x02060000u;
|
|
/* 02062DE8 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 02062DEC */ cpu->r[4] = 0x0000001Bu;
|
|
/* 02062DF0 */ cpu->r[6] = cpu->r[6] + 0x00002FC4u;
|
|
/* 02062DF4 */ cpu->r[5] = 0x00000008u;
|
|
/* 02062DF8 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02062DFC */ cpu->r[3] = 0x101C0000u;
|
|
/* 02062E00 */ cpu->r[3] = cpu->r[3] + 0x0000317Cu;
|
|
/* 02062E04 */ Gambit_fn_02C83090(cpu);
|
|
L_02062E08: ; // 0x2062e08
|
|
/* 02062E08 */ _t78 = cpu->r[31] + 0x00000054u;
|
|
/* 02062E08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02062E0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02062E10 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062E10 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02062E10 */ if (_t80) goto L_02062E14; else goto L_02062F08;
|
|
L_02062E14: ; // 0x2062e14
|
|
/* 02062E14 */ cpu->r[24] = 0x101D0000u;
|
|
/* 02062E18 */ cpu->r[30] = 0x00000000u;
|
|
/* 02062E1C */ cpu->r[19] = 0x101D0000u;
|
|
/* 02062E20 */ cpu->r[20] = 0x101D0000u;
|
|
/* 02062E24 */ cpu->r[21] = 0x00000001u;
|
|
/* 02062E28 */ cpu->r[25] = cpu->r[30];
|
|
/* 02062E2C */ cpu->r[23] = 0x101D0000u;
|
|
/* 02062E30 */ cpu->r[24] = cpu->r[24] + 0xFFFFEBA0u;
|
|
/* 02062E34 */ cpu->r[22] = 0x101D0000u;
|
|
L_02062E38: ; // 0x2062e38
|
|
/* 02062E38 */ _t81 = cpu->r[22] + 0xFFFFD9E8u;
|
|
/* 02062E38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02062E3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062E40 */ cpu->r[27] = cpu->r[30];
|
|
/* 02062E44 */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062E44 */ _t83 = _t82 & 0x00000001u;
|
|
/* 02062E44 */ if (_t83) goto L_02062E48; else goto L_02062E60;
|
|
L_02062E48: ; // 0x2062e48
|
|
/* 02062E48 */ cpu->r[4] = 0x101C0000u;
|
|
/* 02062E4C */ cpu->r[3] = cpu->r[23] + 0x000039AAu;
|
|
/* 02062E50 */ cpu->r[5] = 0x0000012Bu;
|
|
/* 02062E54 */ cpu->r[4] = cpu->r[4] + 0x00003038u;
|
|
/* 02062E58 */ _t84 = cpu->r[22] + 0xFFFFD9E8u;
|
|
/* 02062E58 */ rbrew_write32(cpu->mem, _t84, cpu->r[21]);
|
|
/* 02062E5C */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02062E60: ; // 0x2062e60
|
|
/* 02062E60 */ _t85 = cpu->r[20] + 0xFFFFD9E4u;
|
|
/* 02062E60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02062E64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062E68 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062E68 */ _t87 = _t86 & 0x00000001u;
|
|
/* 02062E68 */ if (_t87) goto L_02062E6C; else goto L_02062E74;
|
|
L_02062E6C: ; // 0x2062e6c
|
|
/* 02062E6C */ _t88 = cpu->r[19] + 0xFFFFEC0Cu;
|
|
/* 02062E6C */ rbrew_write32(cpu->mem, _t88, cpu->r[25]);
|
|
/* 02062E70 */ _t89 = cpu->r[20] + 0xFFFFD9E4u;
|
|
/* 02062E70 */ rbrew_write32(cpu->mem, _t89, cpu->r[21]);
|
|
L_02062E74: ; // 0x2062e74
|
|
/* 02062E74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x0000001Bu);
|
|
/* 02062E78 */ _t90 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02062E78 */ _t91 = _t90 & 0x00000001u;
|
|
/* 02062E78 */ if (_t91) goto L_02062EA0; else goto L_02062E7C;
|
|
L_02062E7C: ; // 0x2062e7c
|
|
/* 02062E7C */ cpu->r[4] = cpu->r[27];
|
|
/* 02062E80 */ cpu->r[3] = cpu->r[31];
|
|
/* 02062E84 */ cpu->r[5] = 0x00000000u;
|
|
/* 02062E88 */ Gambit_fn_028A6634(cpu);
|
|
/* 02062E8C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02062E90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x0000001Bu);
|
|
/* 02062E94 */ _t92 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02062E94 */ _t93 = _t92 & 0x00000001u;
|
|
/* 02062E94 */ if (_t93) goto L_02062F08; else goto L_02062E98;
|
|
L_02062E98: ; // 0x2062e98
|
|
/* 02062E98 */ _t94 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02062E98 */ _t95 = _t94 & 0x00000001u;
|
|
/* 02062E98 */ if (_t95) goto L_02062E38; else goto L_02062E9C;
|
|
L_02062E9C: ; // 0x2062e9c
|
|
/* 02062E9C */ goto L_02062F08;
|
|
L_02062EA0: ; // 0x2062ea0
|
|
/* 02062EA0 */ _t96 = cpu->r[19] + 0xFFFFEC0Cu;
|
|
/* 02062EA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02062EA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062EA8 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062EA8 */ _t98 = _t97 & 0x00000001u;
|
|
/* 02062EA8 */ if (_t98) goto L_02062EAC; else goto L_02062EE4;
|
|
L_02062EAC: ; // 0x2062eac
|
|
/* 02062EAC */ Gambit_fn_0282A450(cpu);
|
|
/* 02062EB0 */ cpu->r[26] = cpu->r[3];
|
|
/* 02062EB4 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02062EB8 */ _t99 = cpu->r[19] + 0xFFFFEC0Cu;
|
|
/* 02062EB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02062EBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062EC0 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062EC0 */ _t101 = _t100 & 0x00000001u;
|
|
/* 02062EC0 */ if (_t101) goto L_02062EC4; else goto L_02062ED8;
|
|
L_02062EC4: ; // 0x2062ec4
|
|
/* 02062EC4 */ cpu->r[5] = 0x0000001Bu;
|
|
/* 02062EC8 */ cpu->r[4] = cpu->r[23] + 0x000039AAu;
|
|
/* 02062ECC */ cpu->r[3] = cpu->r[24];
|
|
/* 02062ED0 */ Gambit_fn_0282A374(cpu);
|
|
/* 02062ED4 */ _t102 = cpu->r[19] + 0xFFFFEC0Cu;
|
|
/* 02062ED4 */ rbrew_write32(cpu->mem, _t102, cpu->r[24]);
|
|
L_02062ED8: ; // 0x2062ed8
|
|
/* 02062ED8 */ cpu->r[3] = cpu->r[26];
|
|
/* 02062EDC */ Gambit_fn_02837030(cpu);
|
|
/* 02062EE0 */ _t103 = cpu->r[19] + 0xFFFFEC0Cu;
|
|
/* 02062EE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t103);
|
|
L_02062EE4: ; // 0x2062ee4
|
|
/* 02062EE4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02062EE8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02062EEC */ _t104 = cpu->r[11] + cpu->r[0];
|
|
/* 02062EEC */ cpu->r[5] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02062EF0 */ cpu->r[4] = cpu->r[27];
|
|
/* 02062EF4 */ Gambit_fn_028A6634(cpu);
|
|
/* 02062EF8 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02062EFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x0000001Bu);
|
|
/* 02062F00 */ _t105 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02062F00 */ _t106 = _t105 & 0x00000001u;
|
|
/* 02062F00 */ if (_t106) goto L_02062F08; else goto L_02062F04;
|
|
L_02062F04: ; // 0x2062f04
|
|
/* 02062F04 */ _t107 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02062F04 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02062F04 */ if (_t108) goto L_02062E38; else goto L_02062F08;
|
|
L_02062F08: ; // 0x2062f08
|
|
/* 02062F08 */ cpu->r[3] = cpu->r[28];
|
|
/* 02062F0C */ cpu->r[4] = cpu->r[31];
|
|
/* 02062F10 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02062F14 */ cpu->r[3] = cpu->r[29] + 0x00000001u;
|
|
/* 02062F18 */ /* nop */
|
|
/* 02062F1C */ _t109 = cpu->r[1] + 0x00000054u;
|
|
/* 02062F1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02062F20 */ cpu->lr = cpu->r[0];
|
|
/* 02062F24 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02062F28 */ return;
|
|
}
|
|
|
|
// fn_02062F2C @ 0x2062f2c
|
|
void Gambit_fn_02062F2C(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_02062F2C: ; // 0x2062f2c
|
|
/* 02062F2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02062F30 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062F30 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02062F30 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062F30 */ goto L_02062F34;
|
|
L_02062F34: ; // 0x2062f34
|
|
/* 02062F34 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02062F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062F38 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062F38 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02062F38 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062F38 */ goto L_02062F3C;
|
|
L_02062F3C: ; // 0x2062f3c
|
|
/* 02062F3C */ 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_02062F40 @ 0x2062f40
|
|
void Gambit_fn_02062F40(CPUState* cpu) {
|
|
L_02062F40: ; // 0x2062f40
|
|
/* 02062F40 */ return;
|
|
}
|
|
|
|
// fn_02062F44 @ 0x2062f44
|
|
void Gambit_fn_02062F44(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_02062F44: ; // 0x2062f44
|
|
/* 02062F44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02062F48 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062F48 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02062F48 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062F48 */ goto L_02062F4C;
|
|
L_02062F4C: ; // 0x2062f4c
|
|
/* 02062F4C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02062F4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062F50 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062F50 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02062F50 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062F50 */ goto L_02062F54;
|
|
L_02062F54: ; // 0x2062f54
|
|
/* 02062F54 */ 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_02062F58 @ 0x2062f58
|
|
void Gambit_fn_02062F58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02062F58: ; // 0x2062f58
|
|
/* 02062F58 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02062F58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02062F5C */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02062F5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02062F60 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02062F64 */ cpu->r[11] = 0x10110000u;
|
|
/* 02062F68 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02062F68 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02062F6C */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02062F6C */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02062F70 */ return;
|
|
}
|
|
|
|
// fn_02062F74 @ 0x2062f74
|
|
void Gambit_fn_02062F74(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_02062F74: ; // 0x2062f74
|
|
/* 02062F74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02062F78 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062F78 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02062F78 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062F78 */ goto L_02062F7C;
|
|
L_02062F7C: ; // 0x2062f7c
|
|
/* 02062F7C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02062F7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062F80 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062F80 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02062F80 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062F80 */ goto L_02062F84;
|
|
L_02062F84: ; // 0x2062f84
|
|
/* 02062F84 */ 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_02062F88 @ 0x2062f88
|
|
void Gambit_fn_02062F88(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_02062F88: ; // 0x2062f88
|
|
/* 02062F88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02062F8C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062F8C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02062F8C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062F8C */ goto L_02062F90;
|
|
L_02062F90: ; // 0x2062f90
|
|
/* 02062F90 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02062F90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062F94 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062F94 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02062F94 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062F94 */ goto L_02062F98;
|
|
L_02062F98: ; // 0x2062f98
|
|
/* 02062F98 */ 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_02062F9C @ 0x2062f9c
|
|
void Gambit_fn_02062F9C(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_02062F9C: ; // 0x2062f9c
|
|
/* 02062F9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02062FA0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062FA0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02062FA0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062FA0 */ goto L_02062FA4;
|
|
L_02062FA4: ; // 0x2062fa4
|
|
/* 02062FA4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02062FA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062FA8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062FA8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02062FA8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062FA8 */ goto L_02062FAC;
|
|
L_02062FAC: ; // 0x2062fac
|
|
/* 02062FAC */ 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_02062FB0 @ 0x2062fb0
|
|
void Gambit_fn_02062FB0(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_02062FB0: ; // 0x2062fb0
|
|
/* 02062FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02062FB4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062FB4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02062FB4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062FB4 */ goto L_02062FB8;
|
|
L_02062FB8: ; // 0x2062fb8
|
|
/* 02062FB8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02062FB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02062FBC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062FBC */ _t3 = _t2 & 0x00000001u;
|
|
/* 02062FBC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02062FBC */ goto L_02062FC0;
|
|
L_02062FC0: ; // 0x2062fc0
|
|
/* 02062FC0 */ 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_02062FD0 @ 0x2062fd0
|
|
void Gambit_fn_02062FD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02062FD0: ; // 0x2062fd0
|
|
/* 02062FD0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02062FD0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02062FD0 */ cpu->r[1] = _t0;
|
|
/* 02062FD4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062FD4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02062FD4 */ if (_t2) goto L_02062FD8; else goto L_02062FE8;
|
|
L_02062FD8: ; // 0x2062fd8
|
|
/* 02062FD8 */ cpu->r[3] = 0x00000008u;
|
|
/* 02062FDC */ Gambit_fn_02801A78(cpu);
|
|
/* 02062FE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02062FE4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02062FE4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02062FE4 */ if (_t4) goto L_02062FF8; else goto L_02062FE8;
|
|
L_02062FE8: ; // 0x2062fe8
|
|
/* 02062FE8 */ cpu->r[12] = 0x00000000u;
|
|
/* 02062FEC */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02062FF0 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02062FF0 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02062FF4 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02062FF4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_02062FF8: ; // 0x2062ff8
|
|
/* 02062FF8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02062FF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02062FFC */ cpu->lr = cpu->r[0];
|
|
/* 02063000 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02063004 */ return;
|
|
}
|
|
|
|
// fn_02063008 @ 0x2063008
|
|
void Gambit_fn_02063008(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02063008: ; // 0x2063008
|
|
/* 02063008 */ cpu->r[0] = cpu->lr;
|
|
/* 0206300C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206300C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206300C */ cpu->r[1] = _t0;
|
|
/* 02063010 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063010 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02063014 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02063014 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02063018 */ cpu->r[30] = cpu->r[3];
|
|
/* 02063018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206301C */ cpu->r[31] = cpu->r[4];
|
|
/* 02063020 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02063020 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02063024 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063024 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02063024 */ if (_t5) goto L_02063044; else goto L_02063028;
|
|
L_02063028: ; // 0x2063028
|
|
/* 02063028 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206302C */ cpu->r[4] = 0x00000000u;
|
|
/* 02063030 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02063034 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02063034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063038 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063038 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02063038 */ if (_t7) goto L_02063044; else goto L_0206303C;
|
|
L_0206303C: ; // 0x206303c
|
|
/* 0206303C */ cpu->r[3] = cpu->r[30];
|
|
/* 02063040 */ Gambit_fn_02801BB0(cpu);
|
|
L_02063044: ; // 0x2063044
|
|
/* 02063044 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02063044 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02063048 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02063048 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206304C */ cpu->lr = cpu->r[0];
|
|
/* 02063050 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063050 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02063054 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02063058 */ return;
|
|
}
|
|
|
|
// fn_0206300C @ 0x206300c
|
|
void Gambit_fn_0206300C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0206300C: ; // 0x206300c
|
|
/* 0206300C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206300C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206300C */ cpu->r[1] = _t0;
|
|
/* 02063010 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063010 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02063014 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02063014 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02063018 */ cpu->r[30] = cpu->r[3];
|
|
/* 02063018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206301C */ cpu->r[31] = cpu->r[4];
|
|
/* 02063020 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02063020 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02063024 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063024 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02063024 */ if (_t5) goto L_02063044; else goto L_02063028;
|
|
L_02063028: ; // 0x2063028
|
|
/* 02063028 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206302C */ cpu->r[4] = 0x00000000u;
|
|
/* 02063030 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02063034 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02063034 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063038 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063038 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02063038 */ if (_t7) goto L_02063044; else goto L_0206303C;
|
|
L_0206303C: ; // 0x206303c
|
|
/* 0206303C */ cpu->r[3] = cpu->r[30];
|
|
/* 02063040 */ Gambit_fn_02801BB0(cpu);
|
|
L_02063044: ; // 0x2063044
|
|
/* 02063044 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02063044 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02063048 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02063048 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206304C */ cpu->lr = cpu->r[0];
|
|
/* 02063050 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063050 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02063054 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02063058 */ return;
|
|
}
|
|
|
|
// fn_0206305C @ 0x206305c
|
|
void Gambit_fn_0206305C(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;
|
|
|
|
L_0206305C: ; // 0x206305c
|
|
/* 0206305C */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 0206305C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206305C */ cpu->r[1] = _t0;
|
|
/* 02063060 */ /* nop */
|
|
/* 02063064 */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 02063064 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02063068 */ cpu->r[0] = cpu->lr;
|
|
/* 0206306C */ _t2 = cpu->r[1] + 0x00000054u;
|
|
/* 0206306C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02063070 */ /* nop */
|
|
/* 02063074 */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 02063074 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02063078 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0206307C */ cpu->r[24] = 0x10110000u;
|
|
/* 02063080 */ cpu->r[23] = 0x10000000u;
|
|
/* 02063084 */ cpu->r[26] = 0x10000000u;
|
|
/* 02063088 */ cpu->r[28] = cpu->r[4];
|
|
/* 0206308C */ cpu->r[12] = 0x10000000u;
|
|
/* 02063090 */ cpu->r[27] = cpu->r[3];
|
|
/* 02063094 */ _t4 = cpu->r[11] + 0xFFFFCD78u;
|
|
/* 02063094 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02063098 */ cpu->r[25] = 0x00000000u;
|
|
/* 0206309C */ cpu->r[23] = cpu->r[23] + 0x00006EF0u;
|
|
/* 020630A0 */ cpu->r[26] = cpu->r[26] + 0x00006F08u;
|
|
/* 020630A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 020630A8 */ _t5 = cpu->r[12] + 0x00006F20u;
|
|
/* 020630A8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 020630AC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020630AC */ _t7 = _t6 & 0x00000001u;
|
|
/* 020630AC */ if (_t7) goto L_020630E0; else goto L_020630B0;
|
|
L_020630B0: ; // 0x20630b0
|
|
/* 020630B0 */ cpu->r[4] = 0x101E0000u;
|
|
/* 020630B4 */ cpu->r[3] = cpu->r[27];
|
|
/* 020630B8 */ cpu->r[4] = cpu->r[4] + 0xFFFFCCC0u;
|
|
/* 020630BC */ Gambit_fn_027B81E4(cpu);
|
|
/* 020630C0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 020630C4 */ cpu->r[29] = 0x101E0000u;
|
|
/* 020630C8 */ _t8 = cpu->r[12] + 0xFFFFCD7Cu;
|
|
/* 020630C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 020630CC */ cpu->r[29] = cpu->r[29] + 0xFFFFCD1Cu;
|
|
/* 020630D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 020630D4 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 020630D8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020630D8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 020630D8 */ if (_t10) goto L_020630DC; else goto L_020631FC;
|
|
L_020630DC: ; // 0x20630dc
|
|
/* 020630DC */ goto L_02063210;
|
|
L_020630E0: ; // 0x20630e0
|
|
/* 020630E0 */ cpu->r[29] = 0x101E0000u;
|
|
/* 020630E4 */ cpu->r[0] = 0x00000001u;
|
|
/* 020630E8 */ cpu->r[9] = 0x101E0000u;
|
|
/* 020630EC */ _t11 = cpu->r[24] + 0x00007399u;
|
|
/* 020630EC */ cpu->r[30] = rbrew_read8(cpu->mem, _t11);
|
|
/* 020630F0 */ cpu->r[29] = cpu->r[29] + 0xFFFFCCC0u;
|
|
/* 020630F4 */ _t12 = cpu->r[9] + 0xFFFFCD78u;
|
|
/* 020630F4 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 020630F8 */ cpu->r[0] = 0x00000040u;
|
|
/* 020630FC */ _t13 = cpu->r[29] + 0x0000004Bu;
|
|
/* 020630FC */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[30]);
|
|
/* 02063100 */ cpu->r[22] = cpu->r[29] + 0x0000000Cu;
|
|
/* 02063104 */ _t14 = cpu->r[29] + 0x00000004u;
|
|
/* 02063104 */ rbrew_write32(cpu->mem, _t14, cpu->r[23]);
|
|
/* 02063108 */ cpu->r[12] = 0x10000000u;
|
|
/* 0206310C */ _t15 = cpu->r[29] + 0x00000008u;
|
|
/* 0206310C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02063110 */ cpu->r[12] = cpu->r[12] + 0x00006EC0u;
|
|
/* 02063114 */ cpu->r[5] = 0x10000000u;
|
|
/* 02063118 */ _t16 = cpu->r[29] + 0x00000000u;
|
|
/* 02063118 */ rbrew_write32(cpu->mem, _t16, cpu->r[22]);
|
|
/* 0206311C */ cpu->r[5] = cpu->r[5] + 0x00006F40u;
|
|
/* 02063120 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063120 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 02063124 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02063128 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02063128 */ rbrew_write32(cpu->mem, _t18, cpu->r[5]);
|
|
/* 0206312C */ Gambit_fn_02063340(cpu);
|
|
/* 02063130 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02063130 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02063134 */ _t20 = cpu->r[12] + 0x00000000u;
|
|
/* 02063134 */ cpu->r[6] = rbrew_read8(cpu->mem, _t20);
|
|
/* 02063138 */ cpu->r[31] = 0x00000000u;
|
|
/* 0206313C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 02063140 */ cpu->r[5] = 0x00080000u;
|
|
/* 02063144 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063144 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02063144 */ if (_t22) goto L_0206316C; else goto L_02063148;
|
|
L_02063148: ; // 0x2063148
|
|
/* 02063148 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0206314C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]);
|
|
/* 02063150 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02063154 */ _t23 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02063154 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02063154 */ if (_t24) goto L_02063168; else goto L_02063158;
|
|
L_02063158: ; // 0x2063158
|
|
/* 02063158 */ _t25 = cpu->r[12] + 0x00000000u;
|
|
/* 02063158 */ cpu->r[0] = rbrew_read8(cpu->mem, _t25);
|
|
/* 0206315C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02063160 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063160 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02063160 */ if (_t27) goto L_02063164; else goto L_02063148;
|
|
L_02063164: ; // 0x2063164
|
|
/* 02063164 */ goto L_0206316C;
|
|
L_02063168: ; // 0x2063168
|
|
/* 02063168 */ cpu->r[31] = 0x00000000u;
|
|
L_0206316C: ; // 0x206316c
|
|
/* 0206316C */ _t28 = cpu->r[29] + 0x00000008u;
|
|
/* 0206316C */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02063170 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063170 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02063174 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]);
|
|
/* 02063178 */ _t30 = cpu->r[9] + 0x00000014u;
|
|
/* 02063178 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0206317C */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206317C */ _t32 = _t31 & 0x00000001u;
|
|
/* 0206317C */ if (_t32) goto L_02063184; else goto L_02063180;
|
|
L_02063180: ; // 0x2063180
|
|
/* 02063180 */ cpu->r[31] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_02063184: ; // 0x2063184
|
|
/* 02063184 */ cpu->ctr = cpu->r[0];
|
|
/* 02063188 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206318C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02063190 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 02063190 */ cpu->r[4] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02063194 */ cpu->r[3] = cpu->r[22];
|
|
/* 02063198 */ cpu->r[5] = cpu->r[31];
|
|
/* 0206319C */ cpu->r[6] = 0x00000000u;
|
|
/* 020631A0 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 020631A4 */ _t34 = cpu->r[22] + cpu->r[31];
|
|
/* 020631A4 */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[30]);
|
|
/* 020631A8 */ cpu->r[6] = 0x10000000u;
|
|
/* 020631AC */ _t35 = cpu->r[29] + 0x00000004u;
|
|
/* 020631AC */ rbrew_write32(cpu->mem, _t35, cpu->r[26]);
|
|
/* 020631B0 */ cpu->r[0] = 0x00000002u;
|
|
/* 020631B4 */ _t36 = cpu->r[6] + 0x00006F24u;
|
|
/* 020631B4 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 020631B8 */ _t37 = cpu->r[29] + 0x0000004Cu;
|
|
/* 020631B8 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 020631BC */ _t38 = cpu->r[29] + 0x00000054u;
|
|
/* 020631BC */ rbrew_write_f32(cpu->mem, _t38, cpu->f[31]);
|
|
/* 020631C0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 020631C4 */ _t39 = cpu->r[29] + 0x00000058u;
|
|
/* 020631C4 */ rbrew_write_f32(cpu->mem, _t39, cpu->f[0]);
|
|
/* 020631C8 */ cpu->r[3] = cpu->r[3] + 0x00003188u;
|
|
/* 020631CC */ _t40 = cpu->r[29] + 0x00000050u;
|
|
/* 020631CC */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[25]);
|
|
/* 020631D0 */ Gambit_fn_02C83090(cpu);
|
|
/* 020631D4 */ cpu->r[4] = cpu->r[29];
|
|
/* 020631D8 */ cpu->r[3] = cpu->r[27];
|
|
/* 020631DC */ Gambit_fn_027B81E4(cpu);
|
|
/* 020631E0 */ cpu->r[12] = 0x101E0000u;
|
|
/* 020631E4 */ cpu->r[29] = 0x101E0000u;
|
|
/* 020631E8 */ _t41 = cpu->r[12] + 0xFFFFCD7Cu;
|
|
/* 020631E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 020631EC */ cpu->r[29] = cpu->r[29] + 0xFFFFCD1Cu;
|
|
/* 020631F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 020631F4 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 020631F8 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020631F8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 020631F8 */ if (_t43) goto L_02063210; else goto L_020631FC;
|
|
L_020631FC: ; // 0x20631fc
|
|
/* 020631FC */ cpu->r[3] = cpu->r[27];
|
|
/* 02063200 */ cpu->r[4] = cpu->r[29];
|
|
/* 02063204 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02063208 */ cpu->r[3] = cpu->r[28] + 0x00000001u;
|
|
/* 0206320C */ goto L_0206330C;
|
|
L_02063210: ; // 0x2063210
|
|
/* 02063210 */ _t44 = cpu->r[24] + 0x00007399u;
|
|
/* 02063210 */ cpu->r[30] = rbrew_read8(cpu->mem, _t44);
|
|
/* 02063214 */ cpu->r[0] = 0x00000040u;
|
|
/* 02063218 */ _t45 = cpu->r[29] + 0x00000004u;
|
|
/* 02063218 */ rbrew_write32(cpu->mem, _t45, cpu->r[23]);
|
|
/* 0206321C */ cpu->r[24] = cpu->r[29] + 0x0000000Cu;
|
|
/* 02063220 */ _t46 = cpu->r[29] + 0x00000008u;
|
|
/* 02063220 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]);
|
|
/* 02063224 */ cpu->r[0] = 0x00000001u;
|
|
/* 02063228 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0206322C */ _t47 = cpu->r[29] + 0x00000000u;
|
|
/* 0206322C */ rbrew_write32(cpu->mem, _t47, cpu->r[24]);
|
|
/* 02063230 */ cpu->r[12] = 0x10000000u;
|
|
/* 02063234 */ _t48 = cpu->r[10] + 0xFFFFCD7Cu;
|
|
/* 02063234 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]);
|
|
/* 02063238 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206323C */ cpu->r[12] = cpu->r[12] + 0x00006EC0u;
|
|
/* 02063240 */ _t49 = cpu->r[29] + 0x0000004Bu;
|
|
/* 02063240 */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[30]);
|
|
/* 02063244 */ cpu->r[0] = cpu->r[0] + 0x00006F2Cu;
|
|
/* 02063248 */ _t50 = cpu->r[1] + 0x00000014u;
|
|
/* 02063248 */ rbrew_write32(cpu->mem, _t50, cpu->r[12]);
|
|
/* 0206324C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02063250 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 02063250 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 02063254 */ Gambit_fn_02063340(cpu);
|
|
/* 02063258 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 02063258 */ cpu->r[10] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0206325C */ _t53 = cpu->r[10] + 0x00000000u;
|
|
/* 0206325C */ cpu->r[5] = rbrew_read8(cpu->mem, _t53);
|
|
/* 02063260 */ cpu->r[31] = 0x00000000u;
|
|
/* 02063264 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]);
|
|
/* 02063268 */ cpu->r[11] = 0x00080000u;
|
|
/* 0206326C */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206326C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0206326C */ if (_t55) goto L_02063294; else goto L_02063270;
|
|
L_02063270: ; // 0x2063270
|
|
/* 02063270 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02063274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]);
|
|
/* 02063278 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0206327C */ _t56 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0206327C */ _t57 = _t56 & 0x00000001u;
|
|
/* 0206327C */ if (_t57) goto L_02063290; else goto L_02063280;
|
|
L_02063280: ; // 0x2063280
|
|
/* 02063280 */ _t58 = cpu->r[10] + 0x00000000u;
|
|
/* 02063280 */ cpu->r[7] = rbrew_read8(cpu->mem, _t58);
|
|
/* 02063284 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]);
|
|
/* 02063288 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063288 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02063288 */ if (_t60) goto L_0206328C; else goto L_02063270;
|
|
L_0206328C: ; // 0x206328c
|
|
/* 0206328C */ goto L_02063294;
|
|
L_02063290: ; // 0x2063290
|
|
/* 02063290 */ cpu->r[31] = 0x00000000u;
|
|
L_02063294: ; // 0x2063294
|
|
/* 02063294 */ _t61 = cpu->r[29] + 0x00000008u;
|
|
/* 02063294 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02063298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 0206329C */ _t62 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206329C */ _t63 = _t62 & 0x00000001u;
|
|
/* 0206329C */ if (_t63) goto L_020632A4; else goto L_020632A0;
|
|
L_020632A0: ; // 0x20632a0
|
|
/* 020632A0 */ cpu->r[31] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_020632A4: ; // 0x20632a4
|
|
/* 020632A4 */ _t64 = cpu->r[1] + 0x00000014u;
|
|
/* 020632A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t64);
|
|
/* 020632A8 */ _t65 = cpu->r[8] + 0x00000014u;
|
|
/* 020632A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t65);
|
|
/* 020632AC */ cpu->ctr = cpu->r[10];
|
|
/* 020632B0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 020632B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020632B8 */ _t66 = cpu->r[1] + 0x00000010u;
|
|
/* 020632B8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t66);
|
|
/* 020632BC */ cpu->r[3] = cpu->r[24];
|
|
/* 020632C0 */ cpu->r[5] = cpu->r[31];
|
|
/* 020632C4 */ cpu->r[6] = 0x00000000u;
|
|
/* 020632C8 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 020632CC */ _t67 = cpu->r[24] + cpu->r[31];
|
|
/* 020632CC */ rbrew_write8(cpu->mem, _t67, (uint8_t)cpu->r[30]);
|
|
/* 020632D0 */ cpu->r[7] = 0x10000000u;
|
|
/* 020632D4 */ _t68 = cpu->r[29] + 0x00000004u;
|
|
/* 020632D4 */ rbrew_write32(cpu->mem, _t68, cpu->r[26]);
|
|
/* 020632D8 */ cpu->r[11] = 0x00000002u;
|
|
/* 020632DC */ _t69 = cpu->r[7] + 0x00006F28u;
|
|
/* 020632DC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t69);
|
|
/* 020632E0 */ _t70 = cpu->r[29] + 0x0000004Cu;
|
|
/* 020632E0 */ rbrew_write32(cpu->mem, _t70, cpu->r[11]);
|
|
/* 020632E4 */ _t71 = cpu->r[29] + 0x00000054u;
|
|
/* 020632E4 */ rbrew_write_f32(cpu->mem, _t71, cpu->f[31]);
|
|
/* 020632E8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 020632EC */ _t72 = cpu->r[29] + 0x00000058u;
|
|
/* 020632EC */ rbrew_write_f32(cpu->mem, _t72, cpu->f[13]);
|
|
/* 020632F0 */ cpu->r[3] = cpu->r[3] + 0x00003194u;
|
|
/* 020632F4 */ _t73 = cpu->r[29] + 0x00000050u;
|
|
/* 020632F4 */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[25]);
|
|
/* 020632F8 */ Gambit_fn_02C83090(cpu);
|
|
/* 020632FC */ cpu->r[4] = cpu->r[29];
|
|
/* 02063300 */ cpu->r[3] = cpu->r[27];
|
|
/* 02063304 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02063308 */ cpu->r[3] = cpu->r[28] + 0x00000001u;
|
|
L_0206330C: ; // 0x206330c
|
|
/* 0206330C */ /* nop */
|
|
/* 02063310 */ _t74 = cpu->r[1] + 0x00000048u;
|
|
/* 02063310 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 02063314 */ _t75 = cpu->r[1] + 0x00000040u;
|
|
/* 02063314 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 02063318 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02063318 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02063318 */ if (_t77) goto L_0206331C; // else: addr-0 trap, fall-through
|
|
L_0206331C: ; // 0x206331c
|
|
/* 0206331C */ _t78 = cpu->r[1] + 0x00000054u;
|
|
/* 0206331C */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02063320 */ cpu->lr = cpu->r[0];
|
|
/* 02063324 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02063328 */ return;
|
|
}
|
|
|
|
// fn_0206332C @ 0x206332c
|
|
void Gambit_fn_0206332C(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_0206332C: ; // 0x206332c
|
|
/* 0206332C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02063330 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063330 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02063330 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02063330 */ goto L_02063334;
|
|
L_02063334: ; // 0x2063334
|
|
/* 02063334 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02063334 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063338 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063338 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02063338 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02063338 */ goto L_0206333C;
|
|
L_0206333C: ; // 0x206333c
|
|
/* 0206333C */ 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_02063340 @ 0x2063340
|
|
void Gambit_fn_02063340(CPUState* cpu) {
|
|
L_02063340: ; // 0x2063340
|
|
/* 02063340 */ return;
|
|
}
|
|
|
|
// fn_02063344 @ 0x2063344
|
|
void Gambit_fn_02063344(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_02063344: ; // 0x2063344
|
|
/* 02063344 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02063348 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063348 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02063348 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02063348 */ goto L_0206334C;
|
|
L_0206334C: ; // 0x206334c
|
|
/* 0206334C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206334C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063350 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063350 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02063350 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02063350 */ goto L_02063354;
|
|
L_02063354: ; // 0x2063354
|
|
/* 02063354 */ 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_02063358 @ 0x2063358
|
|
void Gambit_fn_02063358(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02063358: ; // 0x2063358
|
|
/* 02063358 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02063358 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206335C */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 0206335C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02063360 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02063364 */ cpu->r[11] = 0x10110000u;
|
|
/* 02063368 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02063368 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0206336C */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0206336C */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02063370 */ return;
|
|
}
|
|
|
|
// fn_02063374 @ 0x2063374
|
|
void Gambit_fn_02063374(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_02063374: ; // 0x2063374
|
|
/* 02063374 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02063378 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063378 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02063378 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02063378 */ goto L_0206337C;
|
|
L_0206337C: ; // 0x206337c
|
|
/* 0206337C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206337C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063380 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063380 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02063380 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02063380 */ goto L_02063384;
|
|
L_02063384: ; // 0x2063384
|
|
/* 02063384 */ 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_02063388 @ 0x2063388
|
|
void Gambit_fn_02063388(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_02063388: ; // 0x2063388
|
|
/* 02063388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206338C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206338C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0206338C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206338C */ goto L_02063390;
|
|
L_02063390: ; // 0x2063390
|
|
/* 02063390 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02063390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063394 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063394 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02063394 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02063394 */ goto L_02063398;
|
|
L_02063398: ; // 0x2063398
|
|
/* 02063398 */ 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_0206339C @ 0x206339c
|
|
void Gambit_fn_0206339C(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_0206339C: ; // 0x206339c
|
|
/* 0206339C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020633A0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020633A0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 020633A0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 020633A0 */ goto L_020633A4;
|
|
L_020633A4: ; // 0x20633a4
|
|
/* 020633A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020633A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020633A8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020633A8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 020633A8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 020633A8 */ goto L_020633AC;
|
|
L_020633AC: ; // 0x20633ac
|
|
/* 020633AC */ 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_020633B0 @ 0x20633b0
|
|
void Gambit_fn_020633B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196;
|
|
|
|
L_020633B0: ; // 0x20633b0
|
|
/* 020633B0 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 020633B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020633B0 */ cpu->r[1] = _t0;
|
|
/* 020633B4 */ /* nop */
|
|
/* 020633B8 */ cpu->r[0] = cpu->lr;
|
|
/* 020633BC */ cpu->r[30] = cpu->r[3];
|
|
/* 020633C0 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 020633C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 020633C4 */ Gambit_fn_0206305C(cpu);
|
|
/* 020633C8 */ cpu->r[10] = 0x101E0000u;
|
|
/* 020633CC */ _t2 = cpu->r[10] + 0xFFFFD0F0u;
|
|
/* 020633CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t2);
|
|
/* 020633D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 020633D4 */ cpu->r[28] = cpu->r[3];
|
|
/* 020633D8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020633D8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 020633D8 */ if (_t4) goto L_020633F4; else goto L_020633DC;
|
|
L_020633DC: ; // 0x20633dc
|
|
/* 020633DC */ cpu->r[31] = 0x101E0000u;
|
|
/* 020633E0 */ cpu->r[31] = cpu->r[31] + 0xFFFFCD80u;
|
|
/* 020633E4 */ _t5 = cpu->r[31] + 0x00000054u;
|
|
/* 020633E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020633E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020633EC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020633EC */ _t7 = _t6 & 0x00000001u;
|
|
/* 020633EC */ if (_t7) goto L_020633F0; else goto L_02063490;
|
|
L_020633F0: ; // 0x20633f0
|
|
/* 020633F0 */ goto L_02063454;
|
|
L_020633F4: ; // 0x20633f4
|
|
/* 020633F4 */ cpu->r[4] = 0x10000000u;
|
|
/* 020633F8 */ cpu->r[0] = 0x00000001u;
|
|
/* 020633FC */ cpu->r[7] = 0x101E0000u;
|
|
/* 02063400 */ cpu->r[31] = 0x101E0000u;
|
|
/* 02063404 */ cpu->r[4] = cpu->r[4] + 0x00006F78u;
|
|
/* 02063408 */ cpu->r[5] = 0x00000003u;
|
|
/* 0206340C */ cpu->r[31] = cpu->r[31] + 0xFFFFCD80u;
|
|
/* 02063410 */ _t8 = cpu->r[7] + 0xFFFFD0F0u;
|
|
/* 02063410 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02063414 */ cpu->r[7] = 0x00000000u;
|
|
/* 02063418 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 0206341C */ cpu->r[3] = cpu->r[31];
|
|
/* 02063420 */ Gambit_fn_028A6750(cpu);
|
|
/* 02063424 */ cpu->r[6] = 0x02060000u;
|
|
/* 02063428 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 0206342C */ cpu->r[4] = 0x00000003u;
|
|
/* 02063430 */ cpu->r[6] = cpu->r[6] + 0x00003C38u;
|
|
/* 02063434 */ cpu->r[5] = 0x00000008u;
|
|
/* 02063438 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0206343C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02063440 */ cpu->r[3] = cpu->r[3] + 0x000032F4u;
|
|
/* 02063444 */ Gambit_fn_02C83090(cpu);
|
|
/* 02063448 */ _t9 = cpu->r[31] + 0x00000054u;
|
|
/* 02063448 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206344C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063450 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063450 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02063450 */ if (_t11) goto L_02063454; else goto L_02063490;
|
|
L_02063454: ; // 0x2063454
|
|
/* 02063454 */ cpu->r[5] = 0x10000000u;
|
|
/* 02063458 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206345C */ cpu->r[5] = cpu->r[5] + 0x00006F50u;
|
|
/* 02063460 */ cpu->r[3] = cpu->r[31];
|
|
/* 02063464 */ Gambit_fn_028A6634(cpu);
|
|
/* 02063468 */ cpu->r[5] = 0x10000000u;
|
|
/* 0206346C */ cpu->r[4] = 0x00000001u;
|
|
/* 02063470 */ cpu->r[5] = cpu->r[5] + 0x00006F58u;
|
|
/* 02063474 */ cpu->r[3] = cpu->r[31];
|
|
/* 02063478 */ Gambit_fn_028A6634(cpu);
|
|
/* 0206347C */ cpu->r[5] = 0x10000000u;
|
|
/* 02063480 */ cpu->r[4] = 0x00000002u;
|
|
/* 02063484 */ cpu->r[5] = cpu->r[5] + 0x00006F60u;
|
|
/* 02063488 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206348C */ Gambit_fn_028A6634(cpu);
|
|
L_02063490: ; // 0x2063490
|
|
/* 02063490 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063494 */ cpu->r[4] = cpu->r[31];
|
|
/* 02063498 */ Gambit_fn_027B81E4(cpu);
|
|
/* 0206349C */ cpu->r[12] = 0x101E0000u;
|
|
/* 020634A0 */ _t12 = cpu->r[12] + 0xFFFFD0F4u;
|
|
/* 020634A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020634A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 020634A8 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 020634AC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020634AC */ _t14 = _t13 & 0x00000001u;
|
|
/* 020634AC */ if (_t14) goto L_020634C8; else goto L_020634B0;
|
|
L_020634B0: ; // 0x20634b0
|
|
/* 020634B0 */ cpu->r[27] = 0x101E0000u;
|
|
/* 020634B4 */ cpu->r[27] = cpu->r[27] + 0xFFFFCDF8u;
|
|
/* 020634B8 */ _t15 = cpu->r[27] + 0x00000054u;
|
|
/* 020634B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 020634BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020634C0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020634C0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 020634C0 */ if (_t17) goto L_020634C4; else goto L_0206361C;
|
|
L_020634C4: ; // 0x20634c4
|
|
/* 020634C4 */ goto L_02063528;
|
|
L_020634C8: ; // 0x20634c8
|
|
/* 020634C8 */ cpu->r[27] = 0x101E0000u;
|
|
/* 020634CC */ cpu->r[4] = 0x10000000u;
|
|
/* 020634D0 */ cpu->r[0] = 0x00000001u;
|
|
/* 020634D4 */ cpu->r[27] = cpu->r[27] + 0xFFFFCDF8u;
|
|
/* 020634D8 */ cpu->r[4] = cpu->r[4] + 0x00006FA4u;
|
|
/* 020634DC */ cpu->r[5] = 0x101E0000u;
|
|
/* 020634E0 */ cpu->r[3] = cpu->r[27];
|
|
/* 020634E4 */ cpu->r[6] = cpu->r[27] + 0x00000060u;
|
|
/* 020634E8 */ _t18 = cpu->r[5] + 0xFFFFD0F4u;
|
|
/* 020634E8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 020634EC */ cpu->r[5] = 0x00000002u;
|
|
/* 020634F0 */ cpu->r[7] = 0x00000000u;
|
|
/* 020634F4 */ Gambit_fn_028A6750(cpu);
|
|
/* 020634F8 */ cpu->r[6] = 0x02060000u;
|
|
/* 020634FC */ cpu->r[3] = cpu->r[27] + 0x00000060u;
|
|
/* 02063500 */ cpu->r[4] = 0x00000002u;
|
|
/* 02063504 */ cpu->r[6] = cpu->r[6] + 0x00003C38u;
|
|
/* 02063508 */ cpu->r[5] = 0x00000008u;
|
|
/* 0206350C */ Gambit_fn_02C82E00(cpu);
|
|
/* 02063510 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02063514 */ cpu->r[3] = cpu->r[3] + 0x00003300u;
|
|
/* 02063518 */ Gambit_fn_02C83090(cpu);
|
|
/* 0206351C */ _t19 = cpu->r[27] + 0x00000054u;
|
|
/* 0206351C */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02063520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063524 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063524 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02063524 */ if (_t21) goto L_02063528; else goto L_0206361C;
|
|
L_02063528: ; // 0x2063528
|
|
/* 02063528 */ cpu->r[25] = 0x101D0000u;
|
|
/* 0206352C */ cpu->r[29] = 0x00000000u;
|
|
/* 02063530 */ cpu->r[20] = 0x101D0000u;
|
|
/* 02063534 */ cpu->r[21] = 0x101D0000u;
|
|
/* 02063538 */ cpu->r[22] = 0x00000001u;
|
|
/* 0206353C */ cpu->r[26] = cpu->r[29];
|
|
/* 02063540 */ cpu->r[24] = 0x101D0000u;
|
|
/* 02063544 */ cpu->r[25] = cpu->r[25] + 0xFFFFEC10u;
|
|
/* 02063548 */ cpu->r[23] = 0x101D0000u;
|
|
L_0206354C: ; // 0x206354c
|
|
/* 0206354C */ _t22 = cpu->r[23] + 0xFFFFEC20u;
|
|
/* 0206354C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02063550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063554 */ cpu->r[31] = cpu->r[29];
|
|
/* 02063558 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063558 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02063558 */ if (_t24) goto L_0206355C; else goto L_02063574;
|
|
L_0206355C: ; // 0x206355c
|
|
/* 0206355C */ cpu->r[4] = 0x101C0000u;
|
|
/* 02063560 */ cpu->r[3] = cpu->r[24] + 0x00003AD5u;
|
|
/* 02063564 */ cpu->r[5] = 0x00000013u;
|
|
/* 02063568 */ cpu->r[4] = cpu->r[4] + 0x000031B8u;
|
|
/* 0206356C */ _t25 = cpu->r[23] + 0xFFFFEC20u;
|
|
/* 0206356C */ rbrew_write32(cpu->mem, _t25, cpu->r[22]);
|
|
/* 02063570 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02063574: ; // 0x2063574
|
|
/* 02063574 */ _t26 = cpu->r[21] + 0xFFFFEC1Cu;
|
|
/* 02063574 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02063578 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206357C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206357C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0206357C */ if (_t28) goto L_02063580; else goto L_02063588;
|
|
L_02063580: ; // 0x2063580
|
|
/* 02063580 */ _t29 = cpu->r[20] + 0xFFFFEC18u;
|
|
/* 02063580 */ rbrew_write32(cpu->mem, _t29, cpu->r[26]);
|
|
/* 02063584 */ _t30 = cpu->r[21] + 0xFFFFEC1Cu;
|
|
/* 02063584 */ rbrew_write32(cpu->mem, _t30, cpu->r[22]);
|
|
L_02063588: ; // 0x2063588
|
|
/* 02063588 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000002u);
|
|
/* 0206358C */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206358C */ _t32 = _t31 & 0x00000001u;
|
|
/* 0206358C */ if (_t32) goto L_020635B4; else goto L_02063590;
|
|
L_02063590: ; // 0x2063590
|
|
/* 02063590 */ cpu->r[4] = cpu->r[29];
|
|
/* 02063594 */ cpu->r[3] = cpu->r[27];
|
|
/* 02063598 */ cpu->r[5] = 0x00000000u;
|
|
/* 0206359C */ Gambit_fn_028A6634(cpu);
|
|
/* 020635A0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 020635A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000002u);
|
|
/* 020635A8 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020635A8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 020635A8 */ if (_t34) goto L_0206361C; else goto L_020635AC;
|
|
L_020635AC: ; // 0x20635ac
|
|
/* 020635AC */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020635AC */ _t36 = _t35 & 0x00000001u;
|
|
/* 020635AC */ if (_t36) goto L_0206354C; else goto L_020635B0;
|
|
L_020635B0: ; // 0x20635b0
|
|
/* 020635B0 */ goto L_0206361C;
|
|
L_020635B4: ; // 0x20635b4
|
|
/* 020635B4 */ _t37 = cpu->r[20] + 0xFFFFEC18u;
|
|
/* 020635B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 020635B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 020635BC */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020635BC */ _t39 = _t38 & 0x00000001u;
|
|
/* 020635BC */ if (_t39) goto L_020635C0; else goto L_020635F8;
|
|
L_020635C0: ; // 0x20635c0
|
|
/* 020635C0 */ Gambit_fn_0282A450(cpu);
|
|
/* 020635C4 */ cpu->r[19] = cpu->r[3];
|
|
/* 020635C8 */ Gambit_fn_02836FFC(cpu);
|
|
/* 020635CC */ _t40 = cpu->r[20] + 0xFFFFEC18u;
|
|
/* 020635CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 020635D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020635D4 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020635D4 */ _t42 = _t41 & 0x00000001u;
|
|
/* 020635D4 */ if (_t42) goto L_020635D8; else goto L_020635EC;
|
|
L_020635D8: ; // 0x20635d8
|
|
/* 020635D8 */ cpu->r[5] = 0x00000002u;
|
|
/* 020635DC */ cpu->r[4] = cpu->r[24] + 0x00003AD5u;
|
|
/* 020635E0 */ cpu->r[3] = cpu->r[25];
|
|
/* 020635E4 */ Gambit_fn_0282A374(cpu);
|
|
/* 020635E8 */ _t43 = cpu->r[20] + 0xFFFFEC18u;
|
|
/* 020635E8 */ rbrew_write32(cpu->mem, _t43, cpu->r[25]);
|
|
L_020635EC: ; // 0x20635ec
|
|
/* 020635EC */ cpu->r[3] = cpu->r[19];
|
|
/* 020635F0 */ Gambit_fn_02837030(cpu);
|
|
/* 020635F4 */ _t44 = cpu->r[20] + 0xFFFFEC18u;
|
|
/* 020635F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
L_020635F8: ; // 0x20635f8
|
|
/* 020635F8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 020635FC */ cpu->r[3] = cpu->r[27];
|
|
/* 02063600 */ _t45 = cpu->r[12] + cpu->r[10];
|
|
/* 02063600 */ cpu->r[5] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02063604 */ cpu->r[4] = cpu->r[29];
|
|
/* 02063608 */ Gambit_fn_028A6634(cpu);
|
|
/* 0206360C */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02063610 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000002u);
|
|
/* 02063614 */ _t46 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02063614 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02063614 */ if (_t47) goto L_0206361C; else goto L_02063618;
|
|
L_02063618: ; // 0x2063618
|
|
/* 02063618 */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02063618 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02063618 */ if (_t49) goto L_0206354C; else goto L_0206361C;
|
|
L_0206361C: ; // 0x206361c
|
|
/* 0206361C */ cpu->r[3] = cpu->r[30];
|
|
/* 02063620 */ cpu->r[4] = cpu->r[27];
|
|
/* 02063624 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02063628 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0206362C */ _t50 = cpu->r[11] + 0xFFFFD0F8u;
|
|
/* 0206362C */ cpu->r[11] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02063630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02063634 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02063638 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063638 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02063638 */ if (_t52) goto L_02063654; else goto L_0206363C;
|
|
L_0206363C: ; // 0x206363c
|
|
/* 0206363C */ cpu->r[27] = 0x101E0000u;
|
|
/* 02063640 */ cpu->r[27] = cpu->r[27] + 0xFFFFCE68u;
|
|
/* 02063644 */ _t53 = cpu->r[27] + 0x00000054u;
|
|
/* 02063644 */ cpu->r[10] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02063648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206364C */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206364C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0206364C */ if (_t55) goto L_02063650; else goto L_020637A8;
|
|
L_02063650: ; // 0x2063650
|
|
/* 02063650 */ goto L_020636B4;
|
|
L_02063654: ; // 0x2063654
|
|
/* 02063654 */ cpu->r[4] = 0x10000000u;
|
|
/* 02063658 */ cpu->r[9] = 0x00000001u;
|
|
/* 0206365C */ cpu->r[27] = 0x101E0000u;
|
|
/* 02063660 */ cpu->r[4] = cpu->r[4] + 0x00006FB4u;
|
|
/* 02063664 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02063668 */ cpu->r[27] = cpu->r[27] + 0xFFFFCE68u;
|
|
/* 0206366C */ cpu->r[7] = 0x00000000u;
|
|
/* 02063670 */ cpu->r[5] = 0x00000002u;
|
|
/* 02063674 */ cpu->r[6] = cpu->r[27] + 0x00000060u;
|
|
/* 02063678 */ cpu->r[3] = cpu->r[27];
|
|
/* 0206367C */ _t56 = cpu->r[12] + 0xFFFFD0F8u;
|
|
/* 0206367C */ rbrew_write32(cpu->mem, _t56, cpu->r[9]);
|
|
/* 02063680 */ Gambit_fn_028A6750(cpu);
|
|
/* 02063684 */ cpu->r[6] = 0x02060000u;
|
|
/* 02063688 */ cpu->r[3] = cpu->r[27] + 0x00000060u;
|
|
/* 0206368C */ cpu->r[4] = 0x00000002u;
|
|
/* 02063690 */ cpu->r[6] = cpu->r[6] + 0x00003C38u;
|
|
/* 02063694 */ cpu->r[5] = 0x00000008u;
|
|
/* 02063698 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0206369C */ cpu->r[3] = 0x101C0000u;
|
|
/* 020636A0 */ cpu->r[3] = cpu->r[3] + 0x0000330Cu;
|
|
/* 020636A4 */ Gambit_fn_02C83090(cpu);
|
|
/* 020636A8 */ _t57 = cpu->r[27] + 0x00000054u;
|
|
/* 020636A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t57);
|
|
/* 020636AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 020636B0 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020636B0 */ _t59 = _t58 & 0x00000001u;
|
|
/* 020636B0 */ if (_t59) goto L_020636B4; else goto L_020637A8;
|
|
L_020636B4: ; // 0x20636b4
|
|
/* 020636B4 */ cpu->r[25] = 0x101D0000u;
|
|
/* 020636B8 */ cpu->r[29] = 0x00000000u;
|
|
/* 020636BC */ cpu->r[20] = 0x101D0000u;
|
|
/* 020636C0 */ cpu->r[21] = 0x101D0000u;
|
|
/* 020636C4 */ cpu->r[22] = 0x00000001u;
|
|
/* 020636C8 */ cpu->r[26] = cpu->r[29];
|
|
/* 020636CC */ cpu->r[24] = 0x101D0000u;
|
|
/* 020636D0 */ cpu->r[25] = cpu->r[25] + 0xFFFFEC24u;
|
|
/* 020636D4 */ cpu->r[23] = 0x101D0000u;
|
|
L_020636D8: ; // 0x20636d8
|
|
/* 020636D8 */ _t60 = cpu->r[23] + 0xFFFFEC34u;
|
|
/* 020636D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 020636DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020636E0 */ cpu->r[31] = cpu->r[29];
|
|
/* 020636E4 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020636E4 */ _t62 = _t61 & 0x00000001u;
|
|
/* 020636E4 */ if (_t62) goto L_020636E8; else goto L_02063700;
|
|
L_020636E8: ; // 0x20636e8
|
|
/* 020636E8 */ cpu->r[4] = 0x101C0000u;
|
|
/* 020636EC */ cpu->r[3] = cpu->r[24] + 0x00003AE8u;
|
|
/* 020636F0 */ cpu->r[5] = 0x0000000Du;
|
|
/* 020636F4 */ cpu->r[4] = cpu->r[4] + 0x000031CCu;
|
|
/* 020636F8 */ _t63 = cpu->r[23] + 0xFFFFEC34u;
|
|
/* 020636F8 */ rbrew_write32(cpu->mem, _t63, cpu->r[22]);
|
|
/* 020636FC */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02063700: ; // 0x2063700
|
|
/* 02063700 */ _t64 = cpu->r[21] + 0xFFFFEC30u;
|
|
/* 02063700 */ cpu->r[12] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02063704 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02063708 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063708 */ _t66 = _t65 & 0x00000001u;
|
|
/* 02063708 */ if (_t66) goto L_0206370C; else goto L_02063714;
|
|
L_0206370C: ; // 0x206370c
|
|
/* 0206370C */ _t67 = cpu->r[20] + 0xFFFFEC2Cu;
|
|
/* 0206370C */ rbrew_write32(cpu->mem, _t67, cpu->r[26]);
|
|
/* 02063710 */ _t68 = cpu->r[21] + 0xFFFFEC30u;
|
|
/* 02063710 */ rbrew_write32(cpu->mem, _t68, cpu->r[22]);
|
|
L_02063714: ; // 0x2063714
|
|
/* 02063714 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000002u);
|
|
/* 02063718 */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02063718 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02063718 */ if (_t70) goto L_02063740; else goto L_0206371C;
|
|
L_0206371C: ; // 0x206371c
|
|
/* 0206371C */ cpu->r[4] = cpu->r[29];
|
|
/* 02063720 */ cpu->r[3] = cpu->r[27];
|
|
/* 02063724 */ cpu->r[5] = 0x00000000u;
|
|
/* 02063728 */ Gambit_fn_028A6634(cpu);
|
|
/* 0206372C */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02063730 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000002u);
|
|
/* 02063734 */ _t71 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02063734 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02063734 */ if (_t72) goto L_020637A8; else goto L_02063738;
|
|
L_02063738: ; // 0x2063738
|
|
/* 02063738 */ _t73 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02063738 */ _t74 = _t73 & 0x00000001u;
|
|
/* 02063738 */ if (_t74) goto L_020636D8; else goto L_0206373C;
|
|
L_0206373C: ; // 0x206373c
|
|
/* 0206373C */ goto L_020637A8;
|
|
L_02063740: ; // 0x2063740
|
|
/* 02063740 */ _t75 = cpu->r[20] + 0xFFFFEC2Cu;
|
|
/* 02063740 */ cpu->r[11] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02063744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02063748 */ _t76 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063748 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02063748 */ if (_t77) goto L_0206374C; else goto L_02063784;
|
|
L_0206374C: ; // 0x206374c
|
|
/* 0206374C */ Gambit_fn_0282A450(cpu);
|
|
/* 02063750 */ cpu->r[19] = cpu->r[3];
|
|
/* 02063754 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02063758 */ _t78 = cpu->r[20] + 0xFFFFEC2Cu;
|
|
/* 02063758 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0206375C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063760 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063760 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02063760 */ if (_t80) goto L_02063764; else goto L_02063778;
|
|
L_02063764: ; // 0x2063764
|
|
/* 02063764 */ cpu->r[5] = 0x00000002u;
|
|
/* 02063768 */ cpu->r[4] = cpu->r[24] + 0x00003AE8u;
|
|
/* 0206376C */ cpu->r[3] = cpu->r[25];
|
|
/* 02063770 */ Gambit_fn_0282A374(cpu);
|
|
/* 02063774 */ _t81 = cpu->r[20] + 0xFFFFEC2Cu;
|
|
/* 02063774 */ rbrew_write32(cpu->mem, _t81, cpu->r[25]);
|
|
L_02063778: ; // 0x2063778
|
|
/* 02063778 */ cpu->r[3] = cpu->r[19];
|
|
/* 0206377C */ Gambit_fn_02837030(cpu);
|
|
/* 02063780 */ _t82 = cpu->r[20] + 0xFFFFEC2Cu;
|
|
/* 02063780 */ cpu->r[11] = rbrew_read32(cpu->mem, _t82);
|
|
L_02063784: ; // 0x2063784
|
|
/* 02063784 */ cpu->r[4] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02063788 */ cpu->r[3] = cpu->r[27];
|
|
/* 0206378C */ _t83 = cpu->r[4] + cpu->r[11];
|
|
/* 0206378C */ cpu->r[5] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02063790 */ cpu->r[4] = cpu->r[29];
|
|
/* 02063794 */ Gambit_fn_028A6634(cpu);
|
|
/* 02063798 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0206379C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000002u);
|
|
/* 020637A0 */ _t84 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020637A0 */ _t85 = _t84 & 0x00000001u;
|
|
/* 020637A0 */ if (_t85) goto L_020637A8; else goto L_020637A4;
|
|
L_020637A4: ; // 0x20637a4
|
|
/* 020637A4 */ _t86 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020637A4 */ _t87 = _t86 & 0x00000001u;
|
|
/* 020637A4 */ if (_t87) goto L_020636D8; else goto L_020637A8;
|
|
L_020637A8: ; // 0x20637a8
|
|
/* 020637A8 */ cpu->r[3] = cpu->r[30];
|
|
/* 020637AC */ cpu->r[4] = cpu->r[27];
|
|
/* 020637B0 */ Gambit_fn_027B81E4(cpu);
|
|
/* 020637B4 */ cpu->r[9] = 0x101E0000u;
|
|
/* 020637B8 */ _t88 = cpu->r[9] + 0xFFFFD0FCu;
|
|
/* 020637B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t88);
|
|
/* 020637BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 020637C0 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 020637C4 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020637C4 */ _t90 = _t89 & 0x00000001u;
|
|
/* 020637C4 */ if (_t90) goto L_020637E0; else goto L_020637C8;
|
|
L_020637C8: ; // 0x20637c8
|
|
/* 020637C8 */ cpu->r[27] = 0x101E0000u;
|
|
/* 020637CC */ cpu->r[27] = cpu->r[27] + 0xFFFFCED8u;
|
|
/* 020637D0 */ _t91 = cpu->r[27] + 0x00000054u;
|
|
/* 020637D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t91);
|
|
/* 020637D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 020637D8 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020637D8 */ _t93 = _t92 & 0x00000001u;
|
|
/* 020637D8 */ if (_t93) goto L_020637DC; else goto L_02063934;
|
|
L_020637DC: ; // 0x20637dc
|
|
/* 020637DC */ goto L_02063840;
|
|
L_020637E0: ; // 0x20637e0
|
|
/* 020637E0 */ cpu->r[4] = 0x10000000u;
|
|
/* 020637E4 */ cpu->r[0] = 0x00000001u;
|
|
/* 020637E8 */ cpu->r[27] = 0x101E0000u;
|
|
/* 020637EC */ cpu->r[4] = cpu->r[4] + 0x00006F84u;
|
|
/* 020637F0 */ cpu->r[11] = 0x101E0000u;
|
|
/* 020637F4 */ cpu->r[27] = cpu->r[27] + 0xFFFFCED8u;
|
|
/* 020637F8 */ cpu->r[7] = 0x00000000u;
|
|
/* 020637FC */ cpu->r[5] = 0x0000000Eu;
|
|
/* 02063800 */ cpu->r[6] = cpu->r[27] + 0x00000060u;
|
|
/* 02063804 */ cpu->r[3] = cpu->r[27];
|
|
/* 02063808 */ _t94 = cpu->r[11] + 0xFFFFD0FCu;
|
|
/* 02063808 */ rbrew_write32(cpu->mem, _t94, cpu->r[0]);
|
|
/* 0206380C */ Gambit_fn_028A6750(cpu);
|
|
/* 02063810 */ cpu->r[6] = 0x02060000u;
|
|
/* 02063814 */ cpu->r[3] = cpu->r[27] + 0x00000060u;
|
|
/* 02063818 */ cpu->r[4] = 0x0000000Eu;
|
|
/* 0206381C */ cpu->r[6] = cpu->r[6] + 0x00003C38u;
|
|
/* 02063820 */ cpu->r[5] = 0x00000008u;
|
|
/* 02063824 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02063828 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0206382C */ cpu->r[3] = cpu->r[3] + 0x00003318u;
|
|
/* 02063830 */ Gambit_fn_02C83090(cpu);
|
|
/* 02063834 */ _t95 = cpu->r[27] + 0x00000054u;
|
|
/* 02063834 */ cpu->r[6] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02063838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0206383C */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206383C */ _t97 = _t96 & 0x00000001u;
|
|
/* 0206383C */ if (_t97) goto L_02063840; else goto L_02063934;
|
|
L_02063840: ; // 0x2063840
|
|
/* 02063840 */ cpu->r[25] = 0x101D0000u;
|
|
/* 02063844 */ cpu->r[31] = 0x00000000u;
|
|
/* 02063848 */ cpu->r[20] = 0x101D0000u;
|
|
/* 0206384C */ cpu->r[21] = 0x101D0000u;
|
|
/* 02063850 */ cpu->r[22] = 0x00000001u;
|
|
/* 02063854 */ cpu->r[26] = cpu->r[31];
|
|
/* 02063858 */ cpu->r[24] = 0x101D0000u;
|
|
/* 0206385C */ cpu->r[25] = cpu->r[25] + 0xFFFFEC38u;
|
|
/* 02063860 */ cpu->r[23] = 0x101D0000u;
|
|
L_02063864: ; // 0x2063864
|
|
/* 02063864 */ _t98 = cpu->r[23] + 0xFFFFEC78u;
|
|
/* 02063864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02063868 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206386C */ cpu->r[29] = cpu->r[31];
|
|
/* 02063870 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063870 */ _t100 = _t99 & 0x00000001u;
|
|
/* 02063870 */ if (_t100) goto L_02063874; else goto L_0206388C;
|
|
L_02063874: ; // 0x2063874
|
|
/* 02063874 */ cpu->r[4] = 0x101C0000u;
|
|
/* 02063878 */ cpu->r[3] = cpu->r[24] + 0x00003AF5u;
|
|
/* 0206387C */ cpu->r[5] = 0x0000008Eu;
|
|
/* 02063880 */ cpu->r[4] = cpu->r[4] + 0x000031DCu;
|
|
/* 02063884 */ _t101 = cpu->r[23] + 0xFFFFEC78u;
|
|
/* 02063884 */ rbrew_write32(cpu->mem, _t101, cpu->r[22]);
|
|
/* 02063888 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_0206388C: ; // 0x206388c
|
|
/* 0206388C */ _t102 = cpu->r[21] + 0xFFFFEC74u;
|
|
/* 0206388C */ cpu->r[8] = rbrew_read32(cpu->mem, _t102);
|
|
/* 02063890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02063894 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063894 */ _t104 = _t103 & 0x00000001u;
|
|
/* 02063894 */ if (_t104) goto L_02063898; else goto L_020638A0;
|
|
L_02063898: ; // 0x2063898
|
|
/* 02063898 */ _t105 = cpu->r[20] + 0xFFFFEC70u;
|
|
/* 02063898 */ rbrew_write32(cpu->mem, _t105, cpu->r[26]);
|
|
/* 0206389C */ _t106 = cpu->r[21] + 0xFFFFEC74u;
|
|
/* 0206389C */ rbrew_write32(cpu->mem, _t106, cpu->r[22]);
|
|
L_020638A0: ; // 0x20638a0
|
|
/* 020638A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x0000000Eu);
|
|
/* 020638A4 */ _t107 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020638A4 */ _t108 = _t107 & 0x00000001u;
|
|
/* 020638A4 */ if (_t108) goto L_020638CC; else goto L_020638A8;
|
|
L_020638A8: ; // 0x20638a8
|
|
/* 020638A8 */ cpu->r[4] = cpu->r[29];
|
|
/* 020638AC */ cpu->r[3] = cpu->r[27];
|
|
/* 020638B0 */ cpu->r[5] = 0x00000000u;
|
|
/* 020638B4 */ Gambit_fn_028A6634(cpu);
|
|
/* 020638B8 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 020638BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x0000000Eu);
|
|
/* 020638C0 */ _t109 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020638C0 */ _t110 = _t109 & 0x00000001u;
|
|
/* 020638C0 */ if (_t110) goto L_02063934; else goto L_020638C4;
|
|
L_020638C4: ; // 0x20638c4
|
|
/* 020638C4 */ _t111 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020638C4 */ _t112 = _t111 & 0x00000001u;
|
|
/* 020638C4 */ if (_t112) goto L_02063864; else goto L_020638C8;
|
|
L_020638C8: ; // 0x20638c8
|
|
/* 020638C8 */ goto L_02063934;
|
|
L_020638CC: ; // 0x20638cc
|
|
/* 020638CC */ _t113 = cpu->r[20] + 0xFFFFEC70u;
|
|
/* 020638CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t113);
|
|
/* 020638D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020638D4 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020638D4 */ _t115 = _t114 & 0x00000001u;
|
|
/* 020638D4 */ if (_t115) goto L_020638D8; else goto L_02063910;
|
|
L_020638D8: ; // 0x20638d8
|
|
/* 020638D8 */ Gambit_fn_0282A450(cpu);
|
|
/* 020638DC */ cpu->r[19] = cpu->r[3];
|
|
/* 020638E0 */ Gambit_fn_02836FFC(cpu);
|
|
/* 020638E4 */ _t116 = cpu->r[20] + 0xFFFFEC70u;
|
|
/* 020638E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t116);
|
|
/* 020638E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 020638EC */ _t117 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020638EC */ _t118 = _t117 & 0x00000001u;
|
|
/* 020638EC */ if (_t118) goto L_020638F0; else goto L_02063904;
|
|
L_020638F0: ; // 0x20638f0
|
|
/* 020638F0 */ cpu->r[5] = 0x0000000Eu;
|
|
/* 020638F4 */ cpu->r[4] = cpu->r[24] + 0x00003AF5u;
|
|
/* 020638F8 */ cpu->r[3] = cpu->r[25];
|
|
/* 020638FC */ Gambit_fn_0282A374(cpu);
|
|
/* 02063900 */ _t119 = cpu->r[20] + 0xFFFFEC70u;
|
|
/* 02063900 */ rbrew_write32(cpu->mem, _t119, cpu->r[25]);
|
|
L_02063904: ; // 0x2063904
|
|
/* 02063904 */ cpu->r[3] = cpu->r[19];
|
|
/* 02063908 */ Gambit_fn_02837030(cpu);
|
|
/* 0206390C */ _t120 = cpu->r[20] + 0xFFFFEC70u;
|
|
/* 0206390C */ cpu->r[0] = rbrew_read32(cpu->mem, _t120);
|
|
L_02063910: ; // 0x2063910
|
|
/* 02063910 */ cpu->r[4] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02063914 */ cpu->r[3] = cpu->r[27];
|
|
/* 02063918 */ _t121 = cpu->r[4] + cpu->r[0];
|
|
/* 02063918 */ cpu->r[5] = rbrew_read32(cpu->mem, _t121);
|
|
/* 0206391C */ cpu->r[4] = cpu->r[29];
|
|
/* 02063920 */ Gambit_fn_028A6634(cpu);
|
|
/* 02063924 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02063928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x0000000Eu);
|
|
/* 0206392C */ _t122 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0206392C */ _t123 = _t122 & 0x00000001u;
|
|
/* 0206392C */ if (_t123) goto L_02063934; else goto L_02063930;
|
|
L_02063930: ; // 0x2063930
|
|
/* 02063930 */ _t124 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02063930 */ _t125 = _t124 & 0x00000001u;
|
|
/* 02063930 */ if (_t125) goto L_02063864; else goto L_02063934;
|
|
L_02063934: ; // 0x2063934
|
|
/* 02063934 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063938 */ cpu->r[4] = cpu->r[27];
|
|
/* 0206393C */ Gambit_fn_027B81E4(cpu);
|
|
/* 02063940 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02063944 */ cpu->r[31] = 0x101E0000u;
|
|
/* 02063948 */ _t126 = cpu->r[8] + 0xFFFFD100u;
|
|
/* 02063948 */ cpu->r[7] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02063948 */ cpu->r[8] = _t126;
|
|
/* 0206394C */ cpu->r[31] = cpu->r[31] + 0xFFFFCFA8u;
|
|
/* 02063950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02063954 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02063958 */ _t127 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063958 */ _t128 = _t127 & 0x00000001u;
|
|
/* 02063958 */ if (_t128) goto L_0206395C; else goto L_020639A4;
|
|
L_0206395C: ; // 0x206395c
|
|
/* 0206395C */ cpu->r[0] = 0x00000001u;
|
|
/* 02063960 */ cpu->r[3] = cpu->r[31];
|
|
/* 02063964 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02063968 */ cpu->r[4] = 0x10000000u;
|
|
/* 0206396C */ cpu->r[7] = 0x00000000u;
|
|
/* 02063970 */ cpu->r[5] = 0x0000000Fu;
|
|
/* 02063974 */ cpu->r[4] = cpu->r[4] + 0x00006F68u;
|
|
/* 02063978 */ _t129 = cpu->r[8] + 0x00000000u;
|
|
/* 02063978 */ rbrew_write32(cpu->mem, _t129, cpu->r[0]);
|
|
/* 0206397C */ Gambit_fn_028A6750(cpu);
|
|
/* 02063980 */ cpu->r[6] = 0x02060000u;
|
|
/* 02063984 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 02063988 */ cpu->r[4] = 0x0000000Fu;
|
|
/* 0206398C */ cpu->r[6] = cpu->r[6] + 0x00003C38u;
|
|
/* 02063990 */ cpu->r[5] = 0x00000008u;
|
|
/* 02063994 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02063998 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0206399C */ cpu->r[3] = cpu->r[3] + 0x00003324u;
|
|
/* 020639A0 */ Gambit_fn_02C83090(cpu);
|
|
L_020639A4: ; // 0x20639a4
|
|
/* 020639A4 */ _t130 = cpu->r[31] + 0x00000054u;
|
|
/* 020639A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t130);
|
|
/* 020639A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 020639AC */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020639AC */ _t132 = _t131 & 0x00000001u;
|
|
/* 020639AC */ if (_t132) goto L_020639B0; else goto L_02063AA4;
|
|
L_020639B0: ; // 0x20639b0
|
|
/* 020639B0 */ cpu->r[25] = 0x101D0000u;
|
|
/* 020639B4 */ cpu->r[27] = 0x00000000u;
|
|
/* 020639B8 */ cpu->r[20] = 0x101D0000u;
|
|
/* 020639BC */ cpu->r[21] = 0x101D0000u;
|
|
/* 020639C0 */ cpu->r[22] = 0x00000001u;
|
|
/* 020639C4 */ cpu->r[26] = cpu->r[27];
|
|
/* 020639C8 */ cpu->r[24] = 0x101D0000u;
|
|
/* 020639CC */ cpu->r[25] = cpu->r[25] + 0xFFFFEC7Cu;
|
|
/* 020639D0 */ cpu->r[23] = 0x101D0000u;
|
|
L_020639D4: ; // 0x20639d4
|
|
/* 020639D4 */ _t133 = cpu->r[23] + 0xFFFFECC0u;
|
|
/* 020639D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t133);
|
|
/* 020639D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 020639DC */ cpu->r[29] = cpu->r[27];
|
|
/* 020639E0 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020639E0 */ _t135 = _t134 & 0x00000001u;
|
|
/* 020639E0 */ if (_t135) goto L_020639E4; else goto L_020639FC;
|
|
L_020639E4: ; // 0x20639e4
|
|
/* 020639E4 */ cpu->r[4] = 0x101C0000u;
|
|
/* 020639E8 */ cpu->r[3] = cpu->r[24] + 0x00003B83u;
|
|
/* 020639EC */ cpu->r[5] = 0x00000085u;
|
|
/* 020639F0 */ cpu->r[4] = cpu->r[4] + 0x0000326Cu;
|
|
/* 020639F4 */ _t136 = cpu->r[23] + 0xFFFFECC0u;
|
|
/* 020639F4 */ rbrew_write32(cpu->mem, _t136, cpu->r[22]);
|
|
/* 020639F8 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_020639FC: ; // 0x20639fc
|
|
/* 020639FC */ _t137 = cpu->r[21] + 0xFFFFECBCu;
|
|
/* 020639FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02063A00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02063A04 */ _t138 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063A04 */ _t139 = _t138 & 0x00000001u;
|
|
/* 02063A04 */ if (_t139) goto L_02063A08; else goto L_02063A10;
|
|
L_02063A08: ; // 0x2063a08
|
|
/* 02063A08 */ _t140 = cpu->r[20] + 0xFFFFECB8u;
|
|
/* 02063A08 */ rbrew_write32(cpu->mem, _t140, cpu->r[26]);
|
|
/* 02063A0C */ _t141 = cpu->r[21] + 0xFFFFECBCu;
|
|
/* 02063A0C */ rbrew_write32(cpu->mem, _t141, cpu->r[22]);
|
|
L_02063A10: ; // 0x2063a10
|
|
/* 02063A10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x0000000Fu);
|
|
/* 02063A14 */ _t142 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02063A14 */ _t143 = _t142 & 0x00000001u;
|
|
/* 02063A14 */ if (_t143) goto L_02063A3C; else goto L_02063A18;
|
|
L_02063A18: ; // 0x2063a18
|
|
/* 02063A18 */ cpu->r[4] = cpu->r[27];
|
|
/* 02063A1C */ cpu->r[3] = cpu->r[31];
|
|
/* 02063A20 */ cpu->r[5] = 0x00000000u;
|
|
/* 02063A24 */ Gambit_fn_028A6634(cpu);
|
|
/* 02063A28 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02063A2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x0000000Fu);
|
|
/* 02063A30 */ _t144 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02063A30 */ _t145 = _t144 & 0x00000001u;
|
|
/* 02063A30 */ if (_t145) goto L_02063AA4; else goto L_02063A34;
|
|
L_02063A34: ; // 0x2063a34
|
|
/* 02063A34 */ _t146 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02063A34 */ _t147 = _t146 & 0x00000001u;
|
|
/* 02063A34 */ if (_t147) goto L_020639D4; else goto L_02063A38;
|
|
L_02063A38: ; // 0x2063a38
|
|
/* 02063A38 */ goto L_02063AA4;
|
|
L_02063A3C: ; // 0x2063a3c
|
|
/* 02063A3C */ _t148 = cpu->r[20] + 0xFFFFECB8u;
|
|
/* 02063A3C */ cpu->r[6] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02063A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02063A44 */ _t149 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063A44 */ _t150 = _t149 & 0x00000001u;
|
|
/* 02063A44 */ if (_t150) goto L_02063A48; else goto L_02063A80;
|
|
L_02063A48: ; // 0x2063a48
|
|
/* 02063A48 */ Gambit_fn_0282A450(cpu);
|
|
/* 02063A4C */ cpu->r[19] = cpu->r[3];
|
|
/* 02063A50 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02063A54 */ _t151 = cpu->r[20] + 0xFFFFECB8u;
|
|
/* 02063A54 */ cpu->r[10] = rbrew_read32(cpu->mem, _t151);
|
|
/* 02063A58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02063A5C */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063A5C */ _t153 = _t152 & 0x00000001u;
|
|
/* 02063A5C */ if (_t153) goto L_02063A60; else goto L_02063A74;
|
|
L_02063A60: ; // 0x2063a60
|
|
/* 02063A60 */ cpu->r[5] = 0x0000000Fu;
|
|
/* 02063A64 */ cpu->r[4] = cpu->r[24] + 0x00003B83u;
|
|
/* 02063A68 */ cpu->r[3] = cpu->r[25];
|
|
/* 02063A6C */ Gambit_fn_0282A374(cpu);
|
|
/* 02063A70 */ _t154 = cpu->r[20] + 0xFFFFECB8u;
|
|
/* 02063A70 */ rbrew_write32(cpu->mem, _t154, cpu->r[25]);
|
|
L_02063A74: ; // 0x2063a74
|
|
/* 02063A74 */ cpu->r[3] = cpu->r[19];
|
|
/* 02063A78 */ Gambit_fn_02837030(cpu);
|
|
/* 02063A7C */ _t155 = cpu->r[20] + 0xFFFFECB8u;
|
|
/* 02063A7C */ cpu->r[6] = rbrew_read32(cpu->mem, _t155);
|
|
L_02063A80: ; // 0x2063a80
|
|
/* 02063A80 */ cpu->r[11] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02063A84 */ cpu->r[3] = cpu->r[31];
|
|
/* 02063A88 */ _t156 = cpu->r[11] + cpu->r[6];
|
|
/* 02063A88 */ cpu->r[5] = rbrew_read32(cpu->mem, _t156);
|
|
/* 02063A8C */ cpu->r[4] = cpu->r[27];
|
|
/* 02063A90 */ Gambit_fn_028A6634(cpu);
|
|
/* 02063A94 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02063A98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x0000000Fu);
|
|
/* 02063A9C */ _t157 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02063A9C */ _t158 = _t157 & 0x00000001u;
|
|
/* 02063A9C */ if (_t158) goto L_02063AA4; else goto L_02063AA0;
|
|
L_02063AA0: ; // 0x2063aa0
|
|
/* 02063AA0 */ _t159 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02063AA0 */ _t160 = _t159 & 0x00000001u;
|
|
/* 02063AA0 */ if (_t160) goto L_020639D4; else goto L_02063AA4;
|
|
L_02063AA4: ; // 0x2063aa4
|
|
/* 02063AA4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063AA8 */ cpu->r[4] = cpu->r[31];
|
|
/* 02063AAC */ Gambit_fn_027B81E4(cpu);
|
|
/* 02063AB0 */ cpu->r[5] = 0x101E0000u;
|
|
/* 02063AB4 */ cpu->r[31] = 0x101E0000u;
|
|
/* 02063AB8 */ _t161 = cpu->r[5] + 0xFFFFD104u;
|
|
/* 02063AB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t161);
|
|
/* 02063AB8 */ cpu->r[5] = _t161;
|
|
/* 02063ABC */ cpu->r[31] = cpu->r[31] + 0xFFFFD080u;
|
|
/* 02063AC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02063AC4 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02063AC8 */ _t162 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063AC8 */ _t163 = _t162 & 0x00000001u;
|
|
/* 02063AC8 */ if (_t163) goto L_02063ACC; else goto L_02063B14;
|
|
L_02063ACC: ; // 0x2063acc
|
|
/* 02063ACC */ cpu->r[4] = 0x10000000u;
|
|
/* 02063AD0 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02063AD4 */ cpu->r[0] = 0x00000001u;
|
|
/* 02063AD8 */ cpu->r[4] = cpu->r[4] + 0x00006F90u;
|
|
/* 02063ADC */ cpu->r[7] = 0x00000000u;
|
|
/* 02063AE0 */ _t164 = cpu->r[5] + 0x00000000u;
|
|
/* 02063AE0 */ rbrew_write32(cpu->mem, _t164, cpu->r[0]);
|
|
/* 02063AE4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02063AE8 */ cpu->r[5] = 0x00000002u;
|
|
/* 02063AEC */ Gambit_fn_028A6750(cpu);
|
|
/* 02063AF0 */ cpu->r[6] = 0x02060000u;
|
|
/* 02063AF4 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 02063AF8 */ cpu->r[4] = 0x00000002u;
|
|
/* 02063AFC */ cpu->r[6] = cpu->r[6] + 0x00003C38u;
|
|
/* 02063B00 */ cpu->r[5] = 0x00000008u;
|
|
/* 02063B04 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02063B08 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02063B0C */ cpu->r[3] = cpu->r[3] + 0x00003330u;
|
|
/* 02063B10 */ Gambit_fn_02C83090(cpu);
|
|
L_02063B14: ; // 0x2063b14
|
|
/* 02063B14 */ _t165 = cpu->r[31] + 0x00000054u;
|
|
/* 02063B14 */ cpu->r[4] = rbrew_read32(cpu->mem, _t165);
|
|
/* 02063B18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02063B1C */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063B1C */ _t167 = _t166 & 0x00000001u;
|
|
/* 02063B1C */ if (_t167) goto L_02063B20; else goto L_02063C14;
|
|
L_02063B20: ; // 0x2063b20
|
|
/* 02063B20 */ cpu->r[25] = 0x101D0000u;
|
|
/* 02063B24 */ cpu->r[29] = 0x00000000u;
|
|
/* 02063B28 */ cpu->r[20] = 0x101D0000u;
|
|
/* 02063B2C */ cpu->r[21] = 0x101D0000u;
|
|
/* 02063B30 */ cpu->r[22] = 0x00000001u;
|
|
/* 02063B34 */ cpu->r[26] = cpu->r[29];
|
|
/* 02063B38 */ cpu->r[24] = 0x101D0000u;
|
|
/* 02063B3C */ cpu->r[25] = cpu->r[25] + 0xFFFFECC4u;
|
|
/* 02063B40 */ cpu->r[23] = 0x101D0000u;
|
|
L_02063B44: ; // 0x2063b44
|
|
/* 02063B44 */ _t168 = cpu->r[23] + 0xFFFFECD4u;
|
|
/* 02063B44 */ cpu->r[5] = rbrew_read32(cpu->mem, _t168);
|
|
/* 02063B48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02063B4C */ cpu->r[27] = cpu->r[29];
|
|
/* 02063B50 */ _t169 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063B50 */ _t170 = _t169 & 0x00000001u;
|
|
/* 02063B50 */ if (_t170) goto L_02063B54; else goto L_02063B6C;
|
|
L_02063B54: ; // 0x2063b54
|
|
/* 02063B54 */ cpu->r[4] = 0x101C0000u;
|
|
/* 02063B58 */ cpu->r[3] = cpu->r[24] + 0x00003C08u;
|
|
/* 02063B5C */ cpu->r[5] = 0x00000018u;
|
|
/* 02063B60 */ cpu->r[4] = cpu->r[4] + 0x000031A0u;
|
|
/* 02063B64 */ _t171 = cpu->r[23] + 0xFFFFECD4u;
|
|
/* 02063B64 */ rbrew_write32(cpu->mem, _t171, cpu->r[22]);
|
|
/* 02063B68 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02063B6C: ; // 0x2063b6c
|
|
/* 02063B6C */ _t172 = cpu->r[21] + 0xFFFFECD0u;
|
|
/* 02063B6C */ cpu->r[6] = rbrew_read32(cpu->mem, _t172);
|
|
/* 02063B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02063B74 */ _t173 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063B74 */ _t174 = _t173 & 0x00000001u;
|
|
/* 02063B74 */ if (_t174) goto L_02063B78; else goto L_02063B80;
|
|
L_02063B78: ; // 0x2063b78
|
|
/* 02063B78 */ _t175 = cpu->r[20] + 0xFFFFECCCu;
|
|
/* 02063B78 */ rbrew_write32(cpu->mem, _t175, cpu->r[26]);
|
|
/* 02063B7C */ _t176 = cpu->r[21] + 0xFFFFECD0u;
|
|
/* 02063B7C */ rbrew_write32(cpu->mem, _t176, cpu->r[22]);
|
|
L_02063B80: ; // 0x2063b80
|
|
/* 02063B80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000002u);
|
|
/* 02063B84 */ _t177 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02063B84 */ _t178 = _t177 & 0x00000001u;
|
|
/* 02063B84 */ if (_t178) goto L_02063BAC; else goto L_02063B88;
|
|
L_02063B88: ; // 0x2063b88
|
|
/* 02063B88 */ cpu->r[4] = cpu->r[27];
|
|
/* 02063B8C */ cpu->r[3] = cpu->r[31];
|
|
/* 02063B90 */ cpu->r[5] = 0x00000000u;
|
|
/* 02063B94 */ Gambit_fn_028A6634(cpu);
|
|
/* 02063B98 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02063B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000002u);
|
|
/* 02063BA0 */ _t179 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02063BA0 */ _t180 = _t179 & 0x00000001u;
|
|
/* 02063BA0 */ if (_t180) goto L_02063C14; else goto L_02063BA4;
|
|
L_02063BA4: ; // 0x2063ba4
|
|
/* 02063BA4 */ _t181 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02063BA4 */ _t182 = _t181 & 0x00000001u;
|
|
/* 02063BA4 */ if (_t182) goto L_02063B44; else goto L_02063BA8;
|
|
L_02063BA8: ; // 0x2063ba8
|
|
/* 02063BA8 */ goto L_02063C14;
|
|
L_02063BAC: ; // 0x2063bac
|
|
/* 02063BAC */ _t183 = cpu->r[20] + 0xFFFFECCCu;
|
|
/* 02063BAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t183);
|
|
/* 02063BB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063BB4 */ _t184 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063BB4 */ _t185 = _t184 & 0x00000001u;
|
|
/* 02063BB4 */ if (_t185) goto L_02063BB8; else goto L_02063BF0;
|
|
L_02063BB8: ; // 0x2063bb8
|
|
/* 02063BB8 */ Gambit_fn_0282A450(cpu);
|
|
/* 02063BBC */ cpu->r[19] = cpu->r[3];
|
|
/* 02063BC0 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02063BC4 */ _t186 = cpu->r[20] + 0xFFFFECCCu;
|
|
/* 02063BC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t186);
|
|
/* 02063BC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063BCC */ _t187 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063BCC */ _t188 = _t187 & 0x00000001u;
|
|
/* 02063BCC */ if (_t188) goto L_02063BD0; else goto L_02063BE4;
|
|
L_02063BD0: ; // 0x2063bd0
|
|
/* 02063BD0 */ cpu->r[5] = 0x00000002u;
|
|
/* 02063BD4 */ cpu->r[4] = cpu->r[24] + 0x00003C08u;
|
|
/* 02063BD8 */ cpu->r[3] = cpu->r[25];
|
|
/* 02063BDC */ Gambit_fn_0282A374(cpu);
|
|
/* 02063BE0 */ _t189 = cpu->r[20] + 0xFFFFECCCu;
|
|
/* 02063BE0 */ rbrew_write32(cpu->mem, _t189, cpu->r[25]);
|
|
L_02063BE4: ; // 0x2063be4
|
|
/* 02063BE4 */ cpu->r[3] = cpu->r[19];
|
|
/* 02063BE8 */ Gambit_fn_02837030(cpu);
|
|
/* 02063BEC */ _t190 = cpu->r[20] + 0xFFFFECCCu;
|
|
/* 02063BEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t190);
|
|
L_02063BF0: ; // 0x2063bf0
|
|
/* 02063BF0 */ cpu->r[8] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02063BF4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02063BF8 */ _t191 = cpu->r[8] + cpu->r[0];
|
|
/* 02063BF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t191);
|
|
/* 02063BFC */ cpu->r[4] = cpu->r[27];
|
|
/* 02063C00 */ Gambit_fn_028A6634(cpu);
|
|
/* 02063C04 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02063C08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000002u);
|
|
/* 02063C0C */ _t192 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02063C0C */ _t193 = _t192 & 0x00000001u;
|
|
/* 02063C0C */ if (_t193) goto L_02063C14; else goto L_02063C10;
|
|
L_02063C10: ; // 0x2063c10
|
|
/* 02063C10 */ _t194 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02063C10 */ _t195 = _t194 & 0x00000001u;
|
|
/* 02063C10 */ if (_t195) goto L_02063B44; else goto L_02063C14;
|
|
L_02063C14: ; // 0x2063c14
|
|
/* 02063C14 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063C18 */ cpu->r[4] = cpu->r[31];
|
|
/* 02063C1C */ Gambit_fn_027B81E4(cpu);
|
|
/* 02063C20 */ cpu->r[3] = cpu->r[28] + 0x00000001u;
|
|
/* 02063C24 */ /* nop */
|
|
/* 02063C28 */ _t196 = cpu->r[1] + 0x00000044u;
|
|
/* 02063C28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t196);
|
|
/* 02063C2C */ cpu->lr = cpu->r[0];
|
|
/* 02063C30 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02063C34 */ return;
|
|
}
|
|
|
|
// fn_02063C44 @ 0x2063c44
|
|
void Gambit_fn_02063C44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02063C44: ; // 0x2063c44
|
|
/* 02063C44 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02063C44 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02063C44 */ cpu->r[1] = _t0;
|
|
/* 02063C48 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063C48 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02063C48 */ if (_t2) goto L_02063C4C; else goto L_02063C5C;
|
|
L_02063C4C: ; // 0x2063c4c
|
|
/* 02063C4C */ cpu->r[3] = 0x00000008u;
|
|
/* 02063C50 */ Gambit_fn_02801A78(cpu);
|
|
/* 02063C54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02063C58 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063C58 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02063C58 */ if (_t4) goto L_02063C6C; else goto L_02063C5C;
|
|
L_02063C5C: ; // 0x2063c5c
|
|
/* 02063C5C */ cpu->r[12] = 0x00000000u;
|
|
/* 02063C60 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02063C64 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02063C64 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02063C68 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02063C68 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_02063C6C: ; // 0x2063c6c
|
|
/* 02063C6C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063C6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02063C70 */ cpu->lr = cpu->r[0];
|
|
/* 02063C74 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02063C78 */ return;
|
|
}
|
|
|
|
// fn_02063C7C @ 0x2063c7c
|
|
void Gambit_fn_02063C7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02063C7C: ; // 0x2063c7c
|
|
/* 02063C7C */ cpu->r[0] = cpu->lr;
|
|
/* 02063C80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02063C80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02063C80 */ cpu->r[1] = _t0;
|
|
/* 02063C84 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063C84 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02063C88 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02063C88 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02063C8C */ cpu->r[30] = cpu->r[3];
|
|
/* 02063C8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02063C90 */ cpu->r[31] = cpu->r[4];
|
|
/* 02063C94 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02063C94 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02063C98 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063C98 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02063C98 */ if (_t5) goto L_02063CB8; else goto L_02063C9C;
|
|
L_02063C9C: ; // 0x2063c9c
|
|
/* 02063C9C */ cpu->r[3] = cpu->r[30];
|
|
/* 02063CA0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02063CA4 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02063CA8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02063CA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063CAC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063CAC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02063CAC */ if (_t7) goto L_02063CB8; else goto L_02063CB0;
|
|
L_02063CB0: ; // 0x2063cb0
|
|
/* 02063CB0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063CB4 */ Gambit_fn_02801BB0(cpu);
|
|
L_02063CB8: ; // 0x2063cb8
|
|
/* 02063CB8 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02063CB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02063CBC */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02063CBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02063CC0 */ cpu->lr = cpu->r[0];
|
|
/* 02063CC4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063CC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02063CC8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02063CCC */ return;
|
|
}
|
|
|
|
// fn_02063C80 @ 0x2063c80
|
|
void Gambit_fn_02063C80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02063C80: ; // 0x2063c80
|
|
/* 02063C80 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02063C80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02063C80 */ cpu->r[1] = _t0;
|
|
/* 02063C84 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063C84 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02063C88 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02063C88 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02063C8C */ cpu->r[30] = cpu->r[3];
|
|
/* 02063C8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02063C90 */ cpu->r[31] = cpu->r[4];
|
|
/* 02063C94 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02063C94 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02063C98 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063C98 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02063C98 */ if (_t5) goto L_02063CB8; else goto L_02063C9C;
|
|
L_02063C9C: ; // 0x2063c9c
|
|
/* 02063C9C */ cpu->r[3] = cpu->r[30];
|
|
/* 02063CA0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02063CA4 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02063CA8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02063CA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063CAC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063CAC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02063CAC */ if (_t7) goto L_02063CB8; else goto L_02063CB0;
|
|
L_02063CB0: ; // 0x2063cb0
|
|
/* 02063CB0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063CB4 */ Gambit_fn_02801BB0(cpu);
|
|
L_02063CB8: ; // 0x2063cb8
|
|
/* 02063CB8 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02063CB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02063CBC */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02063CBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02063CC0 */ cpu->lr = cpu->r[0];
|
|
/* 02063CC4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063CC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02063CC8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02063CCC */ return;
|
|
}
|
|
|
|
// fn_02063CD0 @ 0x2063cd0
|
|
void Gambit_fn_02063CD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02063CD0: ; // 0x2063cd0
|
|
/* 02063CD0 */ cpu->r[0] = cpu->lr;
|
|
/* 02063CD4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02063CD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02063CD4 */ cpu->r[1] = _t0;
|
|
/* 02063CD8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063CD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02063CDC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02063CDC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02063CE0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02063CE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02063CE4 */ cpu->r[31] = cpu->r[4];
|
|
/* 02063CE8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02063CE8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02063CEC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063CEC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02063CEC */ if (_t5) goto L_02063D0C; else goto L_02063CF0;
|
|
L_02063CF0: ; // 0x2063cf0
|
|
/* 02063CF0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063CF4 */ cpu->r[4] = 0x00000000u;
|
|
/* 02063CF8 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02063CFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02063CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063D00 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063D00 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02063D00 */ if (_t7) goto L_02063D0C; else goto L_02063D04;
|
|
L_02063D04: ; // 0x2063d04
|
|
/* 02063D04 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063D08 */ Gambit_fn_02801BB0(cpu);
|
|
L_02063D0C: ; // 0x2063d0c
|
|
/* 02063D0C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02063D0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02063D10 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02063D10 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02063D14 */ cpu->lr = cpu->r[0];
|
|
/* 02063D18 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063D18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02063D1C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02063D20 */ return;
|
|
}
|
|
|
|
// fn_02063CD4 @ 0x2063cd4
|
|
void Gambit_fn_02063CD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02063CD4: ; // 0x2063cd4
|
|
/* 02063CD4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02063CD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02063CD4 */ cpu->r[1] = _t0;
|
|
/* 02063CD8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063CD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02063CDC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02063CDC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02063CE0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02063CE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02063CE4 */ cpu->r[31] = cpu->r[4];
|
|
/* 02063CE8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02063CE8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02063CEC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063CEC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02063CEC */ if (_t5) goto L_02063D0C; else goto L_02063CF0;
|
|
L_02063CF0: ; // 0x2063cf0
|
|
/* 02063CF0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063CF4 */ cpu->r[4] = 0x00000000u;
|
|
/* 02063CF8 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02063CFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02063CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063D00 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063D00 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02063D00 */ if (_t7) goto L_02063D0C; else goto L_02063D04;
|
|
L_02063D04: ; // 0x2063d04
|
|
/* 02063D04 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063D08 */ Gambit_fn_02801BB0(cpu);
|
|
L_02063D0C: ; // 0x2063d0c
|
|
/* 02063D0C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02063D0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02063D10 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02063D10 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02063D14 */ cpu->lr = cpu->r[0];
|
|
/* 02063D18 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063D18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02063D1C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02063D20 */ return;
|
|
}
|
|
|
|
// fn_02063D24 @ 0x2063d24
|
|
void Gambit_fn_02063D24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02063D24: ; // 0x2063d24
|
|
/* 02063D24 */ cpu->r[0] = cpu->lr;
|
|
/* 02063D28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02063D28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02063D28 */ cpu->r[1] = _t0;
|
|
/* 02063D2C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063D2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02063D30 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02063D30 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02063D34 */ cpu->r[30] = cpu->r[3];
|
|
/* 02063D34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02063D38 */ cpu->r[31] = cpu->r[4];
|
|
/* 02063D3C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02063D3C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02063D40 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063D40 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02063D40 */ if (_t5) goto L_02063D60; else goto L_02063D44;
|
|
L_02063D44: ; // 0x2063d44
|
|
/* 02063D44 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063D48 */ cpu->r[4] = 0x00000000u;
|
|
/* 02063D4C */ Gambit_fn_028A65C0(cpu);
|
|
/* 02063D50 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02063D50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063D54 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063D54 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02063D54 */ if (_t7) goto L_02063D60; else goto L_02063D58;
|
|
L_02063D58: ; // 0x2063d58
|
|
/* 02063D58 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063D5C */ Gambit_fn_02801BB0(cpu);
|
|
L_02063D60: ; // 0x2063d60
|
|
/* 02063D60 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02063D60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02063D64 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02063D64 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02063D68 */ cpu->lr = cpu->r[0];
|
|
/* 02063D6C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063D6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02063D70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02063D74 */ return;
|
|
}
|
|
|
|
// fn_02063D28 @ 0x2063d28
|
|
void Gambit_fn_02063D28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02063D28: ; // 0x2063d28
|
|
/* 02063D28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02063D28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02063D28 */ cpu->r[1] = _t0;
|
|
/* 02063D2C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063D2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02063D30 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02063D30 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02063D34 */ cpu->r[30] = cpu->r[3];
|
|
/* 02063D34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02063D38 */ cpu->r[31] = cpu->r[4];
|
|
/* 02063D3C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02063D3C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02063D40 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063D40 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02063D40 */ if (_t5) goto L_02063D60; else goto L_02063D44;
|
|
L_02063D44: ; // 0x2063d44
|
|
/* 02063D44 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063D48 */ cpu->r[4] = 0x00000000u;
|
|
/* 02063D4C */ Gambit_fn_028A65C0(cpu);
|
|
/* 02063D50 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02063D50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063D54 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063D54 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02063D54 */ if (_t7) goto L_02063D60; else goto L_02063D58;
|
|
L_02063D58: ; // 0x2063d58
|
|
/* 02063D58 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063D5C */ Gambit_fn_02801BB0(cpu);
|
|
L_02063D60: ; // 0x2063d60
|
|
/* 02063D60 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02063D60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02063D64 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02063D64 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02063D68 */ cpu->lr = cpu->r[0];
|
|
/* 02063D6C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063D6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02063D70 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02063D74 */ return;
|
|
}
|
|
|
|
// fn_02063D78 @ 0x2063d78
|
|
void Gambit_fn_02063D78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02063D78: ; // 0x2063d78
|
|
/* 02063D78 */ cpu->r[0] = cpu->lr;
|
|
/* 02063D7C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02063D7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02063D7C */ cpu->r[1] = _t0;
|
|
/* 02063D80 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063D80 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02063D84 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02063D84 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02063D88 */ cpu->r[30] = cpu->r[3];
|
|
/* 02063D88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02063D8C */ cpu->r[31] = cpu->r[4];
|
|
/* 02063D90 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02063D90 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02063D94 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063D94 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02063D94 */ if (_t5) goto L_02063DB4; else goto L_02063D98;
|
|
L_02063D98: ; // 0x2063d98
|
|
/* 02063D98 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063D9C */ cpu->r[4] = 0x00000000u;
|
|
/* 02063DA0 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02063DA4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02063DA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063DA8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063DA8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02063DA8 */ if (_t7) goto L_02063DB4; else goto L_02063DAC;
|
|
L_02063DAC: ; // 0x2063dac
|
|
/* 02063DAC */ cpu->r[3] = cpu->r[30];
|
|
/* 02063DB0 */ Gambit_fn_02801BB0(cpu);
|
|
L_02063DB4: ; // 0x2063db4
|
|
/* 02063DB4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02063DB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02063DB8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02063DB8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02063DBC */ cpu->lr = cpu->r[0];
|
|
/* 02063DC0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063DC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02063DC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02063DC8 */ return;
|
|
}
|
|
|
|
// fn_02063D7C @ 0x2063d7c
|
|
void Gambit_fn_02063D7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02063D7C: ; // 0x2063d7c
|
|
/* 02063D7C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02063D7C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02063D7C */ cpu->r[1] = _t0;
|
|
/* 02063D80 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063D80 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02063D84 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02063D84 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02063D88 */ cpu->r[30] = cpu->r[3];
|
|
/* 02063D88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02063D8C */ cpu->r[31] = cpu->r[4];
|
|
/* 02063D90 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02063D90 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02063D94 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063D94 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02063D94 */ if (_t5) goto L_02063DB4; else goto L_02063D98;
|
|
L_02063D98: ; // 0x2063d98
|
|
/* 02063D98 */ cpu->r[3] = cpu->r[30];
|
|
/* 02063D9C */ cpu->r[4] = 0x00000000u;
|
|
/* 02063DA0 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02063DA4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02063DA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063DA8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063DA8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02063DA8 */ if (_t7) goto L_02063DB4; else goto L_02063DAC;
|
|
L_02063DAC: ; // 0x2063dac
|
|
/* 02063DAC */ cpu->r[3] = cpu->r[30];
|
|
/* 02063DB0 */ Gambit_fn_02801BB0(cpu);
|
|
L_02063DB4: ; // 0x2063db4
|
|
/* 02063DB4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02063DB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02063DB8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02063DB8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02063DBC */ cpu->lr = cpu->r[0];
|
|
/* 02063DC0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02063DC0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02063DC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02063DC8 */ return;
|
|
}
|
|
|
|
// fn_02063DCC @ 0x2063dcc
|
|
void Gambit_fn_02063DCC(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_02063DCC: ; // 0x2063dcc
|
|
/* 02063DCC */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02063DCC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02063DCC */ cpu->r[1] = _t0;
|
|
/* 02063DD0 */ /* nop */
|
|
/* 02063DD4 */ cpu->r[0] = cpu->lr;
|
|
/* 02063DD8 */ cpu->r[23] = cpu->r[3];
|
|
/* 02063DDC */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 02063DDC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02063DE0 */ Gambit_fn_02062AF0(cpu);
|
|
/* 02063DE4 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02063DE8 */ _t2 = cpu->r[7] + 0xFFFFD1BCu;
|
|
/* 02063DE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02063DE8 */ cpu->r[7] = _t2;
|
|
/* 02063DEC */ cpu->r[31] = 0x101E0000u;
|
|
/* 02063DF0 */ cpu->r[22] = cpu->r[3];
|
|
/* 02063DF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063DF8 */ cpu->r[31] = cpu->r[31] + 0xFFFFD134u;
|
|
/* 02063DFC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063DFC */ _t4 = _t3 & 0x00000001u;
|
|
/* 02063DFC */ if (_t4) goto L_02063E00; else goto L_02063E48;
|
|
L_02063E00: ; // 0x2063e00
|
|
/* 02063E00 */ cpu->r[12] = 0x00000001u;
|
|
/* 02063E04 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02063E08 */ cpu->r[4] = 0x10000000u;
|
|
/* 02063E0C */ _t5 = cpu->r[7] + 0x00000000u;
|
|
/* 02063E0C */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02063E10 */ cpu->r[3] = cpu->r[31];
|
|
/* 02063E14 */ cpu->r[5] = 0x00000005u;
|
|
/* 02063E18 */ cpu->r[4] = cpu->r[4] + 0x00006FC4u;
|
|
/* 02063E1C */ cpu->r[7] = 0x00000000u;
|
|
/* 02063E20 */ Gambit_fn_028A6750(cpu);
|
|
/* 02063E24 */ cpu->r[6] = 0x02060000u;
|
|
/* 02063E28 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 02063E2C */ cpu->r[4] = 0x00000005u;
|
|
/* 02063E30 */ cpu->r[6] = cpu->r[6] + 0x00003FD8u;
|
|
/* 02063E34 */ cpu->r[5] = 0x00000008u;
|
|
/* 02063E38 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02063E3C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02063E40 */ cpu->r[3] = cpu->r[3] + 0x00003368u;
|
|
/* 02063E44 */ Gambit_fn_02C83090(cpu);
|
|
L_02063E48: ; // 0x2063e48
|
|
/* 02063E48 */ _t6 = cpu->r[31] + 0x00000054u;
|
|
/* 02063E48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02063E4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063E50 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063E50 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02063E50 */ if (_t8) goto L_02063E54; else goto L_02063F48;
|
|
L_02063E54: ; // 0x2063e54
|
|
/* 02063E54 */ cpu->r[27] = 0x101D0000u;
|
|
/* 02063E58 */ cpu->r[30] = 0xFFFFFFFFu;
|
|
/* 02063E5C */ cpu->r[19] = 0x101D0000u;
|
|
/* 02063E60 */ cpu->r[20] = 0x101D0000u;
|
|
/* 02063E64 */ cpu->r[21] = 0x101D0000u;
|
|
/* 02063E68 */ cpu->r[24] = 0x00000001u;
|
|
/* 02063E6C */ cpu->r[27] = cpu->r[27] + 0xFFFFECECu;
|
|
/* 02063E70 */ cpu->r[28] = 0x00000000u;
|
|
/* 02063E74 */ cpu->r[26] = 0x101D0000u;
|
|
L_02063E78: ; // 0x2063e78
|
|
/* 02063E78 */ _t9 = cpu->r[21] + 0xFFFFD930u;
|
|
/* 02063E78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02063E7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063E80 */ cpu->r[25] = cpu->r[30] + 0x00000001u;
|
|
/* 02063E84 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063E84 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02063E84 */ if (_t11) goto L_02063E88; else goto L_02063EA0;
|
|
L_02063E88: ; // 0x2063e88
|
|
/* 02063E88 */ cpu->r[4] = 0x101C0000u;
|
|
/* 02063E8C */ cpu->r[3] = cpu->r[26] + 0x00003C20u;
|
|
/* 02063E90 */ cpu->r[5] = 0x00000029u;
|
|
/* 02063E94 */ cpu->r[4] = cpu->r[4] + 0x0000333Cu;
|
|
/* 02063E98 */ _t12 = cpu->r[21] + 0xFFFFD930u;
|
|
/* 02063E98 */ rbrew_write32(cpu->mem, _t12, cpu->r[24]);
|
|
/* 02063E9C */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02063EA0: ; // 0x2063ea0
|
|
/* 02063EA0 */ _t13 = cpu->r[20] + 0xFFFFD92Cu;
|
|
/* 02063EA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02063EA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02063EA8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063EA8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02063EA8 */ if (_t15) goto L_02063EAC; else goto L_02063EB4;
|
|
L_02063EAC: ; // 0x2063eac
|
|
/* 02063EAC */ _t16 = cpu->r[19] + 0xFFFFED00u;
|
|
/* 02063EAC */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 02063EB0 */ _t17 = cpu->r[20] + 0xFFFFD92Cu;
|
|
/* 02063EB0 */ rbrew_write32(cpu->mem, _t17, cpu->r[24]);
|
|
L_02063EB4: ; // 0x2063eb4
|
|
/* 02063EB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000005u);
|
|
/* 02063EB8 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02063EB8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02063EB8 */ if (_t19) goto L_02063EE0; else goto L_02063EBC;
|
|
L_02063EBC: ; // 0x2063ebc
|
|
/* 02063EBC */ cpu->r[4] = cpu->r[30];
|
|
/* 02063EC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02063EC4 */ cpu->r[5] = 0x00000000u;
|
|
/* 02063EC8 */ Gambit_fn_028A6634(cpu);
|
|
/* 02063ECC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02063ED0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000004u);
|
|
/* 02063ED4 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02063ED4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02063ED4 */ if (_t21) goto L_02063F48; else goto L_02063ED8;
|
|
L_02063ED8: ; // 0x2063ed8
|
|
/* 02063ED8 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02063ED8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02063ED8 */ if (_t23) goto L_02063E78; else goto L_02063EDC;
|
|
L_02063EDC: ; // 0x2063edc
|
|
/* 02063EDC */ goto L_02063F48;
|
|
L_02063EE0: ; // 0x2063ee0
|
|
/* 02063EE0 */ _t24 = cpu->r[19] + 0xFFFFED00u;
|
|
/* 02063EE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02063EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063EE8 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063EE8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02063EE8 */ if (_t26) goto L_02063EEC; else goto L_02063F24;
|
|
L_02063EEC: ; // 0x2063eec
|
|
/* 02063EEC */ Gambit_fn_0282A450(cpu);
|
|
/* 02063EF0 */ cpu->r[29] = cpu->r[3];
|
|
/* 02063EF4 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02063EF8 */ _t27 = cpu->r[19] + 0xFFFFED00u;
|
|
/* 02063EF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02063EFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02063F00 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063F00 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02063F00 */ if (_t29) goto L_02063F04; else goto L_02063F18;
|
|
L_02063F04: ; // 0x2063f04
|
|
/* 02063F04 */ cpu->r[5] = 0x00000005u;
|
|
/* 02063F08 */ cpu->r[4] = cpu->r[26] + 0x00003C20u;
|
|
/* 02063F0C */ cpu->r[3] = cpu->r[27];
|
|
/* 02063F10 */ Gambit_fn_0282A374(cpu);
|
|
/* 02063F14 */ _t30 = cpu->r[19] + 0xFFFFED00u;
|
|
/* 02063F14 */ rbrew_write32(cpu->mem, _t30, cpu->r[27]);
|
|
L_02063F18: ; // 0x2063f18
|
|
/* 02063F18 */ cpu->r[3] = cpu->r[29];
|
|
/* 02063F1C */ Gambit_fn_02837030(cpu);
|
|
/* 02063F20 */ _t31 = cpu->r[19] + 0xFFFFED00u;
|
|
/* 02063F20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
L_02063F24: ; // 0x2063f24
|
|
/* 02063F24 */ cpu->r[12] = rbrew_rlwinm(cpu->r[25], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02063F28 */ cpu->r[3] = cpu->r[31];
|
|
/* 02063F2C */ _t32 = cpu->r[12] + cpu->r[0];
|
|
/* 02063F2C */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02063F30 */ cpu->r[4] = cpu->r[30];
|
|
/* 02063F34 */ Gambit_fn_028A6634(cpu);
|
|
/* 02063F38 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02063F3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000004u);
|
|
/* 02063F40 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02063F40 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02063F40 */ if (_t34) goto L_02063F48; else goto L_02063F44;
|
|
L_02063F44: ; // 0x2063f44
|
|
/* 02063F44 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02063F44 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02063F44 */ if (_t36) goto L_02063E78; else goto L_02063F48;
|
|
L_02063F48: ; // 0x2063f48
|
|
/* 02063F48 */ cpu->r[3] = cpu->r[23];
|
|
/* 02063F4C */ cpu->r[4] = cpu->r[31];
|
|
/* 02063F50 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02063F54 */ cpu->r[3] = cpu->r[22] + 0x00000001u;
|
|
/* 02063F58 */ /* nop */
|
|
/* 02063F5C */ _t37 = cpu->r[1] + 0x00000044u;
|
|
/* 02063F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02063F60 */ cpu->lr = cpu->r[0];
|
|
/* 02063F64 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02063F68 */ return;
|
|
}
|
|
|
|
// fn_02063F6C @ 0x2063f6c
|
|
void Gambit_fn_02063F6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02063F6C: ; // 0x2063f6c
|
|
/* 02063F6C */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02063F70 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02063F70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02063F70 */ cpu->r[1] = _t0;
|
|
/* 02063F74 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02063F78 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02063F7C */ _t1 = cpu->r[10] + 0xFFFFD108u;
|
|
/* 02063F7C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02063F7C */ cpu->r[10] = _t1;
|
|
/* 02063F80 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02063F84 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02063F84 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02063F88 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02063F8C */ cpu->r[8] = 0x101E0000u;
|
|
/* 02063F90 */ _t3 = cpu->r[7] + 0xFFFFD118u;
|
|
/* 02063F90 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02063F90 */ cpu->r[7] = _t3;
|
|
/* 02063F94 */ _t4 = cpu->r[8] + 0xFFFFD110u;
|
|
/* 02063F94 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02063F94 */ cpu->r[8] = _t4;
|
|
/* 02063F98 */ cpu->r[0] = 0x00000002u;
|
|
/* 02063F9C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02063F9C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02063FA0 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02063FA4 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02063FA4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02063FA8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02063FAC */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02063FAC */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02063FB0 */ _t8 = cpu->r[8] + 0xFFFFD128u;
|
|
/* 02063FB0 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02063FB0 */ cpu->r[8] = _t8;
|
|
/* 02063FB4 */ _t9 = cpu->r[12] + 0xFFFFD120u;
|
|
/* 02063FB4 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02063FB4 */ cpu->r[12] = _t9;
|
|
/* 02063FB8 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02063FB8 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02063FBC */ cpu->r[0] = 0x00000004u;
|
|
/* 02063FC0 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02063FC0 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02063FC4 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02063FC8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02063FC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02063FCC */ _t13 = cpu->r[11] + 0xFFFFD130u;
|
|
/* 02063FCC */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02063FD0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02063FD4 */ return;
|
|
}
|
|
|
|
// fn_02063F70 @ 0x2063f70
|
|
void Gambit_fn_02063F70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02063F70: ; // 0x2063f70
|
|
/* 02063F70 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02063F70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02063F70 */ cpu->r[1] = _t0;
|
|
/* 02063F74 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02063F78 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02063F7C */ _t1 = cpu->r[10] + 0xFFFFD108u;
|
|
/* 02063F7C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02063F7C */ cpu->r[10] = _t1;
|
|
/* 02063F80 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02063F84 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02063F84 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02063F88 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02063F8C */ cpu->r[8] = 0x101E0000u;
|
|
/* 02063F90 */ _t3 = cpu->r[7] + 0xFFFFD118u;
|
|
/* 02063F90 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02063F90 */ cpu->r[7] = _t3;
|
|
/* 02063F94 */ _t4 = cpu->r[8] + 0xFFFFD110u;
|
|
/* 02063F94 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02063F94 */ cpu->r[8] = _t4;
|
|
/* 02063F98 */ cpu->r[0] = 0x00000002u;
|
|
/* 02063F9C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02063F9C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02063FA0 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02063FA4 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02063FA4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02063FA8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02063FAC */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02063FAC */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02063FB0 */ _t8 = cpu->r[8] + 0xFFFFD128u;
|
|
/* 02063FB0 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02063FB0 */ cpu->r[8] = _t8;
|
|
/* 02063FB4 */ _t9 = cpu->r[12] + 0xFFFFD120u;
|
|
/* 02063FB4 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02063FB4 */ cpu->r[12] = _t9;
|
|
/* 02063FB8 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02063FB8 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02063FBC */ cpu->r[0] = 0x00000004u;
|
|
/* 02063FC0 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02063FC0 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02063FC4 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02063FC8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02063FC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02063FCC */ _t13 = cpu->r[11] + 0xFFFFD130u;
|
|
/* 02063FCC */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02063FD0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02063FD4 */ return;
|
|
}
|
|
|
|
// fn_02063FE4 @ 0x2063fe4
|
|
void Gambit_fn_02063FE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02063FE4: ; // 0x2063fe4
|
|
/* 02063FE4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02063FE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02063FE4 */ cpu->r[1] = _t0;
|
|
/* 02063FE8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063FE8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02063FE8 */ if (_t2) goto L_02063FEC; else goto L_02063FFC;
|
|
L_02063FEC: ; // 0x2063fec
|
|
/* 02063FEC */ cpu->r[3] = 0x00000008u;
|
|
/* 02063FF0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02063FF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02063FF8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02063FF8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02063FF8 */ if (_t4) goto L_0206400C; else goto L_02063FFC;
|
|
L_02063FFC: ; // 0x2063ffc
|
|
/* 02063FFC */ cpu->r[12] = 0x00000000u;
|
|
/* 02064000 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02064004 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02064004 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02064008 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02064008 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_0206400C: ; // 0x206400c
|
|
/* 0206400C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206400C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02064010 */ cpu->lr = cpu->r[0];
|
|
/* 02064014 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02064018 */ return;
|
|
}
|
|
|
|
// fn_0206401C @ 0x206401c
|
|
void Gambit_fn_0206401C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0206401C: ; // 0x206401c
|
|
/* 0206401C */ cpu->r[0] = cpu->lr;
|
|
/* 02064020 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064020 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064020 */ cpu->r[1] = _t0;
|
|
/* 02064024 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064024 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02064028 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02064028 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206402C */ cpu->r[30] = cpu->r[3];
|
|
/* 0206402C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02064030 */ cpu->r[31] = cpu->r[4];
|
|
/* 02064034 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02064034 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02064038 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064038 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02064038 */ if (_t5) goto L_02064058; else goto L_0206403C;
|
|
L_0206403C: ; // 0x206403c
|
|
/* 0206403C */ cpu->r[3] = cpu->r[30];
|
|
/* 02064040 */ cpu->r[4] = 0x00000000u;
|
|
/* 02064044 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02064048 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02064048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206404C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206404C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206404C */ if (_t7) goto L_02064058; else goto L_02064050;
|
|
L_02064050: ; // 0x2064050
|
|
/* 02064050 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064054 */ Gambit_fn_02801BB0(cpu);
|
|
L_02064058: ; // 0x2064058
|
|
/* 02064058 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02064058 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206405C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0206405C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064060 */ cpu->lr = cpu->r[0];
|
|
/* 02064064 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064064 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02064068 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206406C */ return;
|
|
}
|
|
|
|
// fn_02064020 @ 0x2064020
|
|
void Gambit_fn_02064020(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02064020: ; // 0x2064020
|
|
/* 02064020 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064020 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064020 */ cpu->r[1] = _t0;
|
|
/* 02064024 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064024 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02064028 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02064028 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206402C */ cpu->r[30] = cpu->r[3];
|
|
/* 0206402C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02064030 */ cpu->r[31] = cpu->r[4];
|
|
/* 02064034 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02064034 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02064038 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064038 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02064038 */ if (_t5) goto L_02064058; else goto L_0206403C;
|
|
L_0206403C: ; // 0x206403c
|
|
/* 0206403C */ cpu->r[3] = cpu->r[30];
|
|
/* 02064040 */ cpu->r[4] = 0x00000000u;
|
|
/* 02064044 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02064048 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02064048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206404C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206404C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206404C */ if (_t7) goto L_02064058; else goto L_02064050;
|
|
L_02064050: ; // 0x2064050
|
|
/* 02064050 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064054 */ Gambit_fn_02801BB0(cpu);
|
|
L_02064058: ; // 0x2064058
|
|
/* 02064058 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02064058 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206405C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0206405C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064060 */ cpu->lr = cpu->r[0];
|
|
/* 02064064 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064064 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02064068 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206406C */ return;
|
|
}
|
|
|
|
// fn_02064070 @ 0x2064070
|
|
void Gambit_fn_02064070(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02064070: ; // 0x2064070
|
|
/* 02064070 */ cpu->r[0] = cpu->lr;
|
|
/* 02064074 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064074 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064074 */ cpu->r[1] = _t0;
|
|
/* 02064078 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064078 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206407C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206407C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02064080 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 02064080 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02064084 */ cpu->r[31] = cpu->r[3];
|
|
/* 02064088 */ /* nop */
|
|
/* 0206408C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02064090 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064094 */ Gambit_fn_020640AC(cpu);
|
|
/* 02064098 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02064098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206409C */ cpu->lr = cpu->r[0];
|
|
/* 020640A0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020640A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020640A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020640A8 */ return;
|
|
}
|
|
|
|
// fn_02064074 @ 0x2064074
|
|
void Gambit_fn_02064074(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02064074: ; // 0x2064074
|
|
/* 02064074 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064074 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064074 */ cpu->r[1] = _t0;
|
|
/* 02064078 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064078 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206407C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206407C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02064080 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 02064080 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02064084 */ cpu->r[31] = cpu->r[3];
|
|
/* 02064088 */ /* nop */
|
|
/* 0206408C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02064090 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064094 */ Gambit_fn_020640AC(cpu);
|
|
/* 02064098 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02064098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206409C */ cpu->lr = cpu->r[0];
|
|
/* 020640A0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020640A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020640A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020640A8 */ return;
|
|
}
|
|
|
|
// fn_020640AC @ 0x20640ac
|
|
void Gambit_fn_020640AC(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_020640AC: ; // 0x20640ac
|
|
/* 020640AC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 020640AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 020640B0 */ /* nop */
|
|
/* 020640B4 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 020640B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 020640B8 */ cpu->r[8] = cpu->r[0];
|
|
/* 020640BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 020640C0 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 020640C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 020640C4 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020640C4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 020640C4 */ if (_t4) goto L_020640C8; else goto L_020640E0;
|
|
L_020640C8: ; // 0x20640c8
|
|
/* 020640C8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020640CC */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 020640D0 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 020640D0 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 020640D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 020640D8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020640D8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 020640D8 */ if (_t7) goto L_020640DC; else goto L_020640EC;
|
|
L_020640DC: ; // 0x20640dc
|
|
/* 020640DC */ return;
|
|
L_020640E0: ; // 0x20640e0
|
|
/* 020640E0 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 020640E0 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 020640E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 020640E8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020640E8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 020640E8 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 020640E8 */ goto L_020640EC;
|
|
L_020640EC: ; // 0x20640ec
|
|
/* 020640EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 020640F0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 020640F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020640F4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020640F4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 020640F4 */ if (_t13) goto L_020640F8; else goto L_02064100;
|
|
L_020640F8: ; // 0x20640f8
|
|
/* 020640F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020640FC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02064100: ; // 0x2064100
|
|
/* 02064100 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02064100 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02064104 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02064104 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02064108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206410C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206410C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02064110 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 02064114 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064114 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02064114 */ if (_t18) goto L_0206412C; else goto L_02064118;
|
|
L_02064118: ; // 0x2064118
|
|
/* 02064118 */ /* nop */
|
|
/* 0206411C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206411C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02064120 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02064124 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 02064128 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02064128 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206412C: ; // 0x206412c
|
|
/* 0206412C */ cpu->ctr = cpu->r[11];
|
|
/* 02064130 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02064134 @ 0x2064134
|
|
void Gambit_fn_02064134(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_02064134: ; // 0x2064134
|
|
/* 02064134 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02064134 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02064138 */ /* nop */
|
|
/* 0206413C */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 0206413C */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02064140 */ cpu->r[8] = cpu->r[0];
|
|
/* 02064144 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 02064148 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02064148 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206414C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206414C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206414C */ if (_t4) goto L_02064150; else goto L_02064168;
|
|
L_02064150: ; // 0x2064150
|
|
/* 02064150 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02064154 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 02064158 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02064158 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206415C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02064160 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064160 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02064160 */ if (_t7) goto L_02064164; else goto L_02064174;
|
|
L_02064164: ; // 0x2064164
|
|
/* 02064164 */ return;
|
|
L_02064168: ; // 0x2064168
|
|
/* 02064168 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02064168 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206416C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02064170 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064170 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02064170 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02064170 */ goto L_02064174;
|
|
L_02064174: ; // 0x2064174
|
|
/* 02064174 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02064178 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02064178 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206417C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206417C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206417C */ if (_t13) goto L_02064180; else goto L_02064188;
|
|
L_02064180: ; // 0x2064180
|
|
/* 02064180 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02064184 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02064188: ; // 0x2064188
|
|
/* 02064188 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02064188 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206418C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206418C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02064190 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064194 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02064194 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02064198 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206419C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206419C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206419C */ if (_t18) goto L_020641B4; else goto L_020641A0;
|
|
L_020641A0: ; // 0x20641a0
|
|
/* 020641A0 */ /* nop */
|
|
/* 020641A4 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 020641A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 020641A8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020641AC */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 020641B0 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 020641B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_020641B4: ; // 0x20641b4
|
|
/* 020641B4 */ cpu->ctr = cpu->r[11];
|
|
/* 020641B8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_020641BC @ 0x20641bc
|
|
void Gambit_fn_020641BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_020641BC: ; // 0x20641bc
|
|
/* 020641BC */ cpu->r[0] = cpu->lr;
|
|
/* 020641C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020641C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020641C0 */ cpu->r[1] = _t0;
|
|
/* 020641C4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020641C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020641C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 020641CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 020641CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 020641D0 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 020641D0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 020641D4 */ cpu->r[12] = 0x00000000u;
|
|
/* 020641D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020641DC */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 020641DC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 020641E0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020641E0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 020641E0 */ if (_t6) goto L_02064208; else goto L_020641E4;
|
|
L_020641E4: ; // 0x20641e4
|
|
/* 020641E4 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 020641E4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 020641E8 */ /* nop */
|
|
/* 020641EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 020641F0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020641F0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 020641F0 */ if (_t9) goto L_020641F4; else goto L_02064208;
|
|
L_020641F4: ; // 0x20641f4
|
|
/* 020641F4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 020641F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020641F8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 020641F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020641FC */ cpu->ctr = cpu->r[0];
|
|
/* 02064200 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064204 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02064208: ; // 0x2064208
|
|
/* 02064208 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206420C */ Gambit_fn_02064134(cpu);
|
|
/* 02064210 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064214 */ Gambit_fn_027FC37C(cpu);
|
|
/* 02064218 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02064218 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206421C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206421C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02064220 */ cpu->lr = cpu->r[0];
|
|
/* 02064224 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064228 */ return;
|
|
}
|
|
|
|
// fn_020641C0 @ 0x20641c0
|
|
void Gambit_fn_020641C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_020641C0: ; // 0x20641c0
|
|
/* 020641C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020641C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020641C0 */ cpu->r[1] = _t0;
|
|
/* 020641C4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020641C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020641C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 020641CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 020641CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 020641D0 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 020641D0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 020641D4 */ cpu->r[12] = 0x00000000u;
|
|
/* 020641D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020641DC */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 020641DC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 020641E0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020641E0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 020641E0 */ if (_t6) goto L_02064208; else goto L_020641E4;
|
|
L_020641E4: ; // 0x20641e4
|
|
/* 020641E4 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 020641E4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 020641E8 */ /* nop */
|
|
/* 020641EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 020641F0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020641F0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 020641F0 */ if (_t9) goto L_020641F4; else goto L_02064208;
|
|
L_020641F4: ; // 0x20641f4
|
|
/* 020641F4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 020641F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020641F8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 020641F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020641FC */ cpu->ctr = cpu->r[0];
|
|
/* 02064200 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064204 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02064208: ; // 0x2064208
|
|
/* 02064208 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206420C */ Gambit_fn_02064134(cpu);
|
|
/* 02064210 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064214 */ Gambit_fn_027FC37C(cpu);
|
|
/* 02064218 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02064218 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206421C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206421C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02064220 */ cpu->lr = cpu->r[0];
|
|
/* 02064224 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064228 */ return;
|
|
}
|
|
|
|
// fn_0206422C @ 0x206422c
|
|
void Gambit_fn_0206422C(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_0206422C: ; // 0x206422c
|
|
/* 0206422C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206422C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02064230 */ /* nop */
|
|
/* 02064234 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 02064234 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02064238 */ cpu->r[7] = cpu->r[0];
|
|
/* 0206423C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02064240 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 02064240 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02064244 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064244 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02064244 */ if (_t4) goto L_02064248; else goto L_02064260;
|
|
L_02064248: ; // 0x2064248
|
|
/* 02064248 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206424C */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 02064250 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02064250 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02064254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02064258 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064258 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02064258 */ if (_t7) goto L_0206425C; else goto L_0206426C;
|
|
L_0206425C: ; // 0x206425c
|
|
/* 0206425C */ return;
|
|
L_02064260: ; // 0x2064260
|
|
/* 02064260 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02064260 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02064264 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02064268 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064268 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02064268 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02064268 */ goto L_0206426C;
|
|
L_0206426C: ; // 0x206426c
|
|
/* 0206426C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02064270 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02064270 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02064274 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064274 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02064274 */ if (_t13) goto L_02064278; else goto L_02064280;
|
|
L_02064278: ; // 0x2064278
|
|
/* 02064278 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206427C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02064280: ; // 0x2064280
|
|
/* 02064280 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02064280 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02064284 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02064284 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02064288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0206428C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206428C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02064290 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 02064294 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064294 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02064294 */ if (_t18) goto L_020642AC; else goto L_02064298;
|
|
L_02064298: ; // 0x2064298
|
|
/* 02064298 */ /* nop */
|
|
/* 0206429C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206429C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 020642A0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020642A4 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 020642A8 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 020642A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_020642AC: ; // 0x20642ac
|
|
/* 020642AC */ cpu->ctr = cpu->r[11];
|
|
/* 020642B0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_020642B4 @ 0x20642b4
|
|
void Gambit_fn_020642B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_020642B4: ; // 0x20642b4
|
|
/* 020642B4 */ cpu->r[0] = cpu->lr;
|
|
/* 020642B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020642B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020642B8 */ cpu->r[1] = _t0;
|
|
/* 020642BC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 020642BC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 020642C0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020642C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 020642C4 */ cpu->r[30] = cpu->r[3];
|
|
/* 020642C8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020642C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020642CC */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 020642CC */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 020642D0 */ /* nop */
|
|
/* 020642D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 020642D8 */ cpu->r[31] = cpu->r[4];
|
|
/* 020642DC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020642DC */ _t6 = _t5 & 0x00000001u;
|
|
/* 020642DC */ if (_t6) goto L_020642E0; else goto L_020642F4;
|
|
L_020642E0: ; // 0x20642e0
|
|
/* 020642E0 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 020642E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 020642E4 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 020642E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 020642E8 */ cpu->ctr = cpu->r[0];
|
|
/* 020642EC */ cpu->r[3] = cpu->r[30];
|
|
/* 020642F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_020642F4: ; // 0x20642f4
|
|
/* 020642F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 020642F8 */ cpu->r[4] = cpu->r[31];
|
|
/* 020642FC */ Gambit_fn_0206422C(cpu);
|
|
/* 02064300 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064304 */ /* nop */
|
|
/* 02064308 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206430C */ cpu->r[3] = cpu->r[30];
|
|
/* 02064310 */ Gambit_fn_020640AC(cpu);
|
|
/* 02064314 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02064314 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064318 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02064318 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206431C */ cpu->lr = cpu->r[0];
|
|
/* 02064320 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064320 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02064324 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064328 */ return;
|
|
}
|
|
|
|
// fn_020642B8 @ 0x20642b8
|
|
void Gambit_fn_020642B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_020642B8: ; // 0x20642b8
|
|
/* 020642B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020642B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020642B8 */ cpu->r[1] = _t0;
|
|
/* 020642BC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 020642BC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 020642C0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020642C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 020642C4 */ cpu->r[30] = cpu->r[3];
|
|
/* 020642C8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020642C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020642CC */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 020642CC */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 020642D0 */ /* nop */
|
|
/* 020642D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 020642D8 */ cpu->r[31] = cpu->r[4];
|
|
/* 020642DC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020642DC */ _t6 = _t5 & 0x00000001u;
|
|
/* 020642DC */ if (_t6) goto L_020642E0; else goto L_020642F4;
|
|
L_020642E0: ; // 0x20642e0
|
|
/* 020642E0 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 020642E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 020642E4 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 020642E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 020642E8 */ cpu->ctr = cpu->r[0];
|
|
/* 020642EC */ cpu->r[3] = cpu->r[30];
|
|
/* 020642F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_020642F4: ; // 0x20642f4
|
|
/* 020642F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 020642F8 */ cpu->r[4] = cpu->r[31];
|
|
/* 020642FC */ Gambit_fn_0206422C(cpu);
|
|
/* 02064300 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064304 */ /* nop */
|
|
/* 02064308 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206430C */ cpu->r[3] = cpu->r[30];
|
|
/* 02064310 */ Gambit_fn_020640AC(cpu);
|
|
/* 02064314 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02064314 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064318 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02064318 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206431C */ cpu->lr = cpu->r[0];
|
|
/* 02064320 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064320 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02064324 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064328 */ return;
|
|
}
|
|
|
|
// fn_0206432C @ 0x206432c
|
|
void Gambit_fn_0206432C(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_0206432C: ; // 0x206432c
|
|
/* 0206432C */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 0206432C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206432C */ cpu->r[1] = _t0;
|
|
/* 02064330 */ /* nop */
|
|
/* 02064334 */ cpu->r[0] = cpu->lr;
|
|
/* 02064338 */ cpu->r[23] = cpu->r[3];
|
|
/* 0206433C */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 0206433C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02064340 */ Gambit_fn_0206305C(cpu);
|
|
/* 02064344 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02064348 */ _t2 = cpu->r[7] + 0xFFFFD3C4u;
|
|
/* 02064348 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02064348 */ cpu->r[7] = _t2;
|
|
/* 0206434C */ cpu->r[31] = 0x101E0000u;
|
|
/* 02064350 */ cpu->r[22] = cpu->r[3];
|
|
/* 02064354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064358 */ cpu->r[31] = cpu->r[31] + 0xFFFFD264u;
|
|
/* 0206435C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206435C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206435C */ if (_t4) goto L_02064360; else goto L_020643A8;
|
|
L_02064360: ; // 0x2064360
|
|
/* 02064360 */ cpu->r[12] = 0x00000001u;
|
|
/* 02064364 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02064368 */ cpu->r[4] = 0x10000000u;
|
|
/* 0206436C */ _t5 = cpu->r[7] + 0x00000000u;
|
|
/* 0206436C */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02064370 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064374 */ cpu->r[5] = 0x00000002u;
|
|
/* 02064378 */ cpu->r[4] = cpu->r[4] + 0x00007000u;
|
|
/* 0206437C */ cpu->r[7] = 0x00000000u;
|
|
/* 02064380 */ Gambit_fn_028A6750(cpu);
|
|
/* 02064384 */ cpu->r[6] = 0x02060000u;
|
|
/* 02064388 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 0206438C */ cpu->r[4] = 0x00000002u;
|
|
/* 02064390 */ cpu->r[6] = cpu->r[6] + 0x00004898u;
|
|
/* 02064394 */ cpu->r[5] = 0x00000008u;
|
|
/* 02064398 */ Gambit_fn_02C82E00(cpu);
|
|
/* 0206439C */ cpu->r[3] = 0x101C0000u;
|
|
/* 020643A0 */ cpu->r[3] = cpu->r[3] + 0x00003384u;
|
|
/* 020643A4 */ Gambit_fn_02C83090(cpu);
|
|
L_020643A8: ; // 0x20643a8
|
|
/* 020643A8 */ _t6 = cpu->r[31] + 0x00000054u;
|
|
/* 020643A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 020643AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020643B0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020643B0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 020643B0 */ if (_t8) goto L_020643B4; else goto L_020644A8;
|
|
L_020643B4: ; // 0x20643b4
|
|
/* 020643B4 */ cpu->r[26] = 0x101D0000u;
|
|
/* 020643B8 */ cpu->r[30] = 0x00000000u;
|
|
/* 020643BC */ cpu->r[19] = 0x101D0000u;
|
|
/* 020643C0 */ cpu->r[20] = 0x101D0000u;
|
|
/* 020643C4 */ cpu->r[21] = 0x00000001u;
|
|
/* 020643C8 */ cpu->r[27] = cpu->r[30];
|
|
/* 020643CC */ cpu->r[25] = 0x101D0000u;
|
|
/* 020643D0 */ cpu->r[26] = cpu->r[26] + 0xFFFFED18u;
|
|
/* 020643D4 */ cpu->r[24] = 0x101D0000u;
|
|
L_020643D8: ; // 0x20643d8
|
|
/* 020643D8 */ _t9 = cpu->r[24] + 0xFFFFED28u;
|
|
/* 020643D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 020643DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020643E0 */ cpu->r[29] = cpu->r[30];
|
|
/* 020643E4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020643E4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 020643E4 */ if (_t11) goto L_020643E8; else goto L_02064400;
|
|
L_020643E8: ; // 0x20643e8
|
|
/* 020643E8 */ cpu->r[4] = 0x101C0000u;
|
|
/* 020643EC */ cpu->r[3] = cpu->r[25] + 0x00003C49u;
|
|
/* 020643F0 */ cpu->r[5] = 0x00000010u;
|
|
/* 020643F4 */ cpu->r[4] = cpu->r[4] + 0x00003374u;
|
|
/* 020643F8 */ _t12 = cpu->r[24] + 0xFFFFED28u;
|
|
/* 020643F8 */ rbrew_write32(cpu->mem, _t12, cpu->r[21]);
|
|
/* 020643FC */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02064400: ; // 0x2064400
|
|
/* 02064400 */ _t13 = cpu->r[20] + 0xFFFFED24u;
|
|
/* 02064400 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02064404 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02064408 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064408 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02064408 */ if (_t15) goto L_0206440C; else goto L_02064414;
|
|
L_0206440C: ; // 0x206440c
|
|
/* 0206440C */ _t16 = cpu->r[19] + 0xFFFFED20u;
|
|
/* 0206440C */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 02064410 */ _t17 = cpu->r[20] + 0xFFFFED24u;
|
|
/* 02064410 */ rbrew_write32(cpu->mem, _t17, cpu->r[21]);
|
|
L_02064414: ; // 0x2064414
|
|
/* 02064414 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000002u);
|
|
/* 02064418 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064418 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02064418 */ if (_t19) goto L_02064440; else goto L_0206441C;
|
|
L_0206441C: ; // 0x206441c
|
|
/* 0206441C */ cpu->r[4] = cpu->r[30];
|
|
/* 02064420 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064424 */ cpu->r[5] = 0x00000000u;
|
|
/* 02064428 */ Gambit_fn_028A6634(cpu);
|
|
/* 0206442C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02064430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 02064434 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02064434 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02064434 */ if (_t21) goto L_020644A8; else goto L_02064438;
|
|
L_02064438: ; // 0x2064438
|
|
/* 02064438 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064438 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02064438 */ if (_t23) goto L_020643D8; else goto L_0206443C;
|
|
L_0206443C: ; // 0x206443c
|
|
/* 0206443C */ goto L_020644A8;
|
|
L_02064440: ; // 0x2064440
|
|
/* 02064440 */ _t24 = cpu->r[19] + 0xFFFFED20u;
|
|
/* 02064440 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02064444 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064448 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064448 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02064448 */ if (_t26) goto L_0206444C; else goto L_02064484;
|
|
L_0206444C: ; // 0x206444c
|
|
/* 0206444C */ Gambit_fn_0282A450(cpu);
|
|
/* 02064450 */ cpu->r[28] = cpu->r[3];
|
|
/* 02064454 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02064458 */ _t27 = cpu->r[19] + 0xFFFFED20u;
|
|
/* 02064458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0206445C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064460 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064460 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02064460 */ if (_t29) goto L_02064464; else goto L_02064478;
|
|
L_02064464: ; // 0x2064464
|
|
/* 02064464 */ cpu->r[5] = 0x00000002u;
|
|
/* 02064468 */ cpu->r[4] = cpu->r[25] + 0x00003C49u;
|
|
/* 0206446C */ cpu->r[3] = cpu->r[26];
|
|
/* 02064470 */ Gambit_fn_0282A374(cpu);
|
|
/* 02064474 */ _t30 = cpu->r[19] + 0xFFFFED20u;
|
|
/* 02064474 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
L_02064478: ; // 0x2064478
|
|
/* 02064478 */ cpu->r[3] = cpu->r[28];
|
|
/* 0206447C */ Gambit_fn_02837030(cpu);
|
|
/* 02064480 */ _t31 = cpu->r[19] + 0xFFFFED20u;
|
|
/* 02064480 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
L_02064484: ; // 0x2064484
|
|
/* 02064484 */ cpu->r[12] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02064488 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206448C */ _t32 = cpu->r[12] + cpu->r[0];
|
|
/* 0206448C */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02064490 */ cpu->r[4] = cpu->r[30];
|
|
/* 02064494 */ Gambit_fn_028A6634(cpu);
|
|
/* 02064498 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0206449C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 020644A0 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020644A0 */ _t34 = _t33 & 0x00000001u;
|
|
/* 020644A0 */ if (_t34) goto L_020644A8; else goto L_020644A4;
|
|
L_020644A4: ; // 0x20644a4
|
|
/* 020644A4 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020644A4 */ _t36 = _t35 & 0x00000001u;
|
|
/* 020644A4 */ if (_t36) goto L_020643D8; else goto L_020644A8;
|
|
L_020644A8: ; // 0x20644a8
|
|
/* 020644A8 */ cpu->r[3] = cpu->r[23];
|
|
/* 020644AC */ cpu->r[4] = cpu->r[31];
|
|
/* 020644B0 */ Gambit_fn_027B81E4(cpu);
|
|
/* 020644B4 */ cpu->r[3] = cpu->r[22] + 0x00000001u;
|
|
/* 020644B8 */ /* nop */
|
|
/* 020644BC */ _t37 = cpu->r[1] + 0x00000044u;
|
|
/* 020644BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 020644C0 */ cpu->lr = cpu->r[0];
|
|
/* 020644C4 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 020644C8 */ return;
|
|
}
|
|
|
|
// fn_020644CC @ 0x20644cc
|
|
void Gambit_fn_020644CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_020644CC: ; // 0x20644cc
|
|
/* 020644CC */ cpu->r[0] = cpu->lr;
|
|
/* 020644D0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 020644D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020644D0 */ cpu->r[1] = _t0;
|
|
/* 020644D4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020644D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 020644D8 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 020644D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020644DC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020644DC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 020644E0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020644E0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 020644E4 */ cpu->r[29] = cpu->r[3];
|
|
/* 020644E8 */ Gambit_fn_0206305C(cpu);
|
|
/* 020644EC */ cpu->r[10] = 0x101E0000u;
|
|
/* 020644F0 */ cpu->r[31] = 0x101E0000u;
|
|
/* 020644F4 */ _t5 = cpu->r[10] + 0xFFFFD3C8u;
|
|
/* 020644F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020644F4 */ cpu->r[10] = _t5;
|
|
/* 020644F8 */ cpu->r[31] = cpu->r[31] + 0xFFFFD1ECu;
|
|
/* 020644FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02064500 */ cpu->r[30] = cpu->r[3];
|
|
/* 02064504 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064504 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02064504 */ if (_t7) goto L_02064508; else goto L_02064550;
|
|
L_02064508: ; // 0x2064508
|
|
/* 02064508 */ cpu->r[0] = 0x00000001u;
|
|
/* 0206450C */ cpu->r[3] = cpu->r[31];
|
|
/* 02064510 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02064514 */ cpu->r[4] = 0x10000000u;
|
|
/* 02064518 */ cpu->r[7] = 0x00000000u;
|
|
/* 0206451C */ cpu->r[5] = 0x00000003u;
|
|
/* 02064520 */ cpu->r[4] = cpu->r[4] + 0x00007024u;
|
|
/* 02064524 */ _t8 = cpu->r[10] + 0x00000000u;
|
|
/* 02064524 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02064528 */ Gambit_fn_028A6750(cpu);
|
|
/* 0206452C */ cpu->r[6] = 0x02060000u;
|
|
/* 02064530 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 02064534 */ cpu->r[4] = 0x00000003u;
|
|
/* 02064538 */ cpu->r[6] = cpu->r[6] + 0x00004898u;
|
|
/* 0206453C */ cpu->r[5] = 0x00000008u;
|
|
/* 02064540 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02064544 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02064548 */ cpu->r[3] = cpu->r[3] + 0x00003390u;
|
|
/* 0206454C */ Gambit_fn_02C83090(cpu);
|
|
L_02064550: ; // 0x2064550
|
|
/* 02064550 */ _t9 = cpu->r[31] + 0x00000054u;
|
|
/* 02064550 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02064558 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064558 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02064558 */ if (_t11) goto L_0206455C; else goto L_02064598;
|
|
L_0206455C: ; // 0x206455c
|
|
/* 0206455C */ cpu->r[5] = 0x10000000u;
|
|
/* 02064560 */ cpu->r[4] = 0x00000000u;
|
|
/* 02064564 */ cpu->r[5] = cpu->r[5] + 0x00007014u;
|
|
/* 02064568 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206456C */ Gambit_fn_028A6634(cpu);
|
|
/* 02064570 */ cpu->r[5] = 0x10000000u;
|
|
/* 02064574 */ cpu->r[4] = 0x00000001u;
|
|
/* 02064578 */ cpu->r[5] = cpu->r[5] + 0x0000700Cu;
|
|
/* 0206457C */ cpu->r[3] = cpu->r[31];
|
|
/* 02064580 */ Gambit_fn_028A6634(cpu);
|
|
/* 02064584 */ cpu->r[5] = 0x10000000u;
|
|
/* 02064588 */ cpu->r[4] = 0x00000002u;
|
|
/* 0206458C */ cpu->r[5] = cpu->r[5] + 0x0000701Cu;
|
|
/* 02064590 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064594 */ Gambit_fn_028A6634(cpu);
|
|
L_02064598: ; // 0x2064598
|
|
/* 02064598 */ cpu->r[3] = cpu->r[29];
|
|
/* 0206459C */ cpu->r[4] = cpu->r[31];
|
|
/* 020645A0 */ Gambit_fn_027B81E4(cpu);
|
|
/* 020645A4 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020645A4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020645A8 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020645A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020645AC */ cpu->r[3] = cpu->r[30] + 0x00000001u;
|
|
/* 020645B0 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 020645B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 020645B4 */ cpu->lr = cpu->r[0];
|
|
/* 020645B8 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 020645B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 020645BC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 020645C0 */ return;
|
|
}
|
|
|
|
// fn_020644D0 @ 0x20644d0
|
|
void Gambit_fn_020644D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_020644D0: ; // 0x20644d0
|
|
/* 020644D0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 020644D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020644D0 */ cpu->r[1] = _t0;
|
|
/* 020644D4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020644D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 020644D8 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 020644D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020644DC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020644DC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 020644E0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020644E0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 020644E4 */ cpu->r[29] = cpu->r[3];
|
|
/* 020644E8 */ Gambit_fn_0206305C(cpu);
|
|
/* 020644EC */ cpu->r[10] = 0x101E0000u;
|
|
/* 020644F0 */ cpu->r[31] = 0x101E0000u;
|
|
/* 020644F4 */ _t5 = cpu->r[10] + 0xFFFFD3C8u;
|
|
/* 020644F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020644F4 */ cpu->r[10] = _t5;
|
|
/* 020644F8 */ cpu->r[31] = cpu->r[31] + 0xFFFFD1ECu;
|
|
/* 020644FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02064500 */ cpu->r[30] = cpu->r[3];
|
|
/* 02064504 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064504 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02064504 */ if (_t7) goto L_02064508; else goto L_02064550;
|
|
L_02064508: ; // 0x2064508
|
|
/* 02064508 */ cpu->r[0] = 0x00000001u;
|
|
/* 0206450C */ cpu->r[3] = cpu->r[31];
|
|
/* 02064510 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02064514 */ cpu->r[4] = 0x10000000u;
|
|
/* 02064518 */ cpu->r[7] = 0x00000000u;
|
|
/* 0206451C */ cpu->r[5] = 0x00000003u;
|
|
/* 02064520 */ cpu->r[4] = cpu->r[4] + 0x00007024u;
|
|
/* 02064524 */ _t8 = cpu->r[10] + 0x00000000u;
|
|
/* 02064524 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02064528 */ Gambit_fn_028A6750(cpu);
|
|
/* 0206452C */ cpu->r[6] = 0x02060000u;
|
|
/* 02064530 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 02064534 */ cpu->r[4] = 0x00000003u;
|
|
/* 02064538 */ cpu->r[6] = cpu->r[6] + 0x00004898u;
|
|
/* 0206453C */ cpu->r[5] = 0x00000008u;
|
|
/* 02064540 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02064544 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02064548 */ cpu->r[3] = cpu->r[3] + 0x00003390u;
|
|
/* 0206454C */ Gambit_fn_02C83090(cpu);
|
|
L_02064550: ; // 0x2064550
|
|
/* 02064550 */ _t9 = cpu->r[31] + 0x00000054u;
|
|
/* 02064550 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02064558 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064558 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02064558 */ if (_t11) goto L_0206455C; else goto L_02064598;
|
|
L_0206455C: ; // 0x206455c
|
|
/* 0206455C */ cpu->r[5] = 0x10000000u;
|
|
/* 02064560 */ cpu->r[4] = 0x00000000u;
|
|
/* 02064564 */ cpu->r[5] = cpu->r[5] + 0x00007014u;
|
|
/* 02064568 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206456C */ Gambit_fn_028A6634(cpu);
|
|
/* 02064570 */ cpu->r[5] = 0x10000000u;
|
|
/* 02064574 */ cpu->r[4] = 0x00000001u;
|
|
/* 02064578 */ cpu->r[5] = cpu->r[5] + 0x0000700Cu;
|
|
/* 0206457C */ cpu->r[3] = cpu->r[31];
|
|
/* 02064580 */ Gambit_fn_028A6634(cpu);
|
|
/* 02064584 */ cpu->r[5] = 0x10000000u;
|
|
/* 02064588 */ cpu->r[4] = 0x00000002u;
|
|
/* 0206458C */ cpu->r[5] = cpu->r[5] + 0x0000701Cu;
|
|
/* 02064590 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064594 */ Gambit_fn_028A6634(cpu);
|
|
L_02064598: ; // 0x2064598
|
|
/* 02064598 */ cpu->r[3] = cpu->r[29];
|
|
/* 0206459C */ cpu->r[4] = cpu->r[31];
|
|
/* 020645A0 */ Gambit_fn_027B81E4(cpu);
|
|
/* 020645A4 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020645A4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020645A8 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020645A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020645AC */ cpu->r[3] = cpu->r[30] + 0x00000001u;
|
|
/* 020645B0 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 020645B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 020645B4 */ cpu->lr = cpu->r[0];
|
|
/* 020645B8 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 020645B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 020645BC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 020645C0 */ return;
|
|
}
|
|
|
|
// fn_020645C4 @ 0x20645c4
|
|
void Gambit_fn_020645C4(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;
|
|
|
|
L_020645C4: ; // 0x20645c4
|
|
/* 020645C4 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 020645C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020645C4 */ cpu->r[1] = _t0;
|
|
/* 020645C8 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 020645C8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]);
|
|
/* 020645CC */ /* nop */
|
|
/* 020645D0 */ _t2 = cpu->r[1] + 0x00000058u;
|
|
/* 020645D0 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 020645D4 */ /* nop */
|
|
/* 020645D8 */ /* nop */
|
|
/* 020645DC */ cpu->r[0] = cpu->lr;
|
|
/* 020645E0 */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 020645E0 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 020645E4 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 020645E4 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[28]);
|
|
/* 020645E8 */ /* nop */
|
|
/* 020645EC */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 020645EC */ rbrew_write_f64(cpu->mem, _t5, cpu->f[29]);
|
|
/* 020645F0 */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 020645F0 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 020645F4 */ /* nop */
|
|
/* 020645F8 */ _t7 = cpu->r[1] + 0x00000050u;
|
|
/* 020645F8 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 020645FC */ cpu->r[8] = 0xFFFFFFFDu;
|
|
/* 02064600 */ _t8 = cpu->r[1] + 0x00000040u;
|
|
/* 02064600 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]);
|
|
/* 02064604 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 02064608 */ cpu->r[7] = 0x101E0000u;
|
|
/* 0206460C */ _t9 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0206460C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02064610 */ cpu->r[6] = 0xFFFFFFFEu;
|
|
/* 02064614 */ _t10 = cpu->r[7] + 0xFFFFD1C0u;
|
|
/* 02064614 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 02064614 */ cpu->r[7] = _t10;
|
|
/* 02064618 */ cpu->r[5] = 0x101E0000u;
|
|
/* 0206461C */ cpu->r[10] = 0x101E0000u;
|
|
/* 02064620 */ _t11 = cpu->r[5] + 0xFFFFD1C8u;
|
|
/* 02064620 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 02064620 */ cpu->r[5] = _t11;
|
|
/* 02064624 */ cpu->r[10] = cpu->r[10] + 0xFFFFD1D8u;
|
|
/* 02064628 */ _t12 = cpu->r[7] + 0x00000004u;
|
|
/* 02064628 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]);
|
|
/* 0206462C */ cpu->r[9] = 0x101F0000u;
|
|
/* 02064630 */ _t13 = cpu->r[10] + 0x00000004u;
|
|
/* 02064630 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 02064634 */ cpu->r[9] = cpu->r[9] + 0x00005BFCu;
|
|
/* 02064638 */ _t14 = cpu->r[5] + 0x00000004u;
|
|
/* 02064638 */ rbrew_write32(cpu->mem, _t14, cpu->r[4]);
|
|
/* 0206463C */ cpu->r[12] = 0x101E0000u;
|
|
/* 02064640 */ _t15 = cpu->r[9] + 0x00000008u;
|
|
/* 02064640 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02064644 */ cpu->r[31] = 0x101E0000u;
|
|
/* 02064648 */ _t16 = cpu->r[12] + 0xFFFFD1D0u;
|
|
/* 02064648 */ rbrew_write32(cpu->mem, _t16, cpu->r[4]);
|
|
/* 02064648 */ cpu->r[12] = _t16;
|
|
/* 0206464C */ cpu->r[11] = 0x00000002u;
|
|
/* 02064650 */ _t17 = cpu->r[9] + 0x00000004u;
|
|
/* 02064650 */ cpu->r[26] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02064654 */ _t18 = cpu->r[9] + 0x00000000u;
|
|
/* 02064654 */ cpu->r[28] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02064658 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02064658 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]);
|
|
/* 0206465C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0206465C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02064660 */ _t21 = cpu->r[31] + 0xFFFFD2D4u;
|
|
/* 02064660 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 02064660 */ cpu->r[31] = _t21;
|
|
/* 02064664 */ cpu->r[0] = 0x00000004u;
|
|
/* 02064668 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 02064668 */ rbrew_write32(cpu->mem, _t22, cpu->r[4]);
|
|
/* 0206466C */ cpu->r[12] = 0x101F0000u;
|
|
/* 02064670 */ _t23 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02064670 */ cpu->r[27] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02064674 */ _t24 = cpu->r[12] + 0x00005C2Cu;
|
|
/* 02064674 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02064674 */ cpu->r[12] = _t24;
|
|
/* 02064678 */ _t25 = cpu->r[31] + 0x00000010u;
|
|
/* 02064678 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 0206467C */ _t26 = cpu->r[31] + 0x00000018u;
|
|
/* 0206467C */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 02064680 */ _t27 = cpu->r[31] + 0x00000030u;
|
|
/* 02064680 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 02064684 */ _t28 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02064684 */ rbrew_write32(cpu->mem, _t28, cpu->r[27]);
|
|
/* 02064688 */ _t29 = cpu->r[31] + 0x00000008u;
|
|
/* 02064688 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 0206468C */ _t30 = cpu->r[31] + 0x00000024u;
|
|
/* 0206468C */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
/* 02064690 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02064694 */ _t31 = cpu->r[31] + 0x00000028u;
|
|
/* 02064694 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 02064698 */ cpu->r[6] = 0x101F0000u;
|
|
/* 0206469C */ _t32 = cpu->r[7] + 0xFFFFD1E8u;
|
|
/* 0206469C */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 020646A0 */ _t33 = cpu->r[6] + 0x00005C1Cu;
|
|
/* 020646A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 020646A0 */ cpu->r[6] = _t33;
|
|
/* 020646A4 */ _t34 = cpu->r[31] + 0x00000004u;
|
|
/* 020646A4 */ rbrew_write32(cpu->mem, _t34, cpu->r[26]);
|
|
/* 020646A8 */ _t35 = cpu->r[31] + 0x00000020u;
|
|
/* 020646A8 */ rbrew_write32(cpu->mem, _t35, cpu->r[28]);
|
|
/* 020646AC */ cpu->r[5] = 0x101E0000u;
|
|
/* 020646B0 */ _t36 = cpu->r[12] + 0x0000000Cu;
|
|
/* 020646B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36);
|
|
/* 020646B4 */ _t37 = cpu->r[5] + 0xFFFFD1E0u;
|
|
/* 020646B4 */ rbrew_write32(cpu->mem, _t37, cpu->r[8]);
|
|
/* 020646B4 */ cpu->r[5] = _t37;
|
|
/* 020646B8 */ _t38 = cpu->r[31] + 0x00000014u;
|
|
/* 020646B8 */ rbrew_write32(cpu->mem, _t38, cpu->r[26]);
|
|
/* 020646BC */ _t39 = cpu->r[10] + 0x00000000u;
|
|
/* 020646BC */ rbrew_write32(cpu->mem, _t39, cpu->r[8]);
|
|
/* 020646C0 */ _t40 = cpu->r[31] + 0x00000040u;
|
|
/* 020646C0 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]);
|
|
/* 020646C4 */ _t41 = cpu->r[6] + 0x0000000Cu;
|
|
/* 020646C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 020646C8 */ _t42 = cpu->r[6] + 0x00000008u;
|
|
/* 020646C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 020646CC */ _t43 = cpu->r[6] + 0x00000004u;
|
|
/* 020646CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 020646D0 */ _t44 = cpu->r[31] + 0x0000003Cu;
|
|
/* 020646D0 */ rbrew_write32(cpu->mem, _t44, cpu->r[11]);
|
|
/* 020646D4 */ _t45 = cpu->r[31] + 0x00000044u;
|
|
/* 020646D4 */ rbrew_write32(cpu->mem, _t45, cpu->r[8]);
|
|
/* 020646D8 */ _t46 = cpu->r[31] + 0x00000048u;
|
|
/* 020646D8 */ rbrew_write32(cpu->mem, _t46, cpu->r[9]);
|
|
/* 020646DC */ _t47 = cpu->r[31] + 0x0000001Cu;
|
|
/* 020646DC */ rbrew_write32(cpu->mem, _t47, cpu->r[27]);
|
|
/* 020646E0 */ _t48 = cpu->r[5] + 0x00000004u;
|
|
/* 020646E0 */ rbrew_write32(cpu->mem, _t48, cpu->r[4]);
|
|
/* 020646E4 */ _t49 = cpu->r[12] + 0x00000004u;
|
|
/* 020646E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t49);
|
|
/* 020646E8 */ _t50 = cpu->r[31] + 0x0000004Cu;
|
|
/* 020646E8 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 020646EC */ cpu->r[11] = 0x101F0000u;
|
|
/* 020646F0 */ _t51 = cpu->r[12] + 0x00000008u;
|
|
/* 020646F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 020646F4 */ _t52 = cpu->r[11] + 0x00005BDCu;
|
|
/* 020646F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t52);
|
|
/* 020646F4 */ cpu->r[11] = _t52;
|
|
/* 020646F8 */ _t53 = cpu->r[11] + 0x00000008u;
|
|
/* 020646F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 020646FC */ _t54 = cpu->r[11] + 0x0000000Cu;
|
|
/* 020646FC */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02064700 */ _t55 = cpu->r[11] + 0x00000004u;
|
|
/* 02064700 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02064704 */ _t56 = cpu->r[31] + 0x00000088u;
|
|
/* 02064704 */ rbrew_write32(cpu->mem, _t56, cpu->r[3]);
|
|
/* 02064708 */ _t57 = cpu->r[31] + 0x00000080u;
|
|
/* 02064708 */ rbrew_write32(cpu->mem, _t57, cpu->r[30]);
|
|
/* 0206470C */ _t58 = cpu->r[31] + 0x00000034u;
|
|
/* 0206470C */ rbrew_write32(cpu->mem, _t58, cpu->r[5]);
|
|
/* 02064710 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02064714 */ _t59 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02064714 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
/* 02064718 */ cpu->r[5] = 0x101F0000u;
|
|
/* 0206471C */ _t60 = cpu->r[31] + 0x00000038u;
|
|
/* 0206471C */ rbrew_write32(cpu->mem, _t60, cpu->r[7]);
|
|
/* 02064720 */ cpu->r[5] = cpu->r[5] + 0x00005C4Cu;
|
|
/* 02064724 */ _t61 = cpu->r[12] + 0x00005C3Cu;
|
|
/* 02064724 */ cpu->r[7] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02064724 */ cpu->r[12] = _t61;
|
|
/* 02064728 */ _t62 = cpu->r[12] + 0x00000008u;
|
|
/* 02064728 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 0206472C */ _t63 = cpu->r[5] + 0x00000004u;
|
|
/* 0206472C */ cpu->r[8] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02064730 */ _t64 = cpu->r[31] + 0x00000058u;
|
|
/* 02064730 */ rbrew_write32(cpu->mem, _t64, cpu->r[3]);
|
|
/* 02064734 */ _t65 = cpu->r[31] + 0x00000064u;
|
|
/* 02064734 */ rbrew_write32(cpu->mem, _t65, cpu->r[8]);
|
|
/* 02064738 */ _t66 = cpu->r[31] + 0x00000090u;
|
|
/* 02064738 */ rbrew_write32(cpu->mem, _t66, cpu->r[30]);
|
|
/* 0206473C */ _t67 = cpu->r[31] + 0x00000070u;
|
|
/* 0206473C */ rbrew_write32(cpu->mem, _t67, cpu->r[7]);
|
|
/* 02064740 */ _t68 = cpu->r[12] + 0x00000004u;
|
|
/* 02064740 */ cpu->r[8] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02064744 */ _t69 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02064744 */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02064748 */ _t70 = cpu->r[31] + 0x00000074u;
|
|
/* 02064748 */ rbrew_write32(cpu->mem, _t70, cpu->r[8]);
|
|
/* 0206474C */ _t71 = cpu->r[31] + 0x0000007Cu;
|
|
/* 0206474C */ rbrew_write32(cpu->mem, _t71, cpu->r[10]);
|
|
/* 02064750 */ _t72 = cpu->r[5] + 0x0000000Cu;
|
|
/* 02064750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02064754 */ _t73 = cpu->r[31] + 0x0000005Cu;
|
|
/* 02064754 */ rbrew_write32(cpu->mem, _t73, cpu->r[4]);
|
|
/* 02064758 */ _t74 = cpu->r[31] + 0x0000006Cu;
|
|
/* 02064758 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 0206475C */ _t75 = cpu->r[31] + 0x00000094u;
|
|
/* 0206475C */ rbrew_write32(cpu->mem, _t75, cpu->r[11]);
|
|
/* 02064760 */ _t76 = cpu->r[31] + 0x00000054u;
|
|
/* 02064760 */ rbrew_write32(cpu->mem, _t76, cpu->r[11]);
|
|
/* 02064764 */ _t77 = cpu->r[31] + 0x00000084u;
|
|
/* 02064764 */ rbrew_write32(cpu->mem, _t77, cpu->r[11]);
|
|
/* 02064768 */ _t78 = cpu->r[31] + 0x00000050u;
|
|
/* 02064768 */ rbrew_write32(cpu->mem, _t78, cpu->r[30]);
|
|
/* 0206476C */ _t79 = cpu->r[5] + 0x00000000u;
|
|
/* 0206476C */ cpu->r[6] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02064770 */ cpu->r[10] = 0x101F0000u;
|
|
/* 02064774 */ _t80 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02064774 */ rbrew_write32(cpu->mem, _t80, cpu->r[4]);
|
|
/* 02064778 */ _t81 = cpu->r[10] + 0x00005C0Cu;
|
|
/* 02064778 */ cpu->r[7] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02064778 */ cpu->r[10] = _t81;
|
|
/* 0206477C */ _t82 = cpu->r[10] + 0x00000004u;
|
|
/* 0206477C */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02064780 */ _t83 = cpu->r[31] + 0x000000BCu;
|
|
/* 02064780 */ rbrew_write32(cpu->mem, _t83, cpu->r[27]);
|
|
/* 02064784 */ _t84 = cpu->r[31] + 0x000000A0u;
|
|
/* 02064784 */ rbrew_write32(cpu->mem, _t84, cpu->r[7]);
|
|
/* 02064788 */ _t85 = cpu->r[31] + 0x000000A4u;
|
|
/* 02064788 */ rbrew_write32(cpu->mem, _t85, cpu->r[8]);
|
|
/* 0206478C */ _t86 = cpu->r[31] + 0x00000078u;
|
|
/* 0206478C */ rbrew_write32(cpu->mem, _t86, cpu->r[9]);
|
|
/* 02064790 */ cpu->r[12] = 0x10000000u;
|
|
/* 02064794 */ _t87 = cpu->r[10] + 0x00000008u;
|
|
/* 02064794 */ cpu->r[9] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02064798 */ _t88 = cpu->r[12] + 0x0000703Cu;
|
|
/* 02064798 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0206479C */ _t89 = cpu->r[31] + 0x000000A8u;
|
|
/* 0206479C */ rbrew_write32(cpu->mem, _t89, cpu->r[9]);
|
|
/* 020647A0 */ _t90 = cpu->r[31] + 0x00000060u;
|
|
/* 020647A0 */ rbrew_write32(cpu->mem, _t90, cpu->r[6]);
|
|
/* 020647A4 */ _t91 = cpu->r[31] + 0x00000098u;
|
|
/* 020647A4 */ rbrew_write32(cpu->mem, _t91, cpu->r[3]);
|
|
/* 020647A8 */ _t92 = cpu->r[31] + 0x0000009Cu;
|
|
/* 020647A8 */ rbrew_write32(cpu->mem, _t92, cpu->r[4]);
|
|
/* 020647AC */ _t93 = cpu->r[5] + 0x00000008u;
|
|
/* 020647AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 020647B0 */ _t94 = cpu->r[31] + 0x000000B8u;
|
|
/* 020647B0 */ rbrew_write32(cpu->mem, _t94, cpu->r[29]);
|
|
/* 020647B4 */ cpu->r[12] = 0x10000000u;
|
|
/* 020647B8 */ _t95 = cpu->r[31] + 0x00000068u;
|
|
/* 020647B8 */ rbrew_write32(cpu->mem, _t95, cpu->r[9]);
|
|
/* 020647BC */ cpu->r[3] = cpu->r[31] + 0x000000C0u;
|
|
/* 020647C0 */ _t96 = cpu->r[12] + 0x00007034u;
|
|
/* 020647C0 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t96);
|
|
/* 020647C4 */ _t97 = cpu->r[31] + 0x000000B0u;
|
|
/* 020647C4 */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 020647C8 */ cpu->r[12] = 0x10000000u;
|
|
/* 020647CC */ _t98 = cpu->r[31] + 0x000000B4u;
|
|
/* 020647CC */ rbrew_write32(cpu->mem, _t98, cpu->r[26]);
|
|
/* 020647D0 */ _t99 = cpu->r[12] + 0x00007030u;
|
|
/* 020647D0 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 020647D4 */ cpu->r[11] = 0x10000000u;
|
|
/* 020647D8 */ _t100 = cpu->r[10] + 0x0000000Cu;
|
|
/* 020647D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t100);
|
|
/* 020647DC */ _t101 = cpu->r[11] + 0x00007038u;
|
|
/* 020647DC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 020647E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF40u);
|
|
/* 020647E4 */ _t102 = cpu->r[31] + 0x000000ACu;
|
|
/* 020647E4 */ rbrew_write32(cpu->mem, _t102, cpu->r[10]);
|
|
/* 020647E8 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020647E8 */ _t104 = _t103 & 0x00000001u;
|
|
/* 020647E8 */ if (_t104) goto L_020647EC; else goto L_020647FC;
|
|
L_020647EC: ; // 0x20647ec
|
|
/* 020647EC */ cpu->r[3] = 0x00000010u;
|
|
/* 020647F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 020647F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020647F8 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020647F8 */ _t106 = _t105 & 0x00000001u;
|
|
/* 020647F8 */ if (_t106) goto L_0206480C; else goto L_020647FC;
|
|
L_020647FC: ; // 0x20647fc
|
|
/* 020647FC */ _t107 = cpu->r[3] + 0x00000004u;
|
|
/* 020647FC */ rbrew_write_f32(cpu->mem, _t107, cpu->f[29]);
|
|
/* 02064800 */ _t108 = cpu->r[3] + 0x00000008u;
|
|
/* 02064800 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[28]);
|
|
/* 02064804 */ _t109 = cpu->r[3] + 0x00000000u;
|
|
/* 02064804 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[31]);
|
|
/* 02064808 */ _t110 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02064808 */ rbrew_write_f32(cpu->mem, _t110, cpu->f[30]);
|
|
L_0206480C: ; // 0x206480c
|
|
/* 0206480C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFF30u);
|
|
/* 02064810 */ cpu->r[3] = cpu->r[31] + 0x000000D0u;
|
|
/* 02064814 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064814 */ _t112 = _t111 & 0x00000001u;
|
|
/* 02064814 */ if (_t112) goto L_02064818; else goto L_02064828;
|
|
L_02064818: ; // 0x2064818
|
|
/* 02064818 */ cpu->r[3] = 0x00000010u;
|
|
/* 0206481C */ Gambit_fn_02801A78(cpu);
|
|
/* 02064820 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02064824 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064824 */ _t114 = _t113 & 0x00000001u;
|
|
/* 02064824 */ if (_t114) goto L_02064838; else goto L_02064828;
|
|
L_02064828: ; // 0x2064828
|
|
/* 02064828 */ _t115 = cpu->r[3] + 0x00000004u;
|
|
/* 02064828 */ rbrew_write_f32(cpu->mem, _t115, cpu->f[29]);
|
|
/* 0206482C */ _t116 = cpu->r[3] + 0x00000008u;
|
|
/* 0206482C */ rbrew_write_f32(cpu->mem, _t116, cpu->f[31]);
|
|
/* 02064830 */ _t117 = cpu->r[3] + 0x00000000u;
|
|
/* 02064830 */ rbrew_write_f32(cpu->mem, _t117, cpu->f[28]);
|
|
/* 02064834 */ _t118 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02064834 */ rbrew_write_f32(cpu->mem, _t118, cpu->f[30]);
|
|
L_02064838: ; // 0x2064838
|
|
/* 02064838 */ cpu->r[8] = 0x101F0000u;
|
|
/* 0206483C */ cpu->r[8] = cpu->r[8] + 0x00005BCCu;
|
|
/* 02064840 */ _t119 = cpu->r[8] + 0x00000004u;
|
|
/* 02064840 */ cpu->r[0] = rbrew_read32(cpu->mem, _t119);
|
|
/* 02064844 */ _t120 = cpu->r[8] + 0x00000000u;
|
|
/* 02064844 */ cpu->r[11] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02064848 */ _t121 = cpu->r[31] + 0x000000E4u;
|
|
/* 02064848 */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 0206484C */ _t122 = cpu->r[31] + 0x000000E0u;
|
|
/* 0206484C */ rbrew_write32(cpu->mem, _t122, cpu->r[11]);
|
|
/* 02064850 */ _t123 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02064850 */ cpu->r[0] = rbrew_read32(cpu->mem, _t123);
|
|
/* 02064854 */ _t124 = cpu->r[8] + 0x00000008u;
|
|
/* 02064854 */ cpu->r[10] = rbrew_read32(cpu->mem, _t124);
|
|
/* 02064858 */ _t125 = cpu->r[31] + 0x000000ECu;
|
|
/* 02064858 */ rbrew_write32(cpu->mem, _t125, cpu->r[0]);
|
|
/* 0206485C */ _t126 = cpu->r[31] + 0x000000E8u;
|
|
/* 0206485C */ rbrew_write32(cpu->mem, _t126, cpu->r[10]);
|
|
/* 02064860 */ /* nop */
|
|
/* 02064864 */ _t127 = cpu->r[1] + 0x00000040u;
|
|
/* 02064864 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t127);
|
|
/* 02064868 */ _t128 = cpu->r[1] + 0x00000050u;
|
|
/* 02064868 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t128);
|
|
/* 0206486C */ _t129 = cpu->r[1] + 0x00000038u;
|
|
/* 0206486C */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t129);
|
|
/* 02064870 */ _t130 = cpu->r[1] + 0x00000048u;
|
|
/* 02064870 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t130);
|
|
/* 02064874 */ _t131 = cpu->r[1] + 0x00000030u;
|
|
/* 02064874 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t131);
|
|
/* 02064878 */ _t132 = cpu->r[1] + 0x00000060u;
|
|
/* 02064878 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t132);
|
|
/* 0206487C */ _t133 = cpu->r[1] + 0x00000028u;
|
|
/* 0206487C */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t133);
|
|
/* 02064880 */ _t134 = cpu->r[1] + 0x00000058u;
|
|
/* 02064880 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t134);
|
|
/* 02064884 */ _t135 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064884 */ _t136 = _t135 & 0x00000001u;
|
|
/* 02064884 */ if (_t136) goto L_02064888; // else: addr-0 trap, fall-through
|
|
L_02064888: ; // 0x2064888
|
|
/* 02064888 */ _t137 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02064888 */ cpu->r[0] = rbrew_read32(cpu->mem, _t137);
|
|
/* 0206488C */ cpu->lr = cpu->r[0];
|
|
/* 02064890 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 02064894 */ return;
|
|
}
|
|
|
|
// fn_020648A4 @ 0x20648a4
|
|
void Gambit_fn_020648A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_020648A4: ; // 0x20648a4
|
|
/* 020648A4 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 020648A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020648A4 */ cpu->r[1] = _t0;
|
|
/* 020648A8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020648A8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 020648A8 */ if (_t2) goto L_020648AC; else goto L_020648BC;
|
|
L_020648AC: ; // 0x20648ac
|
|
/* 020648AC */ cpu->r[3] = 0x00000008u;
|
|
/* 020648B0 */ Gambit_fn_02801A78(cpu);
|
|
/* 020648B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020648B8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020648B8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 020648B8 */ if (_t4) goto L_020648CC; else goto L_020648BC;
|
|
L_020648BC: ; // 0x20648bc
|
|
/* 020648BC */ cpu->r[12] = 0x00000000u;
|
|
/* 020648C0 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 020648C4 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 020648C4 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 020648C8 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 020648C8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_020648CC: ; // 0x20648cc
|
|
/* 020648CC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020648CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 020648D0 */ cpu->lr = cpu->r[0];
|
|
/* 020648D4 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 020648D8 */ return;
|
|
}
|
|
|
|
// fn_020648DC @ 0x20648dc
|
|
void Gambit_fn_020648DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_020648DC: ; // 0x20648dc
|
|
/* 020648DC */ cpu->r[0] = cpu->lr;
|
|
/* 020648E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020648E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020648E0 */ cpu->r[1] = _t0;
|
|
/* 020648E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020648E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020648E8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 020648E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020648EC */ cpu->r[30] = cpu->r[3];
|
|
/* 020648EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 020648F0 */ cpu->r[31] = cpu->r[4];
|
|
/* 020648F4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020648F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020648F8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020648F8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 020648F8 */ if (_t5) goto L_02064918; else goto L_020648FC;
|
|
L_020648FC: ; // 0x20648fc
|
|
/* 020648FC */ cpu->r[3] = cpu->r[30];
|
|
/* 02064900 */ cpu->r[4] = 0x00000000u;
|
|
/* 02064904 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02064908 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02064908 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206490C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206490C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206490C */ if (_t7) goto L_02064918; else goto L_02064910;
|
|
L_02064910: ; // 0x2064910
|
|
/* 02064910 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064914 */ Gambit_fn_02801BB0(cpu);
|
|
L_02064918: ; // 0x2064918
|
|
/* 02064918 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02064918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206491C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0206491C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064920 */ cpu->lr = cpu->r[0];
|
|
/* 02064924 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064924 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02064928 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206492C */ return;
|
|
}
|
|
|
|
// fn_020648E0 @ 0x20648e0
|
|
void Gambit_fn_020648E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_020648E0: ; // 0x20648e0
|
|
/* 020648E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020648E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020648E0 */ cpu->r[1] = _t0;
|
|
/* 020648E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020648E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020648E8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 020648E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020648EC */ cpu->r[30] = cpu->r[3];
|
|
/* 020648EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 020648F0 */ cpu->r[31] = cpu->r[4];
|
|
/* 020648F4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020648F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020648F8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020648F8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 020648F8 */ if (_t5) goto L_02064918; else goto L_020648FC;
|
|
L_020648FC: ; // 0x20648fc
|
|
/* 020648FC */ cpu->r[3] = cpu->r[30];
|
|
/* 02064900 */ cpu->r[4] = 0x00000000u;
|
|
/* 02064904 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02064908 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02064908 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206490C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206490C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206490C */ if (_t7) goto L_02064918; else goto L_02064910;
|
|
L_02064910: ; // 0x2064910
|
|
/* 02064910 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064914 */ Gambit_fn_02801BB0(cpu);
|
|
L_02064918: ; // 0x2064918
|
|
/* 02064918 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02064918 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206491C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0206491C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064920 */ cpu->lr = cpu->r[0];
|
|
/* 02064924 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064924 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02064928 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206492C */ return;
|
|
}
|
|
|
|
// fn_02064930 @ 0x2064930
|
|
void Gambit_fn_02064930(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02064930: ; // 0x2064930
|
|
/* 02064930 */ cpu->r[0] = cpu->lr;
|
|
/* 02064934 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064934 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064934 */ cpu->r[1] = _t0;
|
|
/* 02064938 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064938 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206493C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206493C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02064940 */ cpu->r[30] = cpu->r[3];
|
|
/* 02064940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02064944 */ cpu->r[31] = cpu->r[4];
|
|
/* 02064948 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02064948 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206494C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206494C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206494C */ if (_t5) goto L_0206496C; else goto L_02064950;
|
|
L_02064950: ; // 0x2064950
|
|
/* 02064950 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064954 */ cpu->r[4] = 0x00000000u;
|
|
/* 02064958 */ Gambit_fn_028A65C0(cpu);
|
|
/* 0206495C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206495C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064960 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064960 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02064960 */ if (_t7) goto L_0206496C; else goto L_02064964;
|
|
L_02064964: ; // 0x2064964
|
|
/* 02064964 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064968 */ Gambit_fn_02801BB0(cpu);
|
|
L_0206496C: ; // 0x206496c
|
|
/* 0206496C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0206496C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02064970 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02064970 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064974 */ cpu->lr = cpu->r[0];
|
|
/* 02064978 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064978 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206497C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064980 */ return;
|
|
}
|
|
|
|
// fn_02064934 @ 0x2064934
|
|
void Gambit_fn_02064934(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02064934: ; // 0x2064934
|
|
/* 02064934 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064934 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064934 */ cpu->r[1] = _t0;
|
|
/* 02064938 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064938 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206493C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206493C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02064940 */ cpu->r[30] = cpu->r[3];
|
|
/* 02064940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02064944 */ cpu->r[31] = cpu->r[4];
|
|
/* 02064948 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02064948 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206494C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206494C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206494C */ if (_t5) goto L_0206496C; else goto L_02064950;
|
|
L_02064950: ; // 0x2064950
|
|
/* 02064950 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064954 */ cpu->r[4] = 0x00000000u;
|
|
/* 02064958 */ Gambit_fn_028A65C0(cpu);
|
|
/* 0206495C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206495C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064960 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064960 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02064960 */ if (_t7) goto L_0206496C; else goto L_02064964;
|
|
L_02064964: ; // 0x2064964
|
|
/* 02064964 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064968 */ Gambit_fn_02801BB0(cpu);
|
|
L_0206496C: ; // 0x206496c
|
|
/* 0206496C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0206496C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02064970 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02064970 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064974 */ cpu->lr = cpu->r[0];
|
|
/* 02064978 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064978 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206497C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064980 */ return;
|
|
}
|
|
|
|
// fn_02064984 @ 0x2064984
|
|
void Gambit_fn_02064984(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_02064984: ; // 0x2064984
|
|
/* 02064984 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02064984 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064984 */ cpu->r[1] = _t0;
|
|
/* 02064988 */ /* nop */
|
|
/* 0206498C */ cpu->r[0] = cpu->lr;
|
|
/* 02064990 */ cpu->r[23] = cpu->r[3];
|
|
/* 02064994 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 02064994 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02064998 */ Gambit_fn_02062354(cpu);
|
|
/* 0206499C */ cpu->r[7] = 0x101E0000u;
|
|
/* 020649A0 */ _t2 = cpu->r[7] + 0xFFFFD43Cu;
|
|
/* 020649A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 020649A0 */ cpu->r[7] = _t2;
|
|
/* 020649A4 */ cpu->r[31] = 0x101E0000u;
|
|
/* 020649A8 */ cpu->r[22] = cpu->r[3];
|
|
/* 020649AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020649B0 */ cpu->r[31] = cpu->r[31] + 0xFFFFD3CCu;
|
|
/* 020649B4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020649B4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 020649B4 */ if (_t4) goto L_020649B8; else goto L_02064A00;
|
|
L_020649B8: ; // 0x20649b8
|
|
/* 020649B8 */ cpu->r[12] = 0x00000001u;
|
|
/* 020649BC */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 020649C0 */ cpu->r[4] = 0x10000000u;
|
|
/* 020649C4 */ _t5 = cpu->r[7] + 0x00000000u;
|
|
/* 020649C4 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 020649C8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020649CC */ cpu->r[5] = 0x00000002u;
|
|
/* 020649D0 */ cpu->r[4] = cpu->r[4] + 0x00007040u;
|
|
/* 020649D4 */ cpu->r[7] = 0x00000000u;
|
|
/* 020649D8 */ Gambit_fn_028A6750(cpu);
|
|
/* 020649DC */ cpu->r[6] = 0x02060000u;
|
|
/* 020649E0 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 020649E4 */ cpu->r[4] = 0x00000002u;
|
|
/* 020649E8 */ cpu->r[6] = cpu->r[6] + 0x00004B24u;
|
|
/* 020649EC */ cpu->r[5] = 0x00000008u;
|
|
/* 020649F0 */ Gambit_fn_02C82E00(cpu);
|
|
/* 020649F4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 020649F8 */ cpu->r[3] = cpu->r[3] + 0x000033B0u;
|
|
/* 020649FC */ Gambit_fn_02C83090(cpu);
|
|
L_02064A00: ; // 0x2064a00
|
|
/* 02064A00 */ _t6 = cpu->r[31] + 0x00000054u;
|
|
/* 02064A00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02064A04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064A08 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064A08 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02064A08 */ if (_t8) goto L_02064A0C; else goto L_02064B00;
|
|
L_02064A0C: ; // 0x2064a0c
|
|
/* 02064A0C */ cpu->r[26] = 0x101D0000u;
|
|
/* 02064A10 */ cpu->r[30] = 0x00000000u;
|
|
/* 02064A14 */ cpu->r[19] = 0x101D0000u;
|
|
/* 02064A18 */ cpu->r[20] = 0x101D0000u;
|
|
/* 02064A1C */ cpu->r[21] = 0x00000001u;
|
|
/* 02064A20 */ cpu->r[27] = cpu->r[30];
|
|
/* 02064A24 */ cpu->r[25] = 0x101D0000u;
|
|
/* 02064A28 */ cpu->r[26] = cpu->r[26] + 0xFFFFED3Cu;
|
|
/* 02064A2C */ cpu->r[24] = 0x101D0000u;
|
|
L_02064A30: ; // 0x2064a30
|
|
/* 02064A30 */ _t9 = cpu->r[24] + 0xFFFFED4Cu;
|
|
/* 02064A30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064A34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064A38 */ cpu->r[29] = cpu->r[30];
|
|
/* 02064A3C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064A3C */ _t11 = _t10 & 0x00000001u;
|
|
/* 02064A3C */ if (_t11) goto L_02064A40; else goto L_02064A58;
|
|
L_02064A40: ; // 0x2064a40
|
|
/* 02064A40 */ cpu->r[4] = 0x101C0000u;
|
|
/* 02064A44 */ cpu->r[3] = cpu->r[25] + 0x00003C59u;
|
|
/* 02064A48 */ cpu->r[5] = 0x00000011u;
|
|
/* 02064A4C */ cpu->r[4] = cpu->r[4] + 0x0000339Cu;
|
|
/* 02064A50 */ _t12 = cpu->r[24] + 0xFFFFED4Cu;
|
|
/* 02064A50 */ rbrew_write32(cpu->mem, _t12, cpu->r[21]);
|
|
/* 02064A54 */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02064A58: ; // 0x2064a58
|
|
/* 02064A58 */ _t13 = cpu->r[20] + 0xFFFFED48u;
|
|
/* 02064A58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02064A5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02064A60 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064A60 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02064A60 */ if (_t15) goto L_02064A64; else goto L_02064A6C;
|
|
L_02064A64: ; // 0x2064a64
|
|
/* 02064A64 */ _t16 = cpu->r[19] + 0xFFFFED44u;
|
|
/* 02064A64 */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 02064A68 */ _t17 = cpu->r[20] + 0xFFFFED48u;
|
|
/* 02064A68 */ rbrew_write32(cpu->mem, _t17, cpu->r[21]);
|
|
L_02064A6C: ; // 0x2064a6c
|
|
/* 02064A6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000002u);
|
|
/* 02064A70 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064A70 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02064A70 */ if (_t19) goto L_02064A98; else goto L_02064A74;
|
|
L_02064A74: ; // 0x2064a74
|
|
/* 02064A74 */ cpu->r[4] = cpu->r[30];
|
|
/* 02064A78 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064A7C */ cpu->r[5] = 0x00000000u;
|
|
/* 02064A80 */ Gambit_fn_028A6634(cpu);
|
|
/* 02064A84 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02064A88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 02064A8C */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02064A8C */ _t21 = _t20 & 0x00000001u;
|
|
/* 02064A8C */ if (_t21) goto L_02064B00; else goto L_02064A90;
|
|
L_02064A90: ; // 0x2064a90
|
|
/* 02064A90 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064A90 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02064A90 */ if (_t23) goto L_02064A30; else goto L_02064A94;
|
|
L_02064A94: ; // 0x2064a94
|
|
/* 02064A94 */ goto L_02064B00;
|
|
L_02064A98: ; // 0x2064a98
|
|
/* 02064A98 */ _t24 = cpu->r[19] + 0xFFFFED44u;
|
|
/* 02064A98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02064A9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064AA0 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064AA0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02064AA0 */ if (_t26) goto L_02064AA4; else goto L_02064ADC;
|
|
L_02064AA4: ; // 0x2064aa4
|
|
/* 02064AA4 */ Gambit_fn_0282A450(cpu);
|
|
/* 02064AA8 */ cpu->r[28] = cpu->r[3];
|
|
/* 02064AAC */ Gambit_fn_02836FFC(cpu);
|
|
/* 02064AB0 */ _t27 = cpu->r[19] + 0xFFFFED44u;
|
|
/* 02064AB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02064AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064AB8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064AB8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02064AB8 */ if (_t29) goto L_02064ABC; else goto L_02064AD0;
|
|
L_02064ABC: ; // 0x2064abc
|
|
/* 02064ABC */ cpu->r[5] = 0x00000002u;
|
|
/* 02064AC0 */ cpu->r[4] = cpu->r[25] + 0x00003C59u;
|
|
/* 02064AC4 */ cpu->r[3] = cpu->r[26];
|
|
/* 02064AC8 */ Gambit_fn_0282A374(cpu);
|
|
/* 02064ACC */ _t30 = cpu->r[19] + 0xFFFFED44u;
|
|
/* 02064ACC */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
L_02064AD0: ; // 0x2064ad0
|
|
/* 02064AD0 */ cpu->r[3] = cpu->r[28];
|
|
/* 02064AD4 */ Gambit_fn_02837030(cpu);
|
|
/* 02064AD8 */ _t31 = cpu->r[19] + 0xFFFFED44u;
|
|
/* 02064AD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
L_02064ADC: ; // 0x2064adc
|
|
/* 02064ADC */ cpu->r[12] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02064AE0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064AE4 */ _t32 = cpu->r[12] + cpu->r[0];
|
|
/* 02064AE4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02064AE8 */ cpu->r[4] = cpu->r[30];
|
|
/* 02064AEC */ Gambit_fn_028A6634(cpu);
|
|
/* 02064AF0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02064AF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 02064AF8 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02064AF8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02064AF8 */ if (_t34) goto L_02064B00; else goto L_02064AFC;
|
|
L_02064AFC: ; // 0x2064afc
|
|
/* 02064AFC */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064AFC */ _t36 = _t35 & 0x00000001u;
|
|
/* 02064AFC */ if (_t36) goto L_02064A30; else goto L_02064B00;
|
|
L_02064B00: ; // 0x2064b00
|
|
/* 02064B00 */ cpu->r[3] = cpu->r[23];
|
|
/* 02064B04 */ cpu->r[4] = cpu->r[31];
|
|
/* 02064B08 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02064B0C */ cpu->r[3] = cpu->r[22] + 0x00000001u;
|
|
/* 02064B10 */ /* nop */
|
|
/* 02064B14 */ _t37 = cpu->r[1] + 0x00000044u;
|
|
/* 02064B14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02064B18 */ cpu->lr = cpu->r[0];
|
|
/* 02064B1C */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02064B20 */ return;
|
|
}
|
|
|
|
// fn_02064B30 @ 0x2064b30
|
|
void Gambit_fn_02064B30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02064B30: ; // 0x2064b30
|
|
/* 02064B30 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02064B30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064B30 */ cpu->r[1] = _t0;
|
|
/* 02064B34 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064B34 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02064B34 */ if (_t2) goto L_02064B38; else goto L_02064B48;
|
|
L_02064B38: ; // 0x2064b38
|
|
/* 02064B38 */ cpu->r[3] = 0x00000008u;
|
|
/* 02064B3C */ Gambit_fn_02801A78(cpu);
|
|
/* 02064B40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02064B44 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064B44 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02064B44 */ if (_t4) goto L_02064B58; else goto L_02064B48;
|
|
L_02064B48: ; // 0x2064b48
|
|
/* 02064B48 */ cpu->r[12] = 0x00000000u;
|
|
/* 02064B4C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02064B50 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02064B50 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02064B54 */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02064B54 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_02064B58: ; // 0x2064b58
|
|
/* 02064B58 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064B58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02064B5C */ cpu->lr = cpu->r[0];
|
|
/* 02064B60 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02064B64 */ return;
|
|
}
|
|
|
|
// fn_02064B68 @ 0x2064b68
|
|
void Gambit_fn_02064B68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02064B68: ; // 0x2064b68
|
|
/* 02064B68 */ cpu->r[0] = cpu->lr;
|
|
/* 02064B6C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064B6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064B6C */ cpu->r[1] = _t0;
|
|
/* 02064B70 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064B70 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02064B74 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02064B74 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02064B78 */ cpu->r[30] = cpu->r[3];
|
|
/* 02064B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02064B7C */ cpu->r[31] = cpu->r[4];
|
|
/* 02064B80 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02064B80 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02064B84 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064B84 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02064B84 */ if (_t5) goto L_02064BA4; else goto L_02064B88;
|
|
L_02064B88: ; // 0x2064b88
|
|
/* 02064B88 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064B8C */ cpu->r[4] = 0x00000000u;
|
|
/* 02064B90 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02064B94 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02064B94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064B98 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064B98 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02064B98 */ if (_t7) goto L_02064BA4; else goto L_02064B9C;
|
|
L_02064B9C: ; // 0x2064b9c
|
|
/* 02064B9C */ cpu->r[3] = cpu->r[30];
|
|
/* 02064BA0 */ Gambit_fn_02801BB0(cpu);
|
|
L_02064BA4: ; // 0x2064ba4
|
|
/* 02064BA4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02064BA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02064BA8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02064BA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064BAC */ cpu->lr = cpu->r[0];
|
|
/* 02064BB0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064BB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02064BB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064BB8 */ return;
|
|
}
|
|
|
|
// fn_02064B6C @ 0x2064b6c
|
|
void Gambit_fn_02064B6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02064B6C: ; // 0x2064b6c
|
|
/* 02064B6C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064B6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064B6C */ cpu->r[1] = _t0;
|
|
/* 02064B70 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064B70 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02064B74 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02064B74 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02064B78 */ cpu->r[30] = cpu->r[3];
|
|
/* 02064B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02064B7C */ cpu->r[31] = cpu->r[4];
|
|
/* 02064B80 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02064B80 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02064B84 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064B84 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02064B84 */ if (_t5) goto L_02064BA4; else goto L_02064B88;
|
|
L_02064B88: ; // 0x2064b88
|
|
/* 02064B88 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064B8C */ cpu->r[4] = 0x00000000u;
|
|
/* 02064B90 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02064B94 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02064B94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064B98 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064B98 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02064B98 */ if (_t7) goto L_02064BA4; else goto L_02064B9C;
|
|
L_02064B9C: ; // 0x2064b9c
|
|
/* 02064B9C */ cpu->r[3] = cpu->r[30];
|
|
/* 02064BA0 */ Gambit_fn_02801BB0(cpu);
|
|
L_02064BA4: ; // 0x2064ba4
|
|
/* 02064BA4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02064BA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02064BA8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02064BA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064BAC */ cpu->lr = cpu->r[0];
|
|
/* 02064BB0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064BB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02064BB4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064BB8 */ return;
|
|
}
|
|
|
|
// fn_02064BBC @ 0x2064bbc
|
|
void Gambit_fn_02064BBC(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_02064BBC: ; // 0x2064bbc
|
|
/* 02064BBC */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02064BBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064BBC */ cpu->r[1] = _t0;
|
|
/* 02064BC0 */ /* nop */
|
|
/* 02064BC4 */ cpu->r[0] = cpu->lr;
|
|
/* 02064BC8 */ cpu->r[23] = cpu->r[3];
|
|
/* 02064BCC */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 02064BCC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02064BD0 */ Gambit_fn_02062AF0(cpu);
|
|
/* 02064BD4 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02064BD8 */ _t2 = cpu->r[7] + 0xFFFFD4C0u;
|
|
/* 02064BD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02064BD8 */ cpu->r[7] = _t2;
|
|
/* 02064BDC */ cpu->r[31] = 0x101E0000u;
|
|
/* 02064BE0 */ cpu->r[22] = cpu->r[3];
|
|
/* 02064BE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064BE8 */ cpu->r[31] = cpu->r[31] + 0xFFFFD440u;
|
|
/* 02064BEC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064BEC */ _t4 = _t3 & 0x00000001u;
|
|
/* 02064BEC */ if (_t4) goto L_02064BF0; else goto L_02064C38;
|
|
L_02064BF0: ; // 0x2064bf0
|
|
/* 02064BF0 */ cpu->r[12] = 0x00000001u;
|
|
/* 02064BF4 */ cpu->r[6] = cpu->r[31] + 0x00000060u;
|
|
/* 02064BF8 */ cpu->r[4] = 0x10000000u;
|
|
/* 02064BFC */ _t5 = cpu->r[7] + 0x00000000u;
|
|
/* 02064BFC */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02064C00 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064C04 */ cpu->r[5] = 0x00000004u;
|
|
/* 02064C08 */ cpu->r[4] = cpu->r[4] + 0x0000704Cu;
|
|
/* 02064C0C */ cpu->r[7] = 0x00000000u;
|
|
/* 02064C10 */ Gambit_fn_028A6750(cpu);
|
|
/* 02064C14 */ cpu->r[6] = 0x02060000u;
|
|
/* 02064C18 */ cpu->r[3] = cpu->r[31] + 0x00000060u;
|
|
/* 02064C1C */ cpu->r[4] = 0x00000004u;
|
|
/* 02064C20 */ cpu->r[6] = cpu->r[6] + 0x00004D5Cu;
|
|
/* 02064C24 */ cpu->r[5] = 0x00000008u;
|
|
/* 02064C28 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02064C2C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02064C30 */ cpu->r[3] = cpu->r[3] + 0x000033E0u;
|
|
/* 02064C34 */ Gambit_fn_02C83090(cpu);
|
|
L_02064C38: ; // 0x2064c38
|
|
/* 02064C38 */ _t6 = cpu->r[31] + 0x00000054u;
|
|
/* 02064C38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02064C3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064C40 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064C40 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02064C40 */ if (_t8) goto L_02064C44; else goto L_02064D38;
|
|
L_02064C44: ; // 0x2064c44
|
|
/* 02064C44 */ cpu->r[26] = 0x101D0000u;
|
|
/* 02064C48 */ cpu->r[30] = 0x00000000u;
|
|
/* 02064C4C */ cpu->r[19] = 0x101D0000u;
|
|
/* 02064C50 */ cpu->r[20] = 0x101D0000u;
|
|
/* 02064C54 */ cpu->r[21] = 0x00000001u;
|
|
/* 02064C58 */ cpu->r[27] = cpu->r[30];
|
|
/* 02064C5C */ cpu->r[25] = 0x101D0000u;
|
|
/* 02064C60 */ cpu->r[26] = cpu->r[26] + 0xFFFFED58u;
|
|
/* 02064C64 */ cpu->r[24] = 0x101D0000u;
|
|
L_02064C68: ; // 0x2064c68
|
|
/* 02064C68 */ _t9 = cpu->r[24] + 0xFFFFED70u;
|
|
/* 02064C68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064C6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064C70 */ cpu->r[29] = cpu->r[30];
|
|
/* 02064C74 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064C74 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02064C74 */ if (_t11) goto L_02064C78; else goto L_02064C90;
|
|
L_02064C78: ; // 0x2064c78
|
|
/* 02064C78 */ cpu->r[4] = 0x101C0000u;
|
|
/* 02064C7C */ cpu->r[3] = cpu->r[25] + 0x00003C6Au;
|
|
/* 02064C80 */ cpu->r[5] = 0x00000021u;
|
|
/* 02064C84 */ cpu->r[4] = cpu->r[4] + 0x000033BCu;
|
|
/* 02064C88 */ _t12 = cpu->r[24] + 0xFFFFED70u;
|
|
/* 02064C88 */ rbrew_write32(cpu->mem, _t12, cpu->r[21]);
|
|
/* 02064C8C */ rbrew_dispatch(cpu, 0x02d0b870u);
|
|
L_02064C90: ; // 0x2064c90
|
|
/* 02064C90 */ _t13 = cpu->r[20] + 0xFFFFED6Cu;
|
|
/* 02064C90 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02064C94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02064C98 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064C98 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02064C98 */ if (_t15) goto L_02064C9C; else goto L_02064CA4;
|
|
L_02064C9C: ; // 0x2064c9c
|
|
/* 02064C9C */ _t16 = cpu->r[19] + 0xFFFFED68u;
|
|
/* 02064C9C */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 02064CA0 */ _t17 = cpu->r[20] + 0xFFFFED6Cu;
|
|
/* 02064CA0 */ rbrew_write32(cpu->mem, _t17, cpu->r[21]);
|
|
L_02064CA4: ; // 0x2064ca4
|
|
/* 02064CA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000004u);
|
|
/* 02064CA8 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064CA8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02064CA8 */ if (_t19) goto L_02064CD0; else goto L_02064CAC;
|
|
L_02064CAC: ; // 0x2064cac
|
|
/* 02064CAC */ cpu->r[4] = cpu->r[30];
|
|
/* 02064CB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064CB4 */ cpu->r[5] = 0x00000000u;
|
|
/* 02064CB8 */ Gambit_fn_028A6634(cpu);
|
|
/* 02064CBC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02064CC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000004u);
|
|
/* 02064CC4 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02064CC4 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02064CC4 */ if (_t21) goto L_02064D38; else goto L_02064CC8;
|
|
L_02064CC8: ; // 0x2064cc8
|
|
/* 02064CC8 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064CC8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02064CC8 */ if (_t23) goto L_02064C68; else goto L_02064CCC;
|
|
L_02064CCC: ; // 0x2064ccc
|
|
/* 02064CCC */ goto L_02064D38;
|
|
L_02064CD0: ; // 0x2064cd0
|
|
/* 02064CD0 */ _t24 = cpu->r[19] + 0xFFFFED68u;
|
|
/* 02064CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02064CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064CD8 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064CD8 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02064CD8 */ if (_t26) goto L_02064CDC; else goto L_02064D14;
|
|
L_02064CDC: ; // 0x2064cdc
|
|
/* 02064CDC */ Gambit_fn_0282A450(cpu);
|
|
/* 02064CE0 */ cpu->r[28] = cpu->r[3];
|
|
/* 02064CE4 */ Gambit_fn_02836FFC(cpu);
|
|
/* 02064CE8 */ _t27 = cpu->r[19] + 0xFFFFED68u;
|
|
/* 02064CE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02064CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064CF0 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064CF0 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02064CF0 */ if (_t29) goto L_02064CF4; else goto L_02064D08;
|
|
L_02064CF4: ; // 0x2064cf4
|
|
/* 02064CF4 */ cpu->r[5] = 0x00000004u;
|
|
/* 02064CF8 */ cpu->r[4] = cpu->r[25] + 0x00003C6Au;
|
|
/* 02064CFC */ cpu->r[3] = cpu->r[26];
|
|
/* 02064D00 */ Gambit_fn_0282A374(cpu);
|
|
/* 02064D04 */ _t30 = cpu->r[19] + 0xFFFFED68u;
|
|
/* 02064D04 */ rbrew_write32(cpu->mem, _t30, cpu->r[26]);
|
|
L_02064D08: ; // 0x2064d08
|
|
/* 02064D08 */ cpu->r[3] = cpu->r[28];
|
|
/* 02064D0C */ Gambit_fn_02837030(cpu);
|
|
/* 02064D10 */ _t31 = cpu->r[19] + 0xFFFFED68u;
|
|
/* 02064D10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
L_02064D14: ; // 0x2064d14
|
|
/* 02064D14 */ cpu->r[12] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02064D18 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064D1C */ _t32 = cpu->r[12] + cpu->r[0];
|
|
/* 02064D1C */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02064D20 */ cpu->r[4] = cpu->r[30];
|
|
/* 02064D24 */ Gambit_fn_028A6634(cpu);
|
|
/* 02064D28 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02064D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000004u);
|
|
/* 02064D30 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02064D30 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02064D30 */ if (_t34) goto L_02064D38; else goto L_02064D34;
|
|
L_02064D34: ; // 0x2064d34
|
|
/* 02064D34 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064D34 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02064D34 */ if (_t36) goto L_02064C68; else goto L_02064D38;
|
|
L_02064D38: ; // 0x2064d38
|
|
/* 02064D38 */ cpu->r[3] = cpu->r[23];
|
|
/* 02064D3C */ cpu->r[4] = cpu->r[31];
|
|
/* 02064D40 */ Gambit_fn_027B81E4(cpu);
|
|
/* 02064D44 */ cpu->r[3] = cpu->r[22] + 0x00000001u;
|
|
/* 02064D48 */ /* nop */
|
|
/* 02064D4C */ _t37 = cpu->r[1] + 0x00000044u;
|
|
/* 02064D4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02064D50 */ cpu->lr = cpu->r[0];
|
|
/* 02064D54 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02064D58 */ return;
|
|
}
|
|
|
|
// fn_02064D68 @ 0x2064d68
|
|
void Gambit_fn_02064D68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02064D68: ; // 0x2064d68
|
|
/* 02064D68 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02064D68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064D68 */ cpu->r[1] = _t0;
|
|
/* 02064D6C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064D6C */ _t2 = _t1 & 0x00000001u;
|
|
/* 02064D6C */ if (_t2) goto L_02064D70; else goto L_02064D80;
|
|
L_02064D70: ; // 0x2064d70
|
|
/* 02064D70 */ cpu->r[3] = 0x00000008u;
|
|
/* 02064D74 */ Gambit_fn_02801A78(cpu);
|
|
/* 02064D78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02064D7C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064D7C */ _t4 = _t3 & 0x00000001u;
|
|
/* 02064D7C */ if (_t4) goto L_02064D90; else goto L_02064D80;
|
|
L_02064D80: ; // 0x2064d80
|
|
/* 02064D80 */ cpu->r[12] = 0x00000000u;
|
|
/* 02064D84 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02064D88 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02064D88 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02064D8C */ _t6 = cpu->r[3] + 0x00000004u;
|
|
/* 02064D8C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
L_02064D90: ; // 0x2064d90
|
|
/* 02064D90 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064D90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02064D94 */ cpu->lr = cpu->r[0];
|
|
/* 02064D98 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02064D9C */ return;
|
|
}
|
|
|
|
// fn_02064DA0 @ 0x2064da0
|
|
void Gambit_fn_02064DA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02064DA0: ; // 0x2064da0
|
|
/* 02064DA0 */ cpu->r[0] = cpu->lr;
|
|
/* 02064DA4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064DA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064DA4 */ cpu->r[1] = _t0;
|
|
/* 02064DA8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064DA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02064DAC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02064DAC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02064DB0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02064DB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02064DB4 */ cpu->r[31] = cpu->r[4];
|
|
/* 02064DB8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02064DB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02064DBC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064DBC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02064DBC */ if (_t5) goto L_02064DDC; else goto L_02064DC0;
|
|
L_02064DC0: ; // 0x2064dc0
|
|
/* 02064DC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064DC4 */ cpu->r[4] = 0x00000000u;
|
|
/* 02064DC8 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02064DCC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02064DCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064DD0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064DD0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02064DD0 */ if (_t7) goto L_02064DDC; else goto L_02064DD4;
|
|
L_02064DD4: ; // 0x2064dd4
|
|
/* 02064DD4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064DD8 */ Gambit_fn_02801BB0(cpu);
|
|
L_02064DDC: ; // 0x2064ddc
|
|
/* 02064DDC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02064DDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02064DE0 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02064DE0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064DE4 */ cpu->lr = cpu->r[0];
|
|
/* 02064DE8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064DE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02064DEC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064DF0 */ return;
|
|
}
|
|
|
|
// fn_02064DA4 @ 0x2064da4
|
|
void Gambit_fn_02064DA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02064DA4: ; // 0x2064da4
|
|
/* 02064DA4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064DA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064DA4 */ cpu->r[1] = _t0;
|
|
/* 02064DA8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064DA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02064DAC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02064DAC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02064DB0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02064DB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02064DB4 */ cpu->r[31] = cpu->r[4];
|
|
/* 02064DB8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02064DB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02064DBC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064DBC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02064DBC */ if (_t5) goto L_02064DDC; else goto L_02064DC0;
|
|
L_02064DC0: ; // 0x2064dc0
|
|
/* 02064DC0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064DC4 */ cpu->r[4] = 0x00000000u;
|
|
/* 02064DC8 */ Gambit_fn_028A65C0(cpu);
|
|
/* 02064DCC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02064DCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064DD0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064DD0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02064DD0 */ if (_t7) goto L_02064DDC; else goto L_02064DD4;
|
|
L_02064DD4: ; // 0x2064dd4
|
|
/* 02064DD4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02064DD8 */ Gambit_fn_02801BB0(cpu);
|
|
L_02064DDC: ; // 0x2064ddc
|
|
/* 02064DDC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02064DDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02064DE0 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02064DE0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02064DE4 */ cpu->lr = cpu->r[0];
|
|
/* 02064DE8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064DE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02064DEC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064DF0 */ return;
|
|
}
|
|
|
|
// fn_02064DF4 @ 0x2064df4
|
|
void Gambit_fn_02064DF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02064DF4: ; // 0x2064df4
|
|
/* 02064DF4 */ cpu->r[0] = cpu->lr;
|
|
/* 02064DF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064DF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064DF8 */ cpu->r[1] = _t0;
|
|
/* 02064DFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064DFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02064E00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02064E00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02064E04 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 02064E04 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02064E08 */ cpu->r[31] = cpu->r[3];
|
|
/* 02064E0C */ /* nop */
|
|
/* 02064E10 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02064E14 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064E18 */ Gambit_fn_02064E30(cpu);
|
|
/* 02064E1C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02064E1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02064E20 */ cpu->lr = cpu->r[0];
|
|
/* 02064E24 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064E24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02064E28 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064E2C */ return;
|
|
}
|
|
|
|
// fn_02064DF8 @ 0x2064df8
|
|
void Gambit_fn_02064DF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02064DF8: ; // 0x2064df8
|
|
/* 02064DF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064DF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064DF8 */ cpu->r[1] = _t0;
|
|
/* 02064DFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064DFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02064E00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02064E00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02064E04 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 02064E04 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02064E08 */ cpu->r[31] = cpu->r[3];
|
|
/* 02064E0C */ /* nop */
|
|
/* 02064E10 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02064E14 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064E18 */ Gambit_fn_02064E30(cpu);
|
|
/* 02064E1C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02064E1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02064E20 */ cpu->lr = cpu->r[0];
|
|
/* 02064E24 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064E24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02064E28 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064E2C */ return;
|
|
}
|
|
|
|
// fn_02064E30 @ 0x2064e30
|
|
void Gambit_fn_02064E30(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_02064E30: ; // 0x2064e30
|
|
/* 02064E30 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02064E30 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02064E34 */ /* nop */
|
|
/* 02064E38 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 02064E38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02064E3C */ cpu->r[8] = cpu->r[0];
|
|
/* 02064E40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 02064E44 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 02064E44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02064E48 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064E48 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02064E48 */ if (_t4) goto L_02064E4C; else goto L_02064E64;
|
|
L_02064E4C: ; // 0x2064e4c
|
|
/* 02064E4C */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02064E50 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 02064E54 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02064E54 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02064E58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02064E5C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064E5C */ _t7 = _t6 & 0x00000001u;
|
|
/* 02064E5C */ if (_t7) goto L_02064E60; else goto L_02064E70;
|
|
L_02064E60: ; // 0x2064e60
|
|
/* 02064E60 */ return;
|
|
L_02064E64: ; // 0x2064e64
|
|
/* 02064E64 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02064E64 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02064E68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02064E6C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064E6C */ _t10 = _t9 & 0x00000001u;
|
|
/* 02064E6C */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02064E6C */ goto L_02064E70;
|
|
L_02064E70: ; // 0x2064e70
|
|
/* 02064E70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02064E74 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02064E74 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02064E78 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064E78 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02064E78 */ if (_t13) goto L_02064E7C; else goto L_02064E84;
|
|
L_02064E7C: ; // 0x2064e7c
|
|
/* 02064E7C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02064E80 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02064E84: ; // 0x2064e84
|
|
/* 02064E84 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02064E84 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02064E88 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02064E88 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02064E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064E90 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02064E90 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02064E94 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 02064E98 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064E98 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02064E98 */ if (_t18) goto L_02064EB0; else goto L_02064E9C;
|
|
L_02064E9C: ; // 0x2064e9c
|
|
/* 02064E9C */ /* nop */
|
|
/* 02064EA0 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02064EA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02064EA4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02064EA8 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 02064EAC */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02064EAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02064EB0: ; // 0x2064eb0
|
|
/* 02064EB0 */ cpu->ctr = cpu->r[11];
|
|
/* 02064EB4 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02064EB8 @ 0x2064eb8
|
|
void Gambit_fn_02064EB8(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_02064EB8: ; // 0x2064eb8
|
|
/* 02064EB8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02064EB8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02064EBC */ /* nop */
|
|
/* 02064EC0 */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 02064EC0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02064EC4 */ cpu->r[8] = cpu->r[0];
|
|
/* 02064EC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 02064ECC */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02064ECC */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02064ED0 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064ED0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02064ED0 */ if (_t4) goto L_02064ED4; else goto L_02064EEC;
|
|
L_02064ED4: ; // 0x2064ed4
|
|
/* 02064ED4 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02064ED8 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 02064EDC */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02064EDC */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02064EE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02064EE4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064EE4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02064EE4 */ if (_t7) goto L_02064EE8; else goto L_02064EF8;
|
|
L_02064EE8: ; // 0x2064ee8
|
|
/* 02064EE8 */ return;
|
|
L_02064EEC: ; // 0x2064eec
|
|
/* 02064EEC */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02064EEC */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02064EF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02064EF4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064EF4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02064EF4 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02064EF4 */ goto L_02064EF8;
|
|
L_02064EF8: ; // 0x2064ef8
|
|
/* 02064EF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02064EFC */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02064EFC */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02064F00 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064F00 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02064F00 */ if (_t13) goto L_02064F04; else goto L_02064F0C;
|
|
L_02064F04: ; // 0x2064f04
|
|
/* 02064F04 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02064F08 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02064F0C: ; // 0x2064f0c
|
|
/* 02064F0C */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02064F0C */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02064F10 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02064F10 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02064F14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064F18 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02064F18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02064F1C */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 02064F20 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064F20 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02064F20 */ if (_t18) goto L_02064F38; else goto L_02064F24;
|
|
L_02064F24: ; // 0x2064f24
|
|
/* 02064F24 */ /* nop */
|
|
/* 02064F28 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02064F28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02064F2C */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02064F30 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 02064F34 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02064F34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02064F38: ; // 0x2064f38
|
|
/* 02064F38 */ cpu->ctr = cpu->r[11];
|
|
/* 02064F3C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02064F40 @ 0x2064f40
|
|
void Gambit_fn_02064F40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02064F40: ; // 0x2064f40
|
|
/* 02064F40 */ cpu->r[0] = cpu->lr;
|
|
/* 02064F44 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064F44 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064F44 */ cpu->r[1] = _t0;
|
|
/* 02064F48 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064F48 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02064F4C */ cpu->r[31] = cpu->r[3];
|
|
/* 02064F50 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02064F50 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02064F54 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02064F54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02064F58 */ cpu->r[12] = 0x00000000u;
|
|
/* 02064F5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064F60 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02064F60 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02064F64 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064F64 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02064F64 */ if (_t6) goto L_02064F8C; else goto L_02064F68;
|
|
L_02064F68: ; // 0x2064f68
|
|
/* 02064F68 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02064F68 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02064F6C */ /* nop */
|
|
/* 02064F70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02064F74 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064F74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02064F74 */ if (_t9) goto L_02064F78; else goto L_02064F8C;
|
|
L_02064F78: ; // 0x2064f78
|
|
/* 02064F78 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02064F78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02064F7C */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02064F7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02064F80 */ cpu->ctr = cpu->r[0];
|
|
/* 02064F84 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064F88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02064F8C: ; // 0x2064f8c
|
|
/* 02064F8C */ cpu->r[3] = cpu->r[31];
|
|
/* 02064F90 */ Gambit_fn_02064EB8(cpu);
|
|
/* 02064F94 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064F98 */ Gambit_fn_027FC37C(cpu);
|
|
/* 02064F9C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02064F9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02064FA0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064FA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02064FA4 */ cpu->lr = cpu->r[0];
|
|
/* 02064FA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064FAC */ return;
|
|
}
|
|
|
|
// fn_02064F44 @ 0x2064f44
|
|
void Gambit_fn_02064F44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02064F44: ; // 0x2064f44
|
|
/* 02064F44 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02064F44 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02064F44 */ cpu->r[1] = _t0;
|
|
/* 02064F48 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064F48 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02064F4C */ cpu->r[31] = cpu->r[3];
|
|
/* 02064F50 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02064F50 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02064F54 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02064F54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02064F58 */ cpu->r[12] = 0x00000000u;
|
|
/* 02064F5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02064F60 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02064F60 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02064F64 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064F64 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02064F64 */ if (_t6) goto L_02064F8C; else goto L_02064F68;
|
|
L_02064F68: ; // 0x2064f68
|
|
/* 02064F68 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02064F68 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02064F6C */ /* nop */
|
|
/* 02064F70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02064F74 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064F74 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02064F74 */ if (_t9) goto L_02064F78; else goto L_02064F8C;
|
|
L_02064F78: ; // 0x2064f78
|
|
/* 02064F78 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02064F78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02064F7C */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02064F7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02064F80 */ cpu->ctr = cpu->r[0];
|
|
/* 02064F84 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064F88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02064F8C: ; // 0x2064f8c
|
|
/* 02064F8C */ cpu->r[3] = cpu->r[31];
|
|
/* 02064F90 */ Gambit_fn_02064EB8(cpu);
|
|
/* 02064F94 */ cpu->r[3] = cpu->r[31];
|
|
/* 02064F98 */ Gambit_fn_027FC37C(cpu);
|
|
/* 02064F9C */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02064F9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02064FA0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02064FA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02064FA4 */ cpu->lr = cpu->r[0];
|
|
/* 02064FA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02064FAC */ return;
|
|
}
|
|
|
|
// fn_02064FB0 @ 0x2064fb0
|
|
void Gambit_fn_02064FB0(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_02064FB0: ; // 0x2064fb0
|
|
/* 02064FB0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02064FB0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02064FB4 */ /* nop */
|
|
/* 02064FB8 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 02064FB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02064FBC */ cpu->r[7] = cpu->r[0];
|
|
/* 02064FC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 02064FC4 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 02064FC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02064FC8 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064FC8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02064FC8 */ if (_t4) goto L_02064FCC; else goto L_02064FE4;
|
|
L_02064FCC: ; // 0x2064fcc
|
|
/* 02064FCC */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02064FD0 */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 02064FD4 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02064FD4 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02064FD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02064FDC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064FDC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02064FDC */ if (_t7) goto L_02064FE0; else goto L_02064FF0;
|
|
L_02064FE0: ; // 0x2064fe0
|
|
/* 02064FE0 */ return;
|
|
L_02064FE4: ; // 0x2064fe4
|
|
/* 02064FE4 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02064FE4 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02064FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02064FEC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02064FEC */ _t10 = _t9 & 0x00000001u;
|
|
/* 02064FEC */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02064FEC */ goto L_02064FF0;
|
|
L_02064FF0: ; // 0x2064ff0
|
|
/* 02064FF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02064FF4 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02064FF4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02064FF8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02064FF8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02064FF8 */ if (_t13) goto L_02064FFC; else goto L_02065004;
|
|
L_02064FFC: ; // 0x2064ffc
|
|
/* 02064FFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02065000 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02065004: ; // 0x2065004
|
|
/* 02065004 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02065004 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02065008 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02065008 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206500C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02065010 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02065010 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02065014 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 02065018 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02065018 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02065018 */ if (_t18) goto L_02065030; else goto L_0206501C;
|
|
L_0206501C: ; // 0x206501c
|
|
/* 0206501C */ /* nop */
|
|
/* 02065020 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02065020 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02065024 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02065028 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0206502C */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206502C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02065030: ; // 0x2065030
|
|
/* 02065030 */ cpu->ctr = cpu->r[11];
|
|
/* 02065034 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02065038 @ 0x2065038
|
|
void Gambit_fn_02065038(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02065038: ; // 0x2065038
|
|
/* 02065038 */ cpu->r[0] = cpu->lr;
|
|
/* 0206503C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206503C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206503C */ cpu->r[1] = _t0;
|
|
/* 02065040 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02065040 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02065044 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02065044 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02065048 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206504C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206504C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02065050 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02065050 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02065054 */ /* nop */
|
|
/* 02065058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206505C */ cpu->r[31] = cpu->r[4];
|
|
/* 02065060 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065060 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02065060 */ if (_t6) goto L_02065064; else goto L_02065078;
|
|
L_02065064: ; // 0x2065064
|
|
/* 02065064 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02065064 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02065068 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02065068 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206506C */ cpu->ctr = cpu->r[0];
|
|
/* 02065070 */ cpu->r[3] = cpu->r[30];
|
|
/* 02065074 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02065078: ; // 0x2065078
|
|
/* 02065078 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206507C */ cpu->r[4] = cpu->r[31];
|
|
/* 02065080 */ Gambit_fn_02064FB0(cpu);
|
|
/* 02065084 */ cpu->r[3] = cpu->r[30];
|
|
/* 02065088 */ /* nop */
|
|
/* 0206508C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02065090 */ cpu->r[3] = cpu->r[30];
|
|
/* 02065094 */ Gambit_fn_02064E30(cpu);
|
|
/* 02065098 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02065098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206509C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206509C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020650A0 */ cpu->lr = cpu->r[0];
|
|
/* 020650A4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020650A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020650A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020650AC */ return;
|
|
}
|
|
|
|
// fn_0206503C @ 0x206503c
|
|
void Gambit_fn_0206503C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206503C: ; // 0x206503c
|
|
/* 0206503C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206503C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206503C */ cpu->r[1] = _t0;
|
|
/* 02065040 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02065040 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02065044 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02065044 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02065048 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206504C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206504C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02065050 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02065050 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02065054 */ /* nop */
|
|
/* 02065058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206505C */ cpu->r[31] = cpu->r[4];
|
|
/* 02065060 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065060 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02065060 */ if (_t6) goto L_02065064; else goto L_02065078;
|
|
L_02065064: ; // 0x2065064
|
|
/* 02065064 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02065064 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02065068 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02065068 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206506C */ cpu->ctr = cpu->r[0];
|
|
/* 02065070 */ cpu->r[3] = cpu->r[30];
|
|
/* 02065074 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02065078: ; // 0x2065078
|
|
/* 02065078 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206507C */ cpu->r[4] = cpu->r[31];
|
|
/* 02065080 */ Gambit_fn_02064FB0(cpu);
|
|
/* 02065084 */ cpu->r[3] = cpu->r[30];
|
|
/* 02065088 */ /* nop */
|
|
/* 0206508C */ Gambit_fn_027FC35C(cpu);
|
|
/* 02065090 */ cpu->r[3] = cpu->r[30];
|
|
/* 02065094 */ Gambit_fn_02064E30(cpu);
|
|
/* 02065098 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02065098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206509C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206509C */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020650A0 */ cpu->lr = cpu->r[0];
|
|
/* 020650A4 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020650A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020650A8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020650AC */ return;
|
|
}
|
|
|
|
// fn_020650B0 @ 0x20650b0
|
|
void Gambit_fn_020650B0(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_020650B0: ; // 0x20650b0
|
|
/* 020650B0 */ cpu->r[0] = cpu->lr;
|
|
/* 020650B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020650B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020650B4 */ cpu->r[1] = _t0;
|
|
/* 020650B8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020650B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020650BC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 020650BC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020650C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 020650C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 020650C4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020650C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020650C8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020650C8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 020650C8 */ if (_t5) goto L_020650CC; else goto L_020650DC;
|
|
L_020650CC: ; // 0x20650cc
|
|
/* 020650CC */ cpu->r[3] = 0x00000020u;
|
|
/* 020650D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 020650D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 020650D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 020650D8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020650D8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 020650D8 */ if (_t7) goto L_02065190; else goto L_020650DC;
|
|
L_020650DC: ; // 0x20650dc
|
|
/* 020650DC */ cpu->r[10] = 0x10000000u;
|
|
/* 020650E0 */ cpu->r[10] = cpu->r[10] + 0x00007088u;
|
|
/* 020650E4 */ cpu->r[3] = 0x000000ECu;
|
|
/* 020650E8 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 020650E8 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 020650EC */ Gambit_fn_02801A78(cpu);
|
|
/* 020650F0 */ cpu->r[30] = cpu->r[3];
|
|
/* 020650F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 020650F4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020650F4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 020650F4 */ if (_t10) goto L_02065130; else goto L_020650F8;
|
|
L_020650F8: ; // 0x20650f8
|
|
/* 020650F8 */ cpu->r[3] = cpu->r[30];
|
|
/* 020650FC */ cpu->r[4] = 0x000000ECu;
|
|
/* 02065100 */ Gambit_fn_02C89380(cpu);
|
|
/* 02065104 */ cpu->r[0] = 0x10000000u;
|
|
/* 02065108 */ cpu->r[6] = 0x02060000u;
|
|
/* 0206510C */ cpu->r[3] = cpu->r[30] + 0x00000004u;
|
|
/* 02065110 */ cpu->r[0] = cpu->r[0] + 0x00005C34u;
|
|
/* 02065114 */ cpu->r[6] = cpu->r[6] + 0x000052E8u;
|
|
/* 02065118 */ cpu->r[4] = 0x00000008u;
|
|
/* 0206511C */ cpu->r[5] = 0x0000001Cu;
|
|
/* 02065120 */ _t11 = cpu->r[30] + 0x00000000u;
|
|
/* 02065120 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02065124 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02065128 */ cpu->r[3] = cpu->r[30] + 0x000000E4u;
|
|
/* 0206512C */ Gambit_fn_02836D50(cpu);
|
|
L_02065130: ; // 0x2065130
|
|
/* 02065130 */ cpu->r[3] = 0x00000004u;
|
|
/* 02065134 */ _t12 = cpu->r[31] + 0x00000010u;
|
|
/* 02065134 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 02065138 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206513C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02065140 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065140 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02065140 */ if (_t14) goto L_02065150; else goto L_02065144;
|
|
L_02065144: ; // 0x2065144
|
|
/* 02065144 */ cpu->r[11] = 0x10000000u;
|
|
/* 02065148 */ cpu->r[11] = cpu->r[11] + 0x00005C24u;
|
|
/* 0206514C */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 0206514C */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
L_02065150: ; // 0x2065150
|
|
/* 02065150 */ cpu->r[12] = 0x00000000u;
|
|
/* 02065154 */ _t16 = cpu->r[31] + 0x00000014u;
|
|
/* 02065154 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 02065158 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0206515C */ _t17 = cpu->r[31] + 0x00000018u;
|
|
/* 0206515C */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 02065160 */ _t18 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02065160 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02065164 */ Gambit_fn_02826F20(cpu);
|
|
/* 02065168 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206516C */ cpu->r[5] = 0x00000004u;
|
|
/* 02065170 */ cpu->r[3] = 0x00000008u;
|
|
/* 02065174 */ cpu->r[4] = cpu->r[30];
|
|
/* 02065178 */ Gambit_fn_02801AC8(cpu);
|
|
/* 0206517C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02065180 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065180 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02065180 */ if (_t20) goto L_02065188; else goto L_02065184;
|
|
L_02065184: ; // 0x2065184
|
|
/* 02065184 */ Gambit_fn_020525BC(cpu);
|
|
L_02065188: ; // 0x2065188
|
|
/* 02065188 */ cpu->r[4] = cpu->r[30];
|
|
/* 0206518C */ Gambit_fn_02052620(cpu);
|
|
L_02065190: ; // 0x2065190
|
|
/* 02065190 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 02065190 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02065194 */ cpu->r[3] = cpu->r[31];
|
|
/* 02065198 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02065198 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0206519C */ cpu->lr = cpu->r[0];
|
|
/* 020651A0 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 020651A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 020651A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020651A8 */ return;
|
|
}
|
|
|
|
// fn_020650B4 @ 0x20650b4
|
|
void Gambit_fn_020650B4(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_020650B4: ; // 0x20650b4
|
|
/* 020650B4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020650B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020650B4 */ cpu->r[1] = _t0;
|
|
/* 020650B8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020650B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020650BC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 020650BC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020650C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 020650C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 020650C4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020650C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020650C8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020650C8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 020650C8 */ if (_t5) goto L_020650CC; else goto L_020650DC;
|
|
L_020650CC: ; // 0x20650cc
|
|
/* 020650CC */ cpu->r[3] = 0x00000020u;
|
|
/* 020650D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 020650D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 020650D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 020650D8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020650D8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 020650D8 */ if (_t7) goto L_02065190; else goto L_020650DC;
|
|
L_020650DC: ; // 0x20650dc
|
|
/* 020650DC */ cpu->r[10] = 0x10000000u;
|
|
/* 020650E0 */ cpu->r[10] = cpu->r[10] + 0x00007088u;
|
|
/* 020650E4 */ cpu->r[3] = 0x000000ECu;
|
|
/* 020650E8 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 020650E8 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 020650EC */ Gambit_fn_02801A78(cpu);
|
|
/* 020650F0 */ cpu->r[30] = cpu->r[3];
|
|
/* 020650F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 020650F4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020650F4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 020650F4 */ if (_t10) goto L_02065130; else goto L_020650F8;
|
|
L_020650F8: ; // 0x20650f8
|
|
/* 020650F8 */ cpu->r[3] = cpu->r[30];
|
|
/* 020650FC */ cpu->r[4] = 0x000000ECu;
|
|
/* 02065100 */ Gambit_fn_02C89380(cpu);
|
|
/* 02065104 */ cpu->r[0] = 0x10000000u;
|
|
/* 02065108 */ cpu->r[6] = 0x02060000u;
|
|
/* 0206510C */ cpu->r[3] = cpu->r[30] + 0x00000004u;
|
|
/* 02065110 */ cpu->r[0] = cpu->r[0] + 0x00005C34u;
|
|
/* 02065114 */ cpu->r[6] = cpu->r[6] + 0x000052E8u;
|
|
/* 02065118 */ cpu->r[4] = 0x00000008u;
|
|
/* 0206511C */ cpu->r[5] = 0x0000001Cu;
|
|
/* 02065120 */ _t11 = cpu->r[30] + 0x00000000u;
|
|
/* 02065120 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02065124 */ Gambit_fn_02C82E00(cpu);
|
|
/* 02065128 */ cpu->r[3] = cpu->r[30] + 0x000000E4u;
|
|
/* 0206512C */ Gambit_fn_02836D50(cpu);
|
|
L_02065130: ; // 0x2065130
|
|
/* 02065130 */ cpu->r[3] = 0x00000004u;
|
|
/* 02065134 */ _t12 = cpu->r[31] + 0x00000010u;
|
|
/* 02065134 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 02065138 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206513C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02065140 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065140 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02065140 */ if (_t14) goto L_02065150; else goto L_02065144;
|
|
L_02065144: ; // 0x2065144
|
|
/* 02065144 */ cpu->r[11] = 0x10000000u;
|
|
/* 02065148 */ cpu->r[11] = cpu->r[11] + 0x00005C24u;
|
|
/* 0206514C */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 0206514C */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
L_02065150: ; // 0x2065150
|
|
/* 02065150 */ cpu->r[12] = 0x00000000u;
|
|
/* 02065154 */ _t16 = cpu->r[31] + 0x00000014u;
|
|
/* 02065154 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 02065158 */ cpu->r[3] = 0x101D0000u;
|
|
/* 0206515C */ _t17 = cpu->r[31] + 0x00000018u;
|
|
/* 0206515C */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 02065160 */ _t18 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02065160 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02065164 */ Gambit_fn_02826F20(cpu);
|
|
/* 02065168 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206516C */ cpu->r[5] = 0x00000004u;
|
|
/* 02065170 */ cpu->r[3] = 0x00000008u;
|
|
/* 02065174 */ cpu->r[4] = cpu->r[30];
|
|
/* 02065178 */ Gambit_fn_02801AC8(cpu);
|
|
/* 0206517C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02065180 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065180 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02065180 */ if (_t20) goto L_02065188; else goto L_02065184;
|
|
L_02065184: ; // 0x2065184
|
|
/* 02065184 */ Gambit_fn_020525BC(cpu);
|
|
L_02065188: ; // 0x2065188
|
|
/* 02065188 */ cpu->r[4] = cpu->r[30];
|
|
/* 0206518C */ Gambit_fn_02052620(cpu);
|
|
L_02065190: ; // 0x2065190
|
|
/* 02065190 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 02065190 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02065194 */ cpu->r[3] = cpu->r[31];
|
|
/* 02065198 */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02065198 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0206519C */ cpu->lr = cpu->r[0];
|
|
/* 020651A0 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 020651A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 020651A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020651A8 */ return;
|
|
}
|
|
|
|
// fn_020651AC @ 0x20651ac
|
|
void Gambit_fn_020651AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_020651AC: ; // 0x20651ac
|
|
/* 020651AC */ cpu->r[0] = cpu->lr;
|
|
/* 020651B0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 020651B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020651B0 */ cpu->r[1] = _t0;
|
|
/* 020651B4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020651B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 020651B8 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 020651B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020651BC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020651BC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 020651C0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020651C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 020651C4 */ cpu->r[29] = 0x101C0000u;
|
|
/* 020651C8 */ cpu->r[30] = cpu->r[3];
|
|
/* 020651CC */ _t5 = cpu->r[29] + 0x000033ECu;
|
|
/* 020651CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020651CC */ cpu->r[29] = _t5;
|
|
/* 020651D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020651D4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020651D4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 020651D4 */ if (_t7) goto L_020651D8; else goto L_02065224;
|
|
L_020651D8: ; // 0x20651d8
|
|
/* 020651D8 */ cpu->r[4] = cpu->r[30];
|
|
/* 020651DC */ cpu->r[3] = 0x00000020u;
|
|
/* 020651E0 */ cpu->r[5] = 0x00000004u;
|
|
/* 020651E4 */ Gambit_fn_02801ADC(cpu);
|
|
/* 020651E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 020651E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 020651EC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020651EC */ _t9 = _t8 & 0x00000001u;
|
|
/* 020651EC */ if (_t9) goto L_0206520C; else goto L_020651F0;
|
|
L_020651F0: ; // 0x20651f0
|
|
/* 020651F0 */ cpu->r[5] = 0x00000003u;
|
|
/* 020651F4 */ cpu->r[4] = cpu->r[30];
|
|
/* 020651F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020651FC */ Gambit_fn_02821D88(cpu);
|
|
/* 02065200 */ cpu->r[0] = 0x10000000u;
|
|
/* 02065204 */ cpu->r[0] = cpu->r[0] + 0x00007098u;
|
|
/* 02065208 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02065208 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
L_0206520C: ; // 0x206520c
|
|
/* 0206520C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02065210 */ cpu->r[3] = cpu->r[31];
|
|
/* 02065210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02065214 */ _t11 = cpu->r[12] + 0x000033F0u;
|
|
/* 02065214 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 02065218 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065218 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02065218 */ if (_t13) goto L_02065220; else goto L_0206521C;
|
|
L_0206521C: ; // 0x206521c
|
|
/* 0206521C */ Gambit_fn_020650B0(cpu);
|
|
L_02065220: ; // 0x2065220
|
|
/* 02065220 */ _t14 = cpu->r[29] + 0x00000000u;
|
|
/* 02065220 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
L_02065224: ; // 0x2065224
|
|
/* 02065224 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02065224 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02065228 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02065228 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206522C */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 0206522C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02065230 */ cpu->lr = cpu->r[0];
|
|
/* 02065234 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02065234 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02065238 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0206523C */ return;
|
|
}
|
|
|
|
// fn_020651B0 @ 0x20651b0
|
|
void Gambit_fn_020651B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_020651B0: ; // 0x20651b0
|
|
/* 020651B0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 020651B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020651B0 */ cpu->r[1] = _t0;
|
|
/* 020651B4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020651B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 020651B8 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 020651B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020651BC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020651BC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 020651C0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020651C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 020651C4 */ cpu->r[29] = 0x101C0000u;
|
|
/* 020651C8 */ cpu->r[30] = cpu->r[3];
|
|
/* 020651CC */ _t5 = cpu->r[29] + 0x000033ECu;
|
|
/* 020651CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020651CC */ cpu->r[29] = _t5;
|
|
/* 020651D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020651D4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020651D4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 020651D4 */ if (_t7) goto L_020651D8; else goto L_02065224;
|
|
L_020651D8: ; // 0x20651d8
|
|
/* 020651D8 */ cpu->r[4] = cpu->r[30];
|
|
/* 020651DC */ cpu->r[3] = 0x00000020u;
|
|
/* 020651E0 */ cpu->r[5] = 0x00000004u;
|
|
/* 020651E4 */ Gambit_fn_02801ADC(cpu);
|
|
/* 020651E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 020651E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 020651EC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020651EC */ _t9 = _t8 & 0x00000001u;
|
|
/* 020651EC */ if (_t9) goto L_0206520C; else goto L_020651F0;
|
|
L_020651F0: ; // 0x20651f0
|
|
/* 020651F0 */ cpu->r[5] = 0x00000003u;
|
|
/* 020651F4 */ cpu->r[4] = cpu->r[30];
|
|
/* 020651F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020651FC */ Gambit_fn_02821D88(cpu);
|
|
/* 02065200 */ cpu->r[0] = 0x10000000u;
|
|
/* 02065204 */ cpu->r[0] = cpu->r[0] + 0x00007098u;
|
|
/* 02065208 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02065208 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
L_0206520C: ; // 0x206520c
|
|
/* 0206520C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02065210 */ cpu->r[3] = cpu->r[31];
|
|
/* 02065210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02065214 */ _t11 = cpu->r[12] + 0x000033F0u;
|
|
/* 02065214 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 02065218 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065218 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02065218 */ if (_t13) goto L_02065220; else goto L_0206521C;
|
|
L_0206521C: ; // 0x206521c
|
|
/* 0206521C */ Gambit_fn_020650B0(cpu);
|
|
L_02065220: ; // 0x2065220
|
|
/* 02065220 */ _t14 = cpu->r[29] + 0x00000000u;
|
|
/* 02065220 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
L_02065224: ; // 0x2065224
|
|
/* 02065224 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02065224 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02065228 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02065228 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206522C */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 0206522C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02065230 */ cpu->lr = cpu->r[0];
|
|
/* 02065234 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02065234 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02065238 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0206523C */ return;
|
|
}
|
|
|
|
// fn_02065240 @ 0x2065240
|
|
void Gambit_fn_02065240(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_02065240: ; // 0x2065240
|
|
/* 02065240 */ cpu->r[0] = cpu->lr;
|
|
/* 02065244 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02065244 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02065244 */ cpu->r[1] = _t0;
|
|
/* 02065248 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02065248 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0206524C */ cpu->r[28] = cpu->r[4];
|
|
/* 02065250 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02065250 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02065254 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02065254 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02065258 */ cpu->r[31] = cpu->r[3];
|
|
/* 02065258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206525C */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0206525C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02065260 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02065260 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02065264 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065264 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02065264 */ if (_t7) goto L_020652C8; else goto L_02065268;
|
|
L_02065268: ; // 0x2065268
|
|
/* 02065268 */ cpu->r[6] = 0x10000000u;
|
|
/* 0206526C */ cpu->r[6] = cpu->r[6] + 0x00007098u;
|
|
/* 02065270 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02065274 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02065274 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 02065278 */ _t9 = cpu->r[12] + 0x000033F0u;
|
|
/* 02065278 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02065278 */ cpu->r[12] = _t9;
|
|
/* 0206527C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02065280 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065280 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02065280 */ if (_t11) goto L_02065284; else goto L_020652AC;
|
|
L_02065284: ; // 0x2065284
|
|
/* 02065284 */ cpu->r[30] = 0x101C0000u;
|
|
/* 02065288 */ cpu->r[29] = 0x00000000u;
|
|
/* 0206528C */ _t12 = cpu->r[30] + 0x000033ECu;
|
|
/* 0206528C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02065290 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 02065290 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 02065294 */ _t14 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02065294 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02065298 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02065298 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206529C */ cpu->ctr = cpu->r[10];
|
|
/* 020652A0 */ cpu->r[4] = 0x00000002u;
|
|
/* 020652A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020652A8 */ _t16 = cpu->r[30] + 0x000033ECu;
|
|
/* 020652A8 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_020652AC: ; // 0x20652ac
|
|
/* 020652AC */ cpu->r[3] = cpu->r[31];
|
|
/* 020652B0 */ cpu->r[4] = 0x00000000u;
|
|
/* 020652B4 */ Gambit_fn_02821E68(cpu);
|
|
/* 020652B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020652B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020652BC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020652BC */ _t18 = _t17 & 0x00000001u;
|
|
/* 020652BC */ if (_t18) goto L_020652C8; else goto L_020652C0;
|
|
L_020652C0: ; // 0x20652c0
|
|
/* 020652C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020652C4 */ Gambit_fn_02801BB0(cpu);
|
|
L_020652C8: ; // 0x20652c8
|
|
/* 020652C8 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 020652C8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 020652CC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020652CC */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 020652D0 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020652D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 020652D4 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 020652D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 020652D8 */ cpu->lr = cpu->r[0];
|
|
/* 020652DC */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 020652DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 020652E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 020652E4 */ return;
|
|
}
|
|
|
|
// fn_02065244 @ 0x2065244
|
|
void Gambit_fn_02065244(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_02065244: ; // 0x2065244
|
|
/* 02065244 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02065244 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02065244 */ cpu->r[1] = _t0;
|
|
/* 02065248 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02065248 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0206524C */ cpu->r[28] = cpu->r[4];
|
|
/* 02065250 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02065250 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02065254 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02065254 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02065258 */ cpu->r[31] = cpu->r[3];
|
|
/* 02065258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206525C */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0206525C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02065260 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02065260 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02065264 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065264 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02065264 */ if (_t7) goto L_020652C8; else goto L_02065268;
|
|
L_02065268: ; // 0x2065268
|
|
/* 02065268 */ cpu->r[6] = 0x10000000u;
|
|
/* 0206526C */ cpu->r[6] = cpu->r[6] + 0x00007098u;
|
|
/* 02065270 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02065274 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02065274 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 02065278 */ _t9 = cpu->r[12] + 0x000033F0u;
|
|
/* 02065278 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02065278 */ cpu->r[12] = _t9;
|
|
/* 0206527C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 02065280 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065280 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02065280 */ if (_t11) goto L_02065284; else goto L_020652AC;
|
|
L_02065284: ; // 0x2065284
|
|
/* 02065284 */ cpu->r[30] = 0x101C0000u;
|
|
/* 02065288 */ cpu->r[29] = 0x00000000u;
|
|
/* 0206528C */ _t12 = cpu->r[30] + 0x000033ECu;
|
|
/* 0206528C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02065290 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 02065290 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 02065294 */ _t14 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02065294 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02065298 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 02065298 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206529C */ cpu->ctr = cpu->r[10];
|
|
/* 020652A0 */ cpu->r[4] = 0x00000002u;
|
|
/* 020652A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020652A8 */ _t16 = cpu->r[30] + 0x000033ECu;
|
|
/* 020652A8 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_020652AC: ; // 0x20652ac
|
|
/* 020652AC */ cpu->r[3] = cpu->r[31];
|
|
/* 020652B0 */ cpu->r[4] = 0x00000000u;
|
|
/* 020652B4 */ Gambit_fn_02821E68(cpu);
|
|
/* 020652B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020652B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020652BC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020652BC */ _t18 = _t17 & 0x00000001u;
|
|
/* 020652BC */ if (_t18) goto L_020652C8; else goto L_020652C0;
|
|
L_020652C0: ; // 0x20652c0
|
|
/* 020652C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020652C4 */ Gambit_fn_02801BB0(cpu);
|
|
L_020652C8: ; // 0x20652c8
|
|
/* 020652C8 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 020652C8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 020652CC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020652CC */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 020652D0 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020652D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 020652D4 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 020652D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 020652D8 */ cpu->lr = cpu->r[0];
|
|
/* 020652DC */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 020652DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 020652E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 020652E4 */ return;
|
|
}
|
|
|
|
// fn_020652EC @ 0x20652ec
|
|
void Gambit_fn_020652EC(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_020652EC: ; // 0x20652ec
|
|
/* 020652EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020652EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020652EC */ cpu->r[1] = _t0;
|
|
/* 020652F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020652F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020652F4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 020652F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020652F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 020652F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 020652FC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020652FC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02065300 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065300 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02065300 */ if (_t5) goto L_02065304; else goto L_02065314;
|
|
L_02065304: ; // 0x2065304
|
|
/* 02065304 */ cpu->r[3] = 0x0000001Cu;
|
|
/* 02065308 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206530C */ cpu->r[31] = cpu->r[3];
|
|
/* 0206530C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02065310 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065310 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02065310 */ if (_t7) goto L_02065358; else goto L_02065314;
|
|
L_02065314: ; // 0x2065314
|
|
/* 02065314 */ cpu->r[3] = cpu->r[31];
|
|
/* 02065314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02065318 */ cpu->r[30] = 0x00000000u;
|
|
/* 0206531C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206531C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206531C */ if (_t9) goto L_02065320; else goto L_02065330;
|
|
L_02065320: ; // 0x2065320
|
|
/* 02065320 */ cpu->r[3] = 0x00000014u;
|
|
/* 02065324 */ Gambit_fn_02801A78(cpu);
|
|
/* 02065328 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206532C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206532C */ _t11 = _t10 & 0x00000001u;
|
|
/* 0206532C */ if (_t11) goto L_02065348; else goto L_02065330;
|
|
L_02065330: ; // 0x2065330
|
|
/* 02065330 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 02065330 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 02065334 */ cpu->r[0] = 0x00000001u;
|
|
/* 02065338 */ _t13 = cpu->r[3] + 0x00000004u;
|
|
/* 02065338 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 0206533C */ _t14 = cpu->r[3] + 0x00000010u;
|
|
/* 0206533C */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[0]);
|
|
/* 02065340 */ _t15 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02065340 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 02065344 */ _t16 = cpu->r[3] + 0x00000008u;
|
|
/* 02065344 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
L_02065348: ; // 0x2065348
|
|
/* 02065348 */ _t17 = cpu->r[31] + 0x00000019u;
|
|
/* 02065348 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[30]);
|
|
/* 0206534C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02065350 */ _t18 = cpu->r[31] + 0x00000014u;
|
|
/* 02065350 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 02065354 */ _t19 = cpu->r[31] + 0x00000018u;
|
|
/* 02065354 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[0]);
|
|
L_02065358: ; // 0x2065358
|
|
/* 02065358 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02065358 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0206535C */ cpu->r[3] = cpu->r[31];
|
|
/* 02065360 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02065360 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02065364 */ cpu->lr = cpu->r[0];
|
|
/* 02065368 */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 02065368 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0206536C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02065370 */ return;
|
|
}
|
|
|
|
// fn_02065374 @ 0x2065374
|
|
void Gambit_fn_02065374(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_02065374: ; // 0x2065374
|
|
/* 02065374 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02065378 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065378 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02065378 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02065378 */ goto L_0206537C;
|
|
L_0206537C: ; // 0x206537c
|
|
/* 0206537C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206537C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02065380 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065380 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02065380 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02065380 */ goto L_02065384;
|
|
L_02065384: ; // 0x2065384
|
|
/* 02065384 */ 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_02065388 @ 0x2065388
|
|
void Gambit_fn_02065388(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345, _t346, _t347, _t348, _t349, _t350, _t351, _t352, _t353, _t354, _t355, _t356, _t357, _t358, _t359, _t360, _t361, _t362, _t363, _t364, _t365, _t366, _t367, _t368, _t369, _t370, _t371, _t372, _t373, _t374, _t375, _t376, _t377, _t378, _t379, _t380, _t381, _t382, _t383, _t384, _t385, _t386, _t387, _t388, _t389, _t390, _t391, _t392, _t393, _t394, _t395, _t396, _t397, _t398, _t399, _t400, _t401, _t402, _t403, _t404, _t405, _t406, _t407, _t408, _t409, _t410, _t411, _t412, _t413, _t414, _t415, _t416, _t417, _t418, _t419, _t420, _t421, _t422, _t423, _t424, _t425, _t426, _t427, _t428, _t429, _t430, _t431, _t432, _t433, _t434, _t435, _t436, _t437, _t438, _t439, _t440, _t441, _t442, _t443, _t444, _t445, _t446, _t447, _t448, _t449, _t450, _t451, _t452, _t453, _t454, _t455, _t456, _t457, _t458, _t459, _t460, _t461, _t462, _t463, _t464, _t465, _t466, _t467, _t468, _t469, _t470, _t471, _t472, _t473, _t474, _t475, _t476, _t477, _t478, _t479, _t480, _t481, _t482, _t483, _t484, _t485, _t486, _t487, _t488, _t489, _t490, _t491, _t492, _t493, _t494, _t495, _t496, _t497, _t498, _t499, _t500, _t501, _t502, _t503, _t504, _t505, _t506, _t507, _t508, _t509, _t510, _t511, _t512, _t513, _t514, _t515, _t516, _t517, _t518, _t519, _t520, _t521, _t522, _t523, _t524, _t525, _t526, _t527, _t528, _t529, _t530, _t531, _t532, _t533, _t534, _t535, _t536, _t537, _t538, _t539, _t540, _t541, _t542, _t543, _t544, _t545, _t546, _t547, _t548, _t549, _t550, _t551, _t552, _t553, _t554, _t555, _t556, _t557, _t558, _t559, _t560, _t561, _t562, _t563, _t564, _t565, _t566, _t567, _t568, _t569, _t570;
|
|
|
|
L_02065388: ; // 0x2065388
|
|
/* 02065388 */ _t0 = cpu->r[1] + 0xFFFFFF30u;
|
|
/* 02065388 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02065388 */ cpu->r[1] = _t0;
|
|
/* 0206538C */ /* nop */
|
|
/* 02065390 */ cpu->r[0] = cpu->lr;
|
|
/* 02065394 */ _t1 = cpu->r[1] + 0x000000D4u;
|
|
/* 02065394 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02065398 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206539C */ _t2 = cpu->r[12] + 0x000044E4u;
|
|
/* 0206539C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 020653A0 */ cpu->r[23] = cpu->r[4];
|
|
/* 020653A4 */ cpu->r[27] = cpu->r[5];
|
|
/* 020653A8 */ cpu->r[24] = cpu->r[6];
|
|
/* 020653AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 020653B0 */ cpu->r[28] = cpu->r[7];
|
|
/* 020653B4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020653B4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 020653B4 */ if (_t4) goto L_0206622C; else goto L_020653B8;
|
|
L_020653B8: ; // 0x20653b8
|
|
/* 020653B8 */ _t5 = cpu->r[12] + 0x00000254u;
|
|
/* 020653B8 */ cpu->r[25] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020653BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 020653C0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020653C0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 020653C0 */ if (_t7) goto L_0206622C; else goto L_020653C4;
|
|
L_020653C4: ; // 0x20653c4
|
|
/* 020653C4 */ cpu->r[26] = 0x10000000u;
|
|
/* 020653C8 */ cpu->r[0] = 0x10000000u;
|
|
/* 020653CC */ _t8 = cpu->r[23] + 0x00000004u;
|
|
/* 020653CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 020653D0 */ cpu->r[26] = cpu->r[26] + 0x000070A8u;
|
|
/* 020653D4 */ cpu->r[0] = cpu->r[0] + 0x00007130u;
|
|
/* 020653D8 */ _t9 = cpu->r[1] + 0x0000004Cu;
|
|
/* 020653D8 */ rbrew_write32(cpu->mem, _t9, cpu->r[26]);
|
|
/* 020653DC */ _t10 = cpu->r[1] + 0x00000048u;
|
|
/* 020653DC */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 020653E0 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 020653E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020653E4 */ cpu->ctr = cpu->r[4];
|
|
/* 020653E8 */ cpu->r[3] = cpu->r[23];
|
|
/* 020653EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020653F0 */ cpu->r[31] = 0x10110000u;
|
|
/* 020653F4 */ _t12 = cpu->r[23] + 0x00000000u;
|
|
/* 020653F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020653F8 */ _t13 = cpu->r[31] + 0x00007399u;
|
|
/* 020653F8 */ cpu->r[31] = rbrew_read8(cpu->mem, _t13);
|
|
/* 020653FC */ _t14 = cpu->r[10] + 0x00000000u;
|
|
/* 020653FC */ cpu->r[5] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02065400 */ cpu->r[11] = 0x00080000u;
|
|
/* 02065404 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02065408 */ cpu->r[29] = 0x00000000u;
|
|
/* 0206540C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206540C */ _t16 = _t15 & 0x00000001u;
|
|
/* 0206540C */ if (_t16) goto L_02065434; else goto L_02065410;
|
|
L_02065410: ; // 0x2065410
|
|
/* 02065410 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02065414 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[11]);
|
|
/* 02065418 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0206541C */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0206541C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206541C */ if (_t18) goto L_02065430; else goto L_02065420;
|
|
L_02065420: ; // 0x2065420
|
|
/* 02065420 */ _t19 = cpu->r[10] + 0x00000000u;
|
|
/* 02065420 */ cpu->r[6] = rbrew_read8(cpu->mem, _t19);
|
|
/* 02065424 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 02065428 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065428 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02065428 */ if (_t21) goto L_0206542C; else goto L_02065410;
|
|
L_0206542C: ; // 0x206542c
|
|
/* 0206542C */ goto L_02065434;
|
|
L_02065430: ; // 0x2065430
|
|
/* 02065430 */ cpu->r[29] = 0x00000000u;
|
|
L_02065434: ; // 0x2065434
|
|
/* 02065434 */ _t22 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02065434 */ cpu->r[7] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02065438 */ _t23 = cpu->r[7] + 0x00000014u;
|
|
/* 02065438 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0206543C */ cpu->ctr = cpu->r[8];
|
|
/* 02065440 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02065444 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065448 */ _t24 = cpu->r[1] + 0x00000048u;
|
|
/* 02065448 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0206544C */ _t25 = cpu->r[8] + 0x00000000u;
|
|
/* 0206544C */ cpu->r[9] = rbrew_read8(cpu->mem, _t25);
|
|
/* 02065450 */ cpu->r[30] = 0x00000000u;
|
|
/* 02065454 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02065458 */ cpu->r[9] = 0x00080000u;
|
|
/* 0206545C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206545C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0206545C */ if (_t27) goto L_02065484; else goto L_02065460;
|
|
L_02065460: ; // 0x2065460
|
|
/* 02065460 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02065464 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 02065468 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0206546C */ _t28 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0206546C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0206546C */ if (_t29) goto L_02065480; else goto L_02065470;
|
|
L_02065470: ; // 0x2065470
|
|
/* 02065470 */ _t30 = cpu->r[8] + 0x00000000u;
|
|
/* 02065470 */ cpu->r[10] = rbrew_read8(cpu->mem, _t30);
|
|
/* 02065474 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02065478 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065478 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02065478 */ if (_t32) goto L_0206547C; else goto L_02065460;
|
|
L_0206547C: ; // 0x206547c
|
|
/* 0206547C */ goto L_02065484;
|
|
L_02065480: ; // 0x2065480
|
|
/* 02065480 */ cpu->r[30] = 0x00000000u;
|
|
L_02065484: ; // 0x2065484
|
|
/* 02065484 */ cpu->r[29] = cpu->r[29] - cpu->r[30];
|
|
/* 02065484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02065488 */ cpu->r[21] = 0x00000000u;
|
|
/* 0206548C */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206548C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0206548C */ if (_t34) goto L_0206555C; else goto L_02065490;
|
|
L_02065490: ; // 0x2065490
|
|
/* 02065490 */ cpu->r[22] = cpu->r[31];
|
|
L_02065494: ; // 0x2065494
|
|
/* 02065494 */ _t35 = cpu->r[23] + 0x00000000u;
|
|
/* 02065494 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02065498 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02065498 */ rbrew_write32(cpu->mem, _t36, cpu->r[26]);
|
|
/* 0206549C */ cpu->r[0] = cpu->r[12] + cpu->r[21];
|
|
/* 020654A0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020654A4 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 020654A4 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 020654A8 */ Gambit_fn_020669E4(cpu);
|
|
/* 020654AC */ _t38 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020654AC */ cpu->r[4] = rbrew_read32(cpu->mem, _t38);
|
|
/* 020654B0 */ _t39 = cpu->r[4] + 0x00000014u;
|
|
/* 020654B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t39);
|
|
/* 020654B4 */ cpu->ctr = cpu->r[5];
|
|
/* 020654B8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020654BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020654C0 */ _t40 = cpu->r[1] + 0x0000004Cu;
|
|
/* 020654C0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t40);
|
|
/* 020654C4 */ _t41 = cpu->r[6] + 0x00000014u;
|
|
/* 020654C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t41);
|
|
/* 020654C8 */ cpu->ctr = cpu->r[7];
|
|
/* 020654CC */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 020654CC */ cpu->r[20] = rbrew_read32(cpu->mem, _t42);
|
|
/* 020654D0 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 020654D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020654D8 */ _t43 = cpu->r[1] + 0x00000048u;
|
|
/* 020654D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 020654DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[8]);
|
|
/* 020654E0 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020654E0 */ _t45 = _t44 & 0x00000001u;
|
|
/* 020654E0 */ if (_t45) goto L_02065534; else goto L_020654E4;
|
|
L_020654E4: ; // 0x20654e4
|
|
/* 020654E4 */ cpu->r[0] = cpu->r[30];
|
|
/* 020654E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020654E8 */ _t46 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020654E8 */ _t47 = _t46 & 0x00000001u;
|
|
/* 020654E8 */ if (_t47) goto L_020654EC; else goto L_02065534;
|
|
L_020654EC: ; // 0x20654ec
|
|
/* 020654EC */ _t48 = cpu->r[1] + 0x00000048u;
|
|
/* 020654EC */ cpu->r[6] = rbrew_read32(cpu->mem, _t48);
|
|
/* 020654F0 */ cpu->ctr = cpu->r[0];
|
|
/* 020654F4 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 020654F4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t49);
|
|
L_020654F8: ; // 0x20654f8
|
|
/* 020654F8 */ _t50 = cpu->r[7] + 0x00000000u;
|
|
/* 020654F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t50);
|
|
/* 020654FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[22]);
|
|
/* 02065500 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065500 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02065500 */ if (_t52) goto L_02065504; else goto L_02065514;
|
|
L_02065504: ; // 0x2065504
|
|
/* 02065504 */ _t53 = cpu->r[6] + 0x00000000u;
|
|
/* 02065504 */ cpu->r[9] = rbrew_read8(cpu->mem, _t53);
|
|
/* 02065508 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[22]);
|
|
/* 0206550C */ _t54 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206550C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0206550C */ if (_t55) goto L_02065534; else goto L_02065510;
|
|
L_02065510: ; // 0x2065510
|
|
/* 02065510 */ goto L_02065550;
|
|
L_02065514: ; // 0x2065514
|
|
/* 02065514 */ _t56 = cpu->r[6] + 0x00000000u;
|
|
/* 02065514 */ cpu->r[12] = rbrew_read8(cpu->mem, _t56);
|
|
/* 02065518 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[22]);
|
|
/* 0206551C */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206551C */ _t58 = _t57 & 0x00000001u;
|
|
/* 0206551C */ if (_t58) goto L_02065550; else goto L_02065520;
|
|
L_02065520: ; // 0x2065520
|
|
/* 02065520 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02065524 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065524 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02065524 */ if (_t60) goto L_02065528; else goto L_02065550;
|
|
L_02065528: ; // 0x2065528
|
|
/* 02065528 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0206552C */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02065530 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02065530 */ _t61 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02065530 */ _t62 = _t61 >> (0x00000002u & 31u);
|
|
/* 02065530 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02065530 */ if (_t63) goto L_020654F8; else goto L_02065534;
|
|
L_02065534: ; // 0x2065534
|
|
/* 02065534 */ _t64 = cpu->r[21] | cpu->r[21];
|
|
/* 02065534 */ cpu->r[10] = ~_t64;
|
|
/* 02065538 */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 0206553C */ cpu->r[21] = 0x10000000u;
|
|
/* 02065540 */ cpu->r[0] = cpu->r[10] - cpu->r[0];
|
|
/* 02065540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02065544 */ cpu->r[21] = cpu->r[21] + 0x000070C0u;
|
|
/* 02065548 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065548 */ _t66 = _t65 & 0x00000001u;
|
|
/* 02065548 */ if (_t66) goto L_02065624; else goto L_0206554C;
|
|
L_0206554C: ; // 0x206554c
|
|
/* 0206554C */ goto L_02065574;
|
|
L_02065550: ; // 0x2065550
|
|
/* 02065550 */ cpu->r[21] = cpu->r[21] + 0x00000001u;
|
|
/* 02065554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[29]);
|
|
/* 02065558 */ _t67 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065558 */ _t68 = _t67 & 0x00000001u;
|
|
/* 02065558 */ if (_t68) goto L_0206555C; else goto L_02065494;
|
|
L_0206555C: ; // 0x206555c
|
|
/* 0206555C */ cpu->r[10] = 0x00000000u;
|
|
/* 02065560 */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02065564 */ cpu->r[21] = 0x10000000u;
|
|
/* 02065568 */ cpu->r[0] = ~cpu->r[0];
|
|
/* 02065568 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206556C */ cpu->r[21] = cpu->r[21] + 0x000070C0u;
|
|
/* 02065570 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065570 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02065570 */ if (_t70) goto L_02065624; else goto L_02065574;
|
|
L_02065574: ; // 0x2065574
|
|
/* 02065574 */ _t71 = cpu->r[27] + 0x00000004u;
|
|
/* 02065574 */ cpu->r[12] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02065578 */ _t72 = cpu->r[1] + 0x00000088u;
|
|
/* 02065578 */ rbrew_write32(cpu->mem, _t72, cpu->r[21]);
|
|
/* 0206557C */ _t73 = cpu->r[1] + 0x0000008Cu;
|
|
/* 0206557C */ rbrew_write32(cpu->mem, _t73, cpu->r[26]);
|
|
/* 02065580 */ _t74 = cpu->r[12] + 0x00000014u;
|
|
/* 02065580 */ cpu->r[4] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02065584 */ cpu->ctr = cpu->r[4];
|
|
/* 02065588 */ cpu->r[3] = cpu->r[27];
|
|
/* 0206558C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065590 */ _t75 = cpu->r[27] + 0x00000004u;
|
|
/* 02065590 */ cpu->r[5] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02065594 */ _t76 = cpu->r[5] + 0x00000014u;
|
|
/* 02065594 */ cpu->r[6] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02065598 */ cpu->ctr = cpu->r[6];
|
|
/* 0206559C */ cpu->r[3] = cpu->r[27];
|
|
/* 020655A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020655A4 */ _t77 = cpu->r[1] + 0x0000008Cu;
|
|
/* 020655A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t77);
|
|
/* 020655A8 */ _t78 = cpu->r[7] + 0x00000014u;
|
|
/* 020655A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t78);
|
|
/* 020655AC */ cpu->ctr = cpu->r[8];
|
|
/* 020655B0 */ _t79 = cpu->r[27] + 0x00000000u;
|
|
/* 020655B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t79);
|
|
/* 020655B4 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 020655B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020655BC */ _t80 = cpu->r[1] + 0x00000088u;
|
|
/* 020655BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t80);
|
|
/* 020655C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]);
|
|
/* 020655C4 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020655C4 */ _t82 = _t81 & 0x00000001u;
|
|
/* 020655C4 */ if (_t82) goto L_02065614; else goto L_020655C8;
|
|
L_020655C8: ; // 0x20655c8
|
|
/* 020655C8 */ cpu->r[5] = 0x00080000u;
|
|
/* 020655CC */ _t83 = cpu->r[27] + 0x00000000u;
|
|
/* 020655CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t83);
|
|
/* 020655D0 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 020655D4 */ _t84 = cpu->r[1] + 0x00000088u;
|
|
/* 020655D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t84);
|
|
/* 020655D8 */ cpu->ctr = cpu->r[5];
|
|
/* 020655DC */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 020655E0 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_020655E4: ; // 0x20655e4
|
|
/* 020655E4 */ _t85 = cpu->r[8] + 0x00000001u;
|
|
/* 020655E4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t85);
|
|
/* 020655E4 */ cpu->r[8] = _t85;
|
|
/* 020655E8 */ _t86 = cpu->r[7] + 0x00000001u;
|
|
/* 020655E8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t86);
|
|
/* 020655E8 */ cpu->r[7] = _t86;
|
|
/* 020655EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 020655F0 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020655F0 */ _t88 = _t87 & 0x00000001u;
|
|
/* 020655F0 */ if (_t88) goto L_020655F4; else goto L_0206622C;
|
|
L_020655F4: ; // 0x20655f4
|
|
/* 020655F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 020655F8 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020655F8 */ _t90 = _t89 & 0x00000001u;
|
|
/* 020655F8 */ if (_t90) goto L_02065614; else goto L_020655FC;
|
|
L_020655FC: ; // 0x20655fc
|
|
/* 020655FC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020655FC */ _t91 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020655FC */ _t92 = _t91 >> (0x00000002u & 31u);
|
|
/* 020655FC */ _t93 = _t92 & 0x00000001u;
|
|
/* 020655FC */ if (_t93) goto L_020655E4; else goto L_02065600;
|
|
L_02065600: ; // 0x2065600
|
|
/* 02065600 */ /* nop */
|
|
/* 02065604 */ _t94 = cpu->r[1] + 0x000000D4u;
|
|
/* 02065604 */ cpu->r[0] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02065608 */ cpu->lr = cpu->r[0];
|
|
/* 0206560C */ cpu->r[1] = cpu->r[1] + 0x000000D0u;
|
|
/* 02065610 */ return;
|
|
L_02065614: ; // 0x2065614
|
|
/* 02065614 */ cpu->r[4] = 0x10000000u;
|
|
/* 02065618 */ cpu->r[4] = cpu->r[4] + 0x00007144u;
|
|
/* 0206561C */ _t95 = cpu->r[25] + 0x00000110u;
|
|
/* 0206561C */ rbrew_write32(cpu->mem, _t95, cpu->r[4]);
|
|
/* 02065620 */ goto L_0206622C;
|
|
L_02065624: ; // 0x2065624
|
|
/* 02065624 */ cpu->r[11] = 0x10000000u;
|
|
/* 02065628 */ _t96 = cpu->r[1] + 0x00000054u;
|
|
/* 02065628 */ rbrew_write32(cpu->mem, _t96, cpu->r[26]);
|
|
/* 0206562C */ cpu->r[11] = cpu->r[11] + 0x000070F8u;
|
|
/* 02065630 */ _t97 = cpu->r[23] + 0x00000004u;
|
|
/* 02065630 */ cpu->r[12] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02065634 */ _t98 = cpu->r[1] + 0x00000050u;
|
|
/* 02065634 */ rbrew_write32(cpu->mem, _t98, cpu->r[11]);
|
|
/* 02065638 */ _t99 = cpu->r[12] + 0x00000014u;
|
|
/* 02065638 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0206563C */ cpu->ctr = cpu->r[0];
|
|
/* 02065640 */ cpu->r[3] = cpu->r[23];
|
|
/* 02065644 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065648 */ _t100 = cpu->r[23] + 0x00000000u;
|
|
/* 02065648 */ cpu->r[12] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0206564C */ _t101 = cpu->r[12] + 0x00000000u;
|
|
/* 0206564C */ cpu->r[4] = rbrew_read8(cpu->mem, _t101);
|
|
/* 02065650 */ cpu->r[29] = 0x00000000u;
|
|
/* 02065654 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 02065658 */ cpu->r[4] = 0x00080000u;
|
|
/* 0206565C */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206565C */ _t103 = _t102 & 0x00000001u;
|
|
/* 0206565C */ if (_t103) goto L_02065684; else goto L_02065660;
|
|
L_02065660: ; // 0x2065660
|
|
/* 02065660 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02065664 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[4]);
|
|
/* 02065668 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0206566C */ _t104 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0206566C */ _t105 = _t104 & 0x00000001u;
|
|
/* 0206566C */ if (_t105) goto L_02065680; else goto L_02065670;
|
|
L_02065670: ; // 0x2065670
|
|
/* 02065670 */ _t106 = cpu->r[12] + 0x00000000u;
|
|
/* 02065670 */ cpu->r[5] = rbrew_read8(cpu->mem, _t106);
|
|
/* 02065674 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02065678 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065678 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02065678 */ if (_t108) goto L_0206567C; else goto L_02065660;
|
|
L_0206567C: ; // 0x206567c
|
|
/* 0206567C */ goto L_02065684;
|
|
L_02065680: ; // 0x2065680
|
|
/* 02065680 */ cpu->r[29] = 0x00000000u;
|
|
L_02065684: ; // 0x2065684
|
|
/* 02065684 */ _t109 = cpu->r[1] + 0x00000054u;
|
|
/* 02065684 */ cpu->r[6] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02065688 */ _t110 = cpu->r[6] + 0x00000014u;
|
|
/* 02065688 */ cpu->r[7] = rbrew_read32(cpu->mem, _t110);
|
|
/* 0206568C */ cpu->ctr = cpu->r[7];
|
|
/* 02065690 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02065694 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065698 */ _t111 = cpu->r[1] + 0x00000050u;
|
|
/* 02065698 */ cpu->r[10] = rbrew_read32(cpu->mem, _t111);
|
|
/* 0206569C */ _t112 = cpu->r[10] + 0x00000000u;
|
|
/* 0206569C */ cpu->r[8] = rbrew_read8(cpu->mem, _t112);
|
|
/* 020656A0 */ cpu->r[30] = 0x00000000u;
|
|
/* 020656A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 020656A8 */ cpu->r[0] = 0x00080000u;
|
|
/* 020656AC */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020656AC */ _t114 = _t113 & 0x00000001u;
|
|
/* 020656AC */ if (_t114) goto L_020656D4; else goto L_020656B0;
|
|
L_020656B0: ; // 0x20656b0
|
|
/* 020656B0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 020656B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 020656B8 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 020656BC */ _t115 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020656BC */ _t116 = _t115 & 0x00000001u;
|
|
/* 020656BC */ if (_t116) goto L_020656D0; else goto L_020656C0;
|
|
L_020656C0: ; // 0x20656c0
|
|
/* 020656C0 */ _t117 = cpu->r[10] + 0x00000000u;
|
|
/* 020656C0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t117);
|
|
/* 020656C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 020656C8 */ _t118 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020656C8 */ _t119 = _t118 & 0x00000001u;
|
|
/* 020656C8 */ if (_t119) goto L_020656CC; else goto L_020656B0;
|
|
L_020656CC: ; // 0x20656cc
|
|
/* 020656CC */ goto L_020656D4;
|
|
L_020656D0: ; // 0x20656d0
|
|
/* 020656D0 */ cpu->r[30] = 0x00000000u;
|
|
L_020656D4: ; // 0x20656d4
|
|
/* 020656D4 */ cpu->r[29] = cpu->r[29] - cpu->r[30];
|
|
/* 020656D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 020656D8 */ cpu->r[20] = 0x00000000u;
|
|
/* 020656DC */ _t120 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020656DC */ _t121 = _t120 & 0x00000001u;
|
|
/* 020656DC */ if (_t121) goto L_020657A4; else goto L_020656E0;
|
|
L_020656E0: ; // 0x20656e0
|
|
/* 020656E0 */ cpu->r[22] = cpu->r[31];
|
|
L_020656E4: ; // 0x20656e4
|
|
/* 020656E4 */ _t122 = cpu->r[23] + 0x00000000u;
|
|
/* 020656E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t122);
|
|
/* 020656E8 */ _t123 = cpu->r[1] + 0x00000014u;
|
|
/* 020656E8 */ rbrew_write32(cpu->mem, _t123, cpu->r[26]);
|
|
/* 020656EC */ cpu->r[0] = cpu->r[11] + cpu->r[20];
|
|
/* 020656F0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 020656F4 */ _t124 = cpu->r[1] + 0x00000010u;
|
|
/* 020656F4 */ rbrew_write32(cpu->mem, _t124, cpu->r[0]);
|
|
/* 020656F8 */ Gambit_fn_020669E4(cpu);
|
|
/* 020656FC */ _t125 = cpu->r[1] + 0x00000014u;
|
|
/* 020656FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t125);
|
|
/* 02065700 */ _t126 = cpu->r[12] + 0x00000014u;
|
|
/* 02065700 */ cpu->r[10] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02065704 */ cpu->ctr = cpu->r[10];
|
|
/* 02065708 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0206570C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065710 */ _t127 = cpu->r[1] + 0x00000054u;
|
|
/* 02065710 */ cpu->r[11] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02065714 */ _t128 = cpu->r[11] + 0x00000014u;
|
|
/* 02065714 */ cpu->r[12] = rbrew_read32(cpu->mem, _t128);
|
|
/* 02065718 */ cpu->ctr = cpu->r[12];
|
|
/* 0206571C */ _t129 = cpu->r[1] + 0x00000010u;
|
|
/* 0206571C */ cpu->r[19] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02065720 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02065724 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065728 */ _t130 = cpu->r[1] + 0x00000050u;
|
|
/* 02065728 */ cpu->r[4] = rbrew_read32(cpu->mem, _t130);
|
|
/* 0206572C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], cpu->r[4]);
|
|
/* 02065730 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065730 */ _t132 = _t131 & 0x00000001u;
|
|
/* 02065730 */ if (_t132) goto L_02065784; else goto L_02065734;
|
|
L_02065734: ; // 0x2065734
|
|
/* 02065734 */ cpu->r[0] = cpu->r[30];
|
|
/* 02065734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02065738 */ _t133 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065738 */ _t134 = _t133 & 0x00000001u;
|
|
/* 02065738 */ if (_t134) goto L_0206573C; else goto L_02065784;
|
|
L_0206573C: ; // 0x206573c
|
|
/* 0206573C */ _t135 = cpu->r[1] + 0x00000050u;
|
|
/* 0206573C */ cpu->r[8] = rbrew_read32(cpu->mem, _t135);
|
|
/* 02065740 */ cpu->ctr = cpu->r[0];
|
|
/* 02065744 */ _t136 = cpu->r[1] + 0x00000010u;
|
|
/* 02065744 */ cpu->r[9] = rbrew_read32(cpu->mem, _t136);
|
|
L_02065748: ; // 0x2065748
|
|
/* 02065748 */ _t137 = cpu->r[9] + 0x00000000u;
|
|
/* 02065748 */ cpu->r[5] = rbrew_read8(cpu->mem, _t137);
|
|
/* 0206574C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[22]);
|
|
/* 02065750 */ _t138 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065750 */ _t139 = _t138 & 0x00000001u;
|
|
/* 02065750 */ if (_t139) goto L_02065754; else goto L_02065764;
|
|
L_02065754: ; // 0x2065754
|
|
/* 02065754 */ _t140 = cpu->r[8] + 0x00000000u;
|
|
/* 02065754 */ cpu->r[5] = rbrew_read8(cpu->mem, _t140);
|
|
/* 02065758 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[22]);
|
|
/* 0206575C */ _t141 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206575C */ _t142 = _t141 & 0x00000001u;
|
|
/* 0206575C */ if (_t142) goto L_02065784; else goto L_02065760;
|
|
L_02065760: ; // 0x2065760
|
|
/* 02065760 */ goto L_02065798;
|
|
L_02065764: ; // 0x2065764
|
|
/* 02065764 */ _t143 = cpu->r[8] + 0x00000000u;
|
|
/* 02065764 */ cpu->r[4] = rbrew_read8(cpu->mem, _t143);
|
|
/* 02065768 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[22]);
|
|
/* 0206576C */ _t144 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206576C */ _t145 = _t144 & 0x00000001u;
|
|
/* 0206576C */ if (_t145) goto L_02065798; else goto L_02065770;
|
|
L_02065770: ; // 0x2065770
|
|
/* 02065770 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[5]);
|
|
/* 02065774 */ _t146 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065774 */ _t147 = _t146 & 0x00000001u;
|
|
/* 02065774 */ if (_t147) goto L_02065778; else goto L_02065798;
|
|
L_02065778: ; // 0x2065778
|
|
/* 02065778 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0206577C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02065780 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02065780 */ _t148 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02065780 */ _t149 = _t148 >> (0x00000002u & 31u);
|
|
/* 02065780 */ _t150 = _t149 & 0x00000001u;
|
|
/* 02065780 */ if (_t150) goto L_02065748; else goto L_02065784;
|
|
L_02065784: ; // 0x2065784
|
|
/* 02065784 */ _t151 = cpu->r[20] | cpu->r[20];
|
|
/* 02065784 */ cpu->r[6] = ~_t151;
|
|
/* 02065788 */ cpu->r[7] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 0206578C */ cpu->r[0] = cpu->r[6] - cpu->r[7];
|
|
/* 0206578C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02065790 */ _t152 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065790 */ _t153 = _t152 & 0x00000001u;
|
|
/* 02065790 */ if (_t153) goto L_02065864; else goto L_02065794;
|
|
L_02065794: ; // 0x2065794
|
|
/* 02065794 */ goto L_020657B4;
|
|
L_02065798: ; // 0x2065798
|
|
/* 02065798 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 0206579C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[29]);
|
|
/* 020657A0 */ _t154 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020657A0 */ _t155 = _t154 & 0x00000001u;
|
|
/* 020657A0 */ if (_t155) goto L_020657A4; else goto L_020656E4;
|
|
L_020657A4: ; // 0x20657a4
|
|
/* 020657A4 */ cpu->r[6] = 0x00000000u;
|
|
/* 020657A8 */ cpu->r[7] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 020657AC */ cpu->r[0] = ~cpu->r[7];
|
|
/* 020657AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020657B0 */ _t156 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020657B0 */ _t157 = _t156 & 0x00000001u;
|
|
/* 020657B0 */ if (_t157) goto L_02065864; else goto L_020657B4;
|
|
L_020657B4: ; // 0x20657b4
|
|
/* 020657B4 */ _t158 = cpu->r[27] + 0x00000004u;
|
|
/* 020657B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t158);
|
|
/* 020657B8 */ _t159 = cpu->r[1] + 0x00000090u;
|
|
/* 020657B8 */ rbrew_write32(cpu->mem, _t159, cpu->r[21]);
|
|
/* 020657BC */ _t160 = cpu->r[1] + 0x00000094u;
|
|
/* 020657BC */ rbrew_write32(cpu->mem, _t160, cpu->r[26]);
|
|
/* 020657C0 */ _t161 = cpu->r[8] + 0x00000014u;
|
|
/* 020657C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t161);
|
|
/* 020657C4 */ cpu->ctr = cpu->r[9];
|
|
/* 020657C8 */ cpu->r[3] = cpu->r[27];
|
|
/* 020657CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020657D0 */ _t162 = cpu->r[27] + 0x00000004u;
|
|
/* 020657D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t162);
|
|
/* 020657D4 */ _t163 = cpu->r[10] + 0x00000014u;
|
|
/* 020657D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t163);
|
|
/* 020657D8 */ cpu->ctr = cpu->r[0];
|
|
/* 020657DC */ cpu->r[3] = cpu->r[27];
|
|
/* 020657E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020657E4 */ _t164 = cpu->r[1] + 0x00000094u;
|
|
/* 020657E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t164);
|
|
/* 020657E8 */ _t165 = cpu->r[12] + 0x00000014u;
|
|
/* 020657E8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t165);
|
|
/* 020657EC */ cpu->ctr = cpu->r[4];
|
|
/* 020657F0 */ _t166 = cpu->r[27] + 0x00000000u;
|
|
/* 020657F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t166);
|
|
/* 020657F4 */ cpu->r[3] = cpu->r[1] + 0x00000090u;
|
|
/* 020657F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020657FC */ _t167 = cpu->r[1] + 0x00000090u;
|
|
/* 020657FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t167);
|
|
/* 02065800 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[5]);
|
|
/* 02065804 */ _t168 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065804 */ _t169 = _t168 & 0x00000001u;
|
|
/* 02065804 */ if (_t169) goto L_02065854; else goto L_02065808;
|
|
L_02065808: ; // 0x2065808
|
|
/* 02065808 */ cpu->r[0] = 0x00080000u;
|
|
/* 0206580C */ _t170 = cpu->r[27] + 0x00000000u;
|
|
/* 0206580C */ cpu->r[12] = rbrew_read32(cpu->mem, _t170);
|
|
/* 02065810 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02065814 */ _t171 = cpu->r[1] + 0x00000090u;
|
|
/* 02065814 */ cpu->r[11] = rbrew_read32(cpu->mem, _t171);
|
|
/* 02065818 */ cpu->ctr = cpu->r[0];
|
|
/* 0206581C */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02065820 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_02065824: ; // 0x2065824
|
|
/* 02065824 */ _t172 = cpu->r[12] + 0x00000001u;
|
|
/* 02065824 */ cpu->r[8] = rbrew_read8(cpu->mem, _t172);
|
|
/* 02065824 */ cpu->r[12] = _t172;
|
|
/* 02065828 */ _t173 = cpu->r[11] + 0x00000001u;
|
|
/* 02065828 */ cpu->r[6] = rbrew_read8(cpu->mem, _t173);
|
|
/* 02065828 */ cpu->r[11] = _t173;
|
|
/* 0206582C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[6]);
|
|
/* 02065830 */ _t174 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065830 */ _t175 = _t174 & 0x00000001u;
|
|
/* 02065830 */ if (_t175) goto L_02065834; else goto L_0206622C;
|
|
L_02065834: ; // 0x2065834
|
|
/* 02065834 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02065838 */ _t176 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065838 */ _t177 = _t176 & 0x00000001u;
|
|
/* 02065838 */ if (_t177) goto L_02065854; else goto L_0206583C;
|
|
L_0206583C: ; // 0x206583c
|
|
/* 0206583C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0206583C */ _t178 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0206583C */ _t179 = _t178 >> (0x00000002u & 31u);
|
|
/* 0206583C */ _t180 = _t179 & 0x00000001u;
|
|
/* 0206583C */ if (_t180) goto L_02065824; else goto L_02065840;
|
|
L_02065840: ; // 0x2065840
|
|
/* 02065840 */ /* nop */
|
|
/* 02065844 */ _t181 = cpu->r[1] + 0x000000D4u;
|
|
/* 02065844 */ cpu->r[0] = rbrew_read32(cpu->mem, _t181);
|
|
/* 02065848 */ cpu->lr = cpu->r[0];
|
|
/* 0206584C */ cpu->r[1] = cpu->r[1] + 0x000000D0u;
|
|
/* 02065850 */ return;
|
|
L_02065854: ; // 0x2065854
|
|
/* 02065854 */ cpu->r[4] = 0x10000000u;
|
|
/* 02065858 */ cpu->r[4] = cpu->r[4] + 0x0000710Cu;
|
|
/* 0206585C */ _t182 = cpu->r[25] + 0x00000110u;
|
|
/* 0206585C */ rbrew_write32(cpu->mem, _t182, cpu->r[4]);
|
|
/* 02065860 */ goto L_0206622C;
|
|
L_02065864: ; // 0x2065864
|
|
/* 02065864 */ cpu->r[7] = 0x10000000u;
|
|
/* 02065868 */ _t183 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02065868 */ rbrew_write32(cpu->mem, _t183, cpu->r[26]);
|
|
/* 0206586C */ cpu->r[7] = cpu->r[7] + 0x00007158u;
|
|
/* 02065870 */ _t184 = cpu->r[23] + 0x00000004u;
|
|
/* 02065870 */ cpu->r[8] = rbrew_read32(cpu->mem, _t184);
|
|
/* 02065874 */ _t185 = cpu->r[1] + 0x00000058u;
|
|
/* 02065874 */ rbrew_write32(cpu->mem, _t185, cpu->r[7]);
|
|
/* 02065878 */ _t186 = cpu->r[8] + 0x00000014u;
|
|
/* 02065878 */ cpu->r[9] = rbrew_read32(cpu->mem, _t186);
|
|
/* 0206587C */ cpu->ctr = cpu->r[9];
|
|
/* 02065880 */ cpu->r[3] = cpu->r[23];
|
|
/* 02065884 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065888 */ _t187 = cpu->r[23] + 0x00000000u;
|
|
/* 02065888 */ cpu->r[6] = rbrew_read32(cpu->mem, _t187);
|
|
/* 0206588C */ _t188 = cpu->r[6] + 0x00000000u;
|
|
/* 0206588C */ cpu->r[10] = rbrew_read8(cpu->mem, _t188);
|
|
/* 02065890 */ cpu->r[7] = 0x00080000u;
|
|
/* 02065894 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02065898 */ cpu->r[29] = 0x00000000u;
|
|
/* 0206589C */ _t189 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206589C */ _t190 = _t189 & 0x00000001u;
|
|
/* 0206589C */ if (_t190) goto L_020658C4; else goto L_020658A0;
|
|
L_020658A0: ; // 0x20658a0
|
|
/* 020658A0 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 020658A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[7]);
|
|
/* 020658A8 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 020658AC */ _t191 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020658AC */ _t192 = _t191 & 0x00000001u;
|
|
/* 020658AC */ if (_t192) goto L_020658C0; else goto L_020658B0;
|
|
L_020658B0: ; // 0x20658b0
|
|
/* 020658B0 */ _t193 = cpu->r[6] + 0x00000000u;
|
|
/* 020658B0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t193);
|
|
/* 020658B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 020658B8 */ _t194 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020658B8 */ _t195 = _t194 & 0x00000001u;
|
|
/* 020658B8 */ if (_t195) goto L_020658BC; else goto L_020658A0;
|
|
L_020658BC: ; // 0x20658bc
|
|
/* 020658BC */ goto L_020658C4;
|
|
L_020658C0: ; // 0x20658c0
|
|
/* 020658C0 */ cpu->r[29] = 0x00000000u;
|
|
L_020658C4: ; // 0x20658c4
|
|
/* 020658C4 */ _t196 = cpu->r[1] + 0x0000005Cu;
|
|
/* 020658C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t196);
|
|
/* 020658C8 */ _t197 = cpu->r[12] + 0x00000014u;
|
|
/* 020658C8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t197);
|
|
/* 020658CC */ cpu->ctr = cpu->r[4];
|
|
/* 020658D0 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 020658D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020658D8 */ _t198 = cpu->r[1] + 0x00000058u;
|
|
/* 020658D8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t198);
|
|
/* 020658DC */ _t199 = cpu->r[4] + 0x00000000u;
|
|
/* 020658DC */ cpu->r[5] = rbrew_read8(cpu->mem, _t199);
|
|
/* 020658E0 */ cpu->r[30] = 0x00000000u;
|
|
/* 020658E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 020658E8 */ cpu->r[5] = 0x00080000u;
|
|
/* 020658EC */ _t200 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020658EC */ _t201 = _t200 & 0x00000001u;
|
|
/* 020658EC */ if (_t201) goto L_02065914; else goto L_020658F0;
|
|
L_020658F0: ; // 0x20658f0
|
|
/* 020658F0 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 020658F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 020658F8 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 020658FC */ _t202 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020658FC */ _t203 = _t202 & 0x00000001u;
|
|
/* 020658FC */ if (_t203) goto L_02065910; else goto L_02065900;
|
|
L_02065900: ; // 0x2065900
|
|
/* 02065900 */ _t204 = cpu->r[4] + 0x00000000u;
|
|
/* 02065900 */ cpu->r[0] = rbrew_read8(cpu->mem, _t204);
|
|
/* 02065904 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02065908 */ _t205 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065908 */ _t206 = _t205 & 0x00000001u;
|
|
/* 02065908 */ if (_t206) goto L_0206590C; else goto L_020658F0;
|
|
L_0206590C: ; // 0x206590c
|
|
/* 0206590C */ goto L_02065914;
|
|
L_02065910: ; // 0x2065910
|
|
/* 02065910 */ cpu->r[30] = 0x00000000u;
|
|
L_02065914: ; // 0x2065914
|
|
/* 02065914 */ cpu->r[29] = cpu->r[29] - cpu->r[30];
|
|
/* 02065914 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02065918 */ cpu->r[22] = 0x00000000u;
|
|
/* 0206591C */ _t207 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206591C */ _t208 = _t207 & 0x00000001u;
|
|
/* 0206591C */ if (_t208) goto L_020659EC; else goto L_02065920;
|
|
L_02065920: ; // 0x2065920
|
|
/* 02065920 */ cpu->r[21] = cpu->r[31];
|
|
L_02065924: ; // 0x2065924
|
|
/* 02065924 */ _t209 = cpu->r[23] + 0x00000000u;
|
|
/* 02065924 */ cpu->r[8] = rbrew_read32(cpu->mem, _t209);
|
|
/* 02065928 */ _t210 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02065928 */ rbrew_write32(cpu->mem, _t210, cpu->r[26]);
|
|
/* 0206592C */ cpu->r[7] = cpu->r[8] + cpu->r[22];
|
|
/* 02065930 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02065934 */ _t211 = cpu->r[1] + 0x00000018u;
|
|
/* 02065934 */ rbrew_write32(cpu->mem, _t211, cpu->r[7]);
|
|
/* 02065938 */ Gambit_fn_020669E4(cpu);
|
|
/* 0206593C */ _t212 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206593C */ cpu->r[9] = rbrew_read32(cpu->mem, _t212);
|
|
/* 02065940 */ _t213 = cpu->r[9] + 0x00000014u;
|
|
/* 02065940 */ cpu->r[10] = rbrew_read32(cpu->mem, _t213);
|
|
/* 02065944 */ cpu->ctr = cpu->r[10];
|
|
/* 02065948 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0206594C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065950 */ _t214 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02065950 */ cpu->r[11] = rbrew_read32(cpu->mem, _t214);
|
|
/* 02065954 */ _t215 = cpu->r[11] + 0x00000014u;
|
|
/* 02065954 */ cpu->r[0] = rbrew_read32(cpu->mem, _t215);
|
|
/* 02065958 */ cpu->ctr = cpu->r[0];
|
|
/* 0206595C */ _t216 = cpu->r[1] + 0x00000018u;
|
|
/* 0206595C */ cpu->r[20] = rbrew_read32(cpu->mem, _t216);
|
|
/* 02065960 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 02065964 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065968 */ _t217 = cpu->r[1] + 0x00000058u;
|
|
/* 02065968 */ cpu->r[4] = rbrew_read32(cpu->mem, _t217);
|
|
/* 0206596C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[4]);
|
|
/* 02065970 */ _t218 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065970 */ _t219 = _t218 & 0x00000001u;
|
|
/* 02065970 */ if (_t219) goto L_020659C4; else goto L_02065974;
|
|
L_02065974: ; // 0x2065974
|
|
/* 02065974 */ cpu->r[0] = cpu->r[30];
|
|
/* 02065974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02065978 */ _t220 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065978 */ _t221 = _t220 & 0x00000001u;
|
|
/* 02065978 */ if (_t221) goto L_0206597C; else goto L_020659C4;
|
|
L_0206597C: ; // 0x206597c
|
|
/* 0206597C */ _t222 = cpu->r[1] + 0x00000058u;
|
|
/* 0206597C */ cpu->r[11] = rbrew_read32(cpu->mem, _t222);
|
|
/* 02065980 */ cpu->ctr = cpu->r[0];
|
|
/* 02065984 */ _t223 = cpu->r[1] + 0x00000018u;
|
|
/* 02065984 */ cpu->r[12] = rbrew_read32(cpu->mem, _t223);
|
|
L_02065988: ; // 0x2065988
|
|
/* 02065988 */ _t224 = cpu->r[12] + 0x00000000u;
|
|
/* 02065988 */ cpu->r[7] = rbrew_read8(cpu->mem, _t224);
|
|
/* 0206598C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[21]);
|
|
/* 02065990 */ _t225 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065990 */ _t226 = _t225 & 0x00000001u;
|
|
/* 02065990 */ if (_t226) goto L_02065994; else goto L_020659A4;
|
|
L_02065994: ; // 0x2065994
|
|
/* 02065994 */ _t227 = cpu->r[11] + 0x00000000u;
|
|
/* 02065994 */ cpu->r[5] = rbrew_read8(cpu->mem, _t227);
|
|
/* 02065998 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[21]);
|
|
/* 0206599C */ _t228 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206599C */ _t229 = _t228 & 0x00000001u;
|
|
/* 0206599C */ if (_t229) goto L_020659C4; else goto L_020659A0;
|
|
L_020659A0: ; // 0x20659a0
|
|
/* 020659A0 */ goto L_020659E0;
|
|
L_020659A4: ; // 0x20659a4
|
|
/* 020659A4 */ _t230 = cpu->r[11] + 0x00000000u;
|
|
/* 020659A4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t230);
|
|
/* 020659A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[21]);
|
|
/* 020659AC */ _t231 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020659AC */ _t232 = _t231 & 0x00000001u;
|
|
/* 020659AC */ if (_t232) goto L_020659E0; else goto L_020659B0;
|
|
L_020659B0: ; // 0x20659b0
|
|
/* 020659B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 020659B4 */ _t233 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020659B4 */ _t234 = _t233 & 0x00000001u;
|
|
/* 020659B4 */ if (_t234) goto L_020659B8; else goto L_020659E0;
|
|
L_020659B8: ; // 0x20659b8
|
|
/* 020659B8 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 020659BC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 020659C0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020659C0 */ _t235 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020659C0 */ _t236 = _t235 >> (0x00000002u & 31u);
|
|
/* 020659C0 */ _t237 = _t236 & 0x00000001u;
|
|
/* 020659C0 */ if (_t237) goto L_02065988; else goto L_020659C4;
|
|
L_020659C4: ; // 0x20659c4
|
|
/* 020659C4 */ _t238 = cpu->r[22] | cpu->r[22];
|
|
/* 020659C4 */ cpu->r[6] = ~_t238;
|
|
/* 020659C8 */ cpu->r[0] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 020659CC */ cpu->r[22] = 0x10000000u;
|
|
/* 020659D0 */ cpu->r[8] = cpu->r[6] - cpu->r[0];
|
|
/* 020659D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 020659D4 */ cpu->r[22] = cpu->r[22] + 0x00007120u;
|
|
/* 020659D8 */ _t239 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020659D8 */ _t240 = _t239 & 0x00000001u;
|
|
/* 020659D8 */ if (_t240) goto L_02065BB8; else goto L_020659DC;
|
|
L_020659DC: ; // 0x20659dc
|
|
/* 020659DC */ goto L_02065A04;
|
|
L_020659E0: ; // 0x20659e0
|
|
/* 020659E0 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 020659E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], cpu->r[29]);
|
|
/* 020659E8 */ _t241 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020659E8 */ _t242 = _t241 & 0x00000001u;
|
|
/* 020659E8 */ if (_t242) goto L_020659EC; else goto L_02065924;
|
|
L_020659EC: ; // 0x20659ec
|
|
/* 020659EC */ cpu->r[6] = 0x00000000u;
|
|
/* 020659F0 */ cpu->r[0] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 020659F4 */ cpu->r[22] = 0x10000000u;
|
|
/* 020659F8 */ cpu->r[8] = ~cpu->r[0];
|
|
/* 020659F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 020659FC */ cpu->r[22] = cpu->r[22] + 0x00007120u;
|
|
/* 02065A00 */ _t243 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065A00 */ _t244 = _t243 & 0x00000001u;
|
|
/* 02065A00 */ if (_t244) goto L_02065BB8; else goto L_02065A04;
|
|
L_02065A04: ; // 0x2065a04
|
|
/* 02065A04 */ _t245 = cpu->r[27] + 0x00000004u;
|
|
/* 02065A04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t245);
|
|
/* 02065A08 */ _t246 = cpu->r[1] + 0x00000060u;
|
|
/* 02065A08 */ rbrew_write32(cpu->mem, _t246, cpu->r[22]);
|
|
/* 02065A0C */ _t247 = cpu->r[1] + 0x00000064u;
|
|
/* 02065A0C */ rbrew_write32(cpu->mem, _t247, cpu->r[26]);
|
|
/* 02065A10 */ _t248 = cpu->r[8] + 0x00000014u;
|
|
/* 02065A10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t248);
|
|
/* 02065A14 */ cpu->ctr = cpu->r[9];
|
|
/* 02065A18 */ cpu->r[3] = cpu->r[27];
|
|
/* 02065A1C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065A20 */ _t249 = cpu->r[27] + 0x00000000u;
|
|
/* 02065A20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t249);
|
|
/* 02065A24 */ _t250 = cpu->r[9] + 0x00000000u;
|
|
/* 02065A24 */ cpu->r[0] = rbrew_read8(cpu->mem, _t250);
|
|
/* 02065A28 */ cpu->r[29] = 0x00000000u;
|
|
/* 02065A2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02065A30 */ cpu->r[0] = 0x00080000u;
|
|
/* 02065A34 */ _t251 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065A34 */ _t252 = _t251 & 0x00000001u;
|
|
/* 02065A34 */ if (_t252) goto L_02065A5C; else goto L_02065A38;
|
|
L_02065A38: ; // 0x2065a38
|
|
/* 02065A38 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02065A3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 02065A40 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02065A44 */ _t253 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065A44 */ _t254 = _t253 & 0x00000001u;
|
|
/* 02065A44 */ if (_t254) goto L_02065A58; else goto L_02065A48;
|
|
L_02065A48: ; // 0x2065a48
|
|
/* 02065A48 */ _t255 = cpu->r[9] + 0x00000000u;
|
|
/* 02065A48 */ cpu->r[11] = rbrew_read8(cpu->mem, _t255);
|
|
/* 02065A4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 02065A50 */ _t256 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065A50 */ _t257 = _t256 & 0x00000001u;
|
|
/* 02065A50 */ if (_t257) goto L_02065A54; else goto L_02065A38;
|
|
L_02065A54: ; // 0x2065a54
|
|
/* 02065A54 */ goto L_02065A5C;
|
|
L_02065A58: ; // 0x2065a58
|
|
/* 02065A58 */ cpu->r[29] = 0x00000000u;
|
|
L_02065A5C: ; // 0x2065a5c
|
|
/* 02065A5C */ _t258 = cpu->r[1] + 0x00000064u;
|
|
/* 02065A5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t258);
|
|
/* 02065A60 */ _t259 = cpu->r[12] + 0x00000014u;
|
|
/* 02065A60 */ cpu->r[4] = rbrew_read32(cpu->mem, _t259);
|
|
/* 02065A64 */ cpu->ctr = cpu->r[4];
|
|
/* 02065A68 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 02065A6C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065A70 */ _t260 = cpu->r[1] + 0x00000060u;
|
|
/* 02065A70 */ cpu->r[7] = rbrew_read32(cpu->mem, _t260);
|
|
/* 02065A74 */ _t261 = cpu->r[7] + 0x00000000u;
|
|
/* 02065A74 */ cpu->r[5] = rbrew_read8(cpu->mem, _t261);
|
|
/* 02065A78 */ cpu->r[30] = 0x00000000u;
|
|
/* 02065A7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02065A80 */ cpu->r[8] = 0x00080000u;
|
|
/* 02065A84 */ _t262 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065A84 */ _t263 = _t262 & 0x00000001u;
|
|
/* 02065A84 */ if (_t263) goto L_02065AAC; else goto L_02065A88;
|
|
L_02065A88: ; // 0x2065a88
|
|
/* 02065A88 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02065A8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 02065A90 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02065A94 */ _t264 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065A94 */ _t265 = _t264 & 0x00000001u;
|
|
/* 02065A94 */ if (_t265) goto L_02065AA8; else goto L_02065A98;
|
|
L_02065A98: ; // 0x2065a98
|
|
/* 02065A98 */ _t266 = cpu->r[7] + 0x00000000u;
|
|
/* 02065A98 */ cpu->r[6] = rbrew_read8(cpu->mem, _t266);
|
|
/* 02065A9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 02065AA0 */ _t267 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065AA0 */ _t268 = _t267 & 0x00000001u;
|
|
/* 02065AA0 */ if (_t268) goto L_02065AA4; else goto L_02065A88;
|
|
L_02065AA4: ; // 0x2065aa4
|
|
/* 02065AA4 */ goto L_02065AAC;
|
|
L_02065AA8: ; // 0x2065aa8
|
|
/* 02065AA8 */ cpu->r[30] = 0x00000000u;
|
|
L_02065AAC: ; // 0x2065aac
|
|
/* 02065AAC */ cpu->r[29] = cpu->r[29] - cpu->r[30];
|
|
/* 02065AAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02065AB0 */ cpu->r[23] = 0x00000000u;
|
|
/* 02065AB4 */ _t269 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02065AB4 */ _t270 = _t269 & 0x00000001u;
|
|
/* 02065AB4 */ if (_t270) goto L_02065B78; else goto L_02065AB8;
|
|
L_02065AB8: ; // 0x2065ab8
|
|
/* 02065AB8 */ _t271 = cpu->r[27] + 0x00000000u;
|
|
/* 02065AB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t271);
|
|
/* 02065ABC */ _t272 = cpu->r[1] + 0x00000024u;
|
|
/* 02065ABC */ rbrew_write32(cpu->mem, _t272, cpu->r[26]);
|
|
/* 02065AC0 */ cpu->r[9] = cpu->r[11] + cpu->r[23];
|
|
/* 02065AC4 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 02065AC8 */ _t273 = cpu->r[1] + 0x00000020u;
|
|
/* 02065AC8 */ rbrew_write32(cpu->mem, _t273, cpu->r[9]);
|
|
/* 02065ACC */ Gambit_fn_020669E4(cpu);
|
|
/* 02065AD0 */ _t274 = cpu->r[1] + 0x00000024u;
|
|
/* 02065AD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t274);
|
|
/* 02065AD4 */ _t275 = cpu->r[12] + 0x00000014u;
|
|
/* 02065AD4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t275);
|
|
/* 02065AD8 */ cpu->ctr = cpu->r[4];
|
|
/* 02065ADC */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 02065AE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065AE4 */ _t276 = cpu->r[1] + 0x00000064u;
|
|
/* 02065AE4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t276);
|
|
/* 02065AE8 */ _t277 = cpu->r[5] + 0x00000014u;
|
|
/* 02065AE8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t277);
|
|
/* 02065AEC */ cpu->ctr = cpu->r[6];
|
|
/* 02065AF0 */ _t278 = cpu->r[1] + 0x00000020u;
|
|
/* 02065AF0 */ cpu->r[22] = rbrew_read32(cpu->mem, _t278);
|
|
/* 02065AF4 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 02065AF8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065AFC */ _t279 = cpu->r[1] + 0x00000060u;
|
|
/* 02065AFC */ cpu->r[7] = rbrew_read32(cpu->mem, _t279);
|
|
/* 02065B00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[7]);
|
|
/* 02065B04 */ _t280 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065B04 */ _t281 = _t280 & 0x00000001u;
|
|
/* 02065B04 */ if (_t281) goto L_02065B58; else goto L_02065B08;
|
|
L_02065B08: ; // 0x2065b08
|
|
/* 02065B08 */ cpu->r[0] = cpu->r[30];
|
|
/* 02065B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02065B0C */ _t282 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065B0C */ _t283 = _t282 & 0x00000001u;
|
|
/* 02065B0C */ if (_t283) goto L_02065B10; else goto L_02065B58;
|
|
L_02065B10: ; // 0x2065b10
|
|
/* 02065B10 */ _t284 = cpu->r[1] + 0x00000060u;
|
|
/* 02065B10 */ cpu->r[4] = rbrew_read32(cpu->mem, _t284);
|
|
/* 02065B14 */ cpu->ctr = cpu->r[0];
|
|
/* 02065B18 */ _t285 = cpu->r[1] + 0x00000020u;
|
|
/* 02065B18 */ cpu->r[5] = rbrew_read32(cpu->mem, _t285);
|
|
L_02065B1C: ; // 0x2065b1c
|
|
/* 02065B1C */ _t286 = cpu->r[5] + 0x00000000u;
|
|
/* 02065B1C */ cpu->r[7] = rbrew_read8(cpu->mem, _t286);
|
|
/* 02065B20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 02065B24 */ _t287 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065B24 */ _t288 = _t287 & 0x00000001u;
|
|
/* 02065B24 */ if (_t288) goto L_02065B28; else goto L_02065B38;
|
|
L_02065B28: ; // 0x2065b28
|
|
/* 02065B28 */ _t289 = cpu->r[4] + 0x00000000u;
|
|
/* 02065B28 */ cpu->r[8] = rbrew_read8(cpu->mem, _t289);
|
|
/* 02065B2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02065B30 */ _t290 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065B30 */ _t291 = _t290 & 0x00000001u;
|
|
/* 02065B30 */ if (_t291) goto L_02065B58; else goto L_02065B34;
|
|
L_02065B34: ; // 0x2065b34
|
|
/* 02065B34 */ goto L_02065B6C;
|
|
L_02065B38: ; // 0x2065b38
|
|
/* 02065B38 */ _t292 = cpu->r[4] + 0x00000000u;
|
|
/* 02065B38 */ cpu->r[6] = rbrew_read8(cpu->mem, _t292);
|
|
/* 02065B3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 02065B40 */ _t293 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065B40 */ _t294 = _t293 & 0x00000001u;
|
|
/* 02065B40 */ if (_t294) goto L_02065B6C; else goto L_02065B44;
|
|
L_02065B44: ; // 0x2065b44
|
|
/* 02065B44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[7]);
|
|
/* 02065B48 */ _t295 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065B48 */ _t296 = _t295 & 0x00000001u;
|
|
/* 02065B48 */ if (_t296) goto L_02065B4C; else goto L_02065B6C;
|
|
L_02065B4C: ; // 0x2065b4c
|
|
/* 02065B4C */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 02065B50 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02065B54 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02065B54 */ _t297 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02065B54 */ _t298 = _t297 >> (0x00000002u & 31u);
|
|
/* 02065B54 */ _t299 = _t298 & 0x00000001u;
|
|
/* 02065B54 */ if (_t299) goto L_02065B1C; else goto L_02065B58;
|
|
L_02065B58: ; // 0x2065b58
|
|
/* 02065B58 */ _t300 = cpu->r[23] | cpu->r[23];
|
|
/* 02065B58 */ cpu->r[9] = ~_t300;
|
|
/* 02065B5C */ cpu->r[10] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02065B60 */ cpu->r[5] = cpu->r[9] - cpu->r[10];
|
|
/* 02065B60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02065B64 */ _t301 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065B64 */ _t302 = _t301 & 0x00000001u;
|
|
/* 02065B64 */ if (_t302) goto L_0206622C; else goto L_02065B68;
|
|
L_02065B68: ; // 0x2065b68
|
|
/* 02065B68 */ goto L_02065B88;
|
|
L_02065B6C: ; // 0x2065b6c
|
|
/* 02065B6C */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02065B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], cpu->r[29]);
|
|
/* 02065B74 */ _t303 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065B74 */ _t304 = _t303 & 0x00000001u;
|
|
/* 02065B74 */ if (_t304) goto L_02065B78; else goto L_02065AB8;
|
|
L_02065B78: ; // 0x2065b78
|
|
/* 02065B78 */ cpu->r[9] = 0x00000000u;
|
|
/* 02065B7C */ cpu->r[10] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02065B80 */ cpu->r[5] = ~cpu->r[10];
|
|
/* 02065B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02065B84 */ _t305 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065B84 */ _t306 = _t305 & 0x00000001u;
|
|
/* 02065B84 */ if (_t306) goto L_0206622C; else goto L_02065B88;
|
|
L_02065B88: ; // 0x2065b88
|
|
/* 02065B88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02065B8C */ _t307 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065B8C */ _t308 = _t307 & 0x00000001u;
|
|
/* 02065B8C */ if (_t308) goto L_02065BA0; else goto L_02065B90;
|
|
L_02065B90: ; // 0x2065b90
|
|
/* 02065B90 */ cpu->r[4] = 0x10000000u;
|
|
/* 02065B94 */ cpu->r[4] = cpu->r[4] + 0x000070C8u;
|
|
/* 02065B98 */ _t309 = cpu->r[25] + 0x00000110u;
|
|
/* 02065B98 */ rbrew_write32(cpu->mem, _t309, cpu->r[4]);
|
|
/* 02065B9C */ goto L_0206622C;
|
|
L_02065BA0: ; // 0x2065ba0
|
|
/* 02065BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02065BA4 */ _t310 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065BA4 */ _t311 = _t310 & 0x00000001u;
|
|
/* 02065BA4 */ if (_t311) goto L_0206622C; else goto L_02065BA8;
|
|
L_02065BA8: ; // 0x2065ba8
|
|
/* 02065BA8 */ cpu->r[4] = 0x10000000u;
|
|
/* 02065BAC */ cpu->r[4] = cpu->r[4] + 0x00007174u;
|
|
/* 02065BB0 */ _t312 = cpu->r[25] + 0x00000110u;
|
|
/* 02065BB0 */ rbrew_write32(cpu->mem, _t312, cpu->r[4]);
|
|
/* 02065BB4 */ goto L_0206622C;
|
|
L_02065BB8: ; // 0x2065bb8
|
|
/* 02065BB8 */ cpu->r[11] = 0x10000000u;
|
|
/* 02065BBC */ _t313 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02065BBC */ rbrew_write32(cpu->mem, _t313, cpu->r[26]);
|
|
/* 02065BC0 */ cpu->r[11] = cpu->r[11] + 0x0000718Cu;
|
|
/* 02065BC4 */ _t314 = cpu->r[23] + 0x00000004u;
|
|
/* 02065BC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t314);
|
|
/* 02065BC8 */ _t315 = cpu->r[1] + 0x00000068u;
|
|
/* 02065BC8 */ rbrew_write32(cpu->mem, _t315, cpu->r[11]);
|
|
/* 02065BCC */ _t316 = cpu->r[12] + 0x00000014u;
|
|
/* 02065BCC */ cpu->r[0] = rbrew_read32(cpu->mem, _t316);
|
|
/* 02065BD0 */ cpu->ctr = cpu->r[0];
|
|
/* 02065BD4 */ cpu->r[3] = cpu->r[23];
|
|
/* 02065BD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065BDC */ _t317 = cpu->r[23] + 0x00000000u;
|
|
/* 02065BDC */ cpu->r[9] = rbrew_read32(cpu->mem, _t317);
|
|
/* 02065BE0 */ _t318 = cpu->r[9] + 0x00000000u;
|
|
/* 02065BE0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t318);
|
|
/* 02065BE4 */ cpu->r[0] = 0x00080000u;
|
|
/* 02065BE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 02065BEC */ cpu->r[29] = 0x00000000u;
|
|
/* 02065BF0 */ _t319 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065BF0 */ _t320 = _t319 & 0x00000001u;
|
|
/* 02065BF0 */ if (_t320) goto L_02065C18; else goto L_02065BF4;
|
|
L_02065BF4: ; // 0x2065bf4
|
|
/* 02065BF4 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02065BF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 02065BFC */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02065C00 */ _t321 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065C00 */ _t322 = _t321 & 0x00000001u;
|
|
/* 02065C00 */ if (_t322) goto L_02065C14; else goto L_02065C04;
|
|
L_02065C04: ; // 0x2065c04
|
|
/* 02065C04 */ _t323 = cpu->r[9] + 0x00000000u;
|
|
/* 02065C04 */ cpu->r[5] = rbrew_read8(cpu->mem, _t323);
|
|
/* 02065C08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02065C0C */ _t324 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065C0C */ _t325 = _t324 & 0x00000001u;
|
|
/* 02065C0C */ if (_t325) goto L_02065C10; else goto L_02065BF4;
|
|
L_02065C10: ; // 0x2065c10
|
|
/* 02065C10 */ goto L_02065C18;
|
|
L_02065C14: ; // 0x2065c14
|
|
/* 02065C14 */ cpu->r[29] = 0x00000000u;
|
|
L_02065C18: ; // 0x2065c18
|
|
/* 02065C18 */ _t326 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02065C18 */ cpu->r[6] = rbrew_read32(cpu->mem, _t326);
|
|
/* 02065C1C */ _t327 = cpu->r[6] + 0x00000014u;
|
|
/* 02065C1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t327);
|
|
/* 02065C20 */ cpu->ctr = cpu->r[7];
|
|
/* 02065C24 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 02065C28 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065C2C */ _t328 = cpu->r[1] + 0x00000068u;
|
|
/* 02065C2C */ cpu->r[7] = rbrew_read32(cpu->mem, _t328);
|
|
/* 02065C30 */ _t329 = cpu->r[7] + 0x00000000u;
|
|
/* 02065C30 */ cpu->r[8] = rbrew_read8(cpu->mem, _t329);
|
|
/* 02065C34 */ cpu->r[30] = 0x00000000u;
|
|
/* 02065C38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02065C3C */ cpu->r[8] = 0x00080000u;
|
|
/* 02065C40 */ _t330 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065C40 */ _t331 = _t330 & 0x00000001u;
|
|
/* 02065C40 */ if (_t331) goto L_02065C68; else goto L_02065C44;
|
|
L_02065C44: ; // 0x2065c44
|
|
/* 02065C44 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02065C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 02065C4C */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02065C50 */ _t332 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065C50 */ _t333 = _t332 & 0x00000001u;
|
|
/* 02065C50 */ if (_t333) goto L_02065C64; else goto L_02065C54;
|
|
L_02065C54: ; // 0x2065c54
|
|
/* 02065C54 */ _t334 = cpu->r[7] + 0x00000000u;
|
|
/* 02065C54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t334);
|
|
/* 02065C58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02065C5C */ _t335 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065C5C */ _t336 = _t335 & 0x00000001u;
|
|
/* 02065C5C */ if (_t336) goto L_02065C60; else goto L_02065C44;
|
|
L_02065C60: ; // 0x2065c60
|
|
/* 02065C60 */ goto L_02065C68;
|
|
L_02065C64: ; // 0x2065c64
|
|
/* 02065C64 */ cpu->r[30] = 0x00000000u;
|
|
L_02065C68: ; // 0x2065c68
|
|
/* 02065C68 */ cpu->r[29] = cpu->r[29] - cpu->r[30];
|
|
/* 02065C68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02065C6C */ cpu->r[20] = 0x00000000u;
|
|
/* 02065C70 */ _t337 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02065C70 */ _t338 = _t337 & 0x00000001u;
|
|
/* 02065C70 */ if (_t338) goto L_02065D38; else goto L_02065C74;
|
|
L_02065C74: ; // 0x2065c74
|
|
/* 02065C74 */ cpu->r[21] = cpu->r[31];
|
|
L_02065C78: ; // 0x2065c78
|
|
/* 02065C78 */ _t339 = cpu->r[23] + 0x00000000u;
|
|
/* 02065C78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t339);
|
|
/* 02065C7C */ _t340 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02065C7C */ rbrew_write32(cpu->mem, _t340, cpu->r[26]);
|
|
/* 02065C80 */ cpu->r[10] = cpu->r[11] + cpu->r[20];
|
|
/* 02065C84 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02065C88 */ _t341 = cpu->r[1] + 0x00000028u;
|
|
/* 02065C88 */ rbrew_write32(cpu->mem, _t341, cpu->r[10]);
|
|
/* 02065C8C */ Gambit_fn_020669E4(cpu);
|
|
/* 02065C90 */ _t342 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02065C90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t342);
|
|
/* 02065C94 */ _t343 = cpu->r[12] + 0x00000014u;
|
|
/* 02065C94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t343);
|
|
/* 02065C98 */ cpu->ctr = cpu->r[0];
|
|
/* 02065C9C */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02065CA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065CA4 */ _t344 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02065CA4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t344);
|
|
/* 02065CA8 */ _t345 = cpu->r[4] + 0x00000014u;
|
|
/* 02065CA8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t345);
|
|
/* 02065CAC */ cpu->ctr = cpu->r[5];
|
|
/* 02065CB0 */ _t346 = cpu->r[1] + 0x00000028u;
|
|
/* 02065CB0 */ cpu->r[19] = rbrew_read32(cpu->mem, _t346);
|
|
/* 02065CB4 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 02065CB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065CBC */ _t347 = cpu->r[1] + 0x00000068u;
|
|
/* 02065CBC */ cpu->r[6] = rbrew_read32(cpu->mem, _t347);
|
|
/* 02065CC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[19], cpu->r[6]);
|
|
/* 02065CC4 */ _t348 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065CC4 */ _t349 = _t348 & 0x00000001u;
|
|
/* 02065CC4 */ if (_t349) goto L_02065D18; else goto L_02065CC8;
|
|
L_02065CC8: ; // 0x2065cc8
|
|
/* 02065CC8 */ cpu->r[0] = cpu->r[30];
|
|
/* 02065CC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02065CCC */ _t350 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065CCC */ _t351 = _t350 & 0x00000001u;
|
|
/* 02065CCC */ if (_t351) goto L_02065CD0; else goto L_02065D18;
|
|
L_02065CD0: ; // 0x2065cd0
|
|
/* 02065CD0 */ _t352 = cpu->r[1] + 0x00000068u;
|
|
/* 02065CD0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t352);
|
|
/* 02065CD4 */ cpu->ctr = cpu->r[0];
|
|
/* 02065CD8 */ _t353 = cpu->r[1] + 0x00000028u;
|
|
/* 02065CD8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t353);
|
|
L_02065CDC: ; // 0x2065cdc
|
|
/* 02065CDC */ _t354 = cpu->r[6] + 0x00000000u;
|
|
/* 02065CDC */ cpu->r[9] = rbrew_read8(cpu->mem, _t354);
|
|
/* 02065CE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[21]);
|
|
/* 02065CE4 */ _t355 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065CE4 */ _t356 = _t355 & 0x00000001u;
|
|
/* 02065CE4 */ if (_t356) goto L_02065CE8; else goto L_02065CF8;
|
|
L_02065CE8: ; // 0x2065ce8
|
|
/* 02065CE8 */ _t357 = cpu->r[5] + 0x00000000u;
|
|
/* 02065CE8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t357);
|
|
/* 02065CEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[21]);
|
|
/* 02065CF0 */ _t358 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065CF0 */ _t359 = _t358 & 0x00000001u;
|
|
/* 02065CF0 */ if (_t359) goto L_02065D18; else goto L_02065CF4;
|
|
L_02065CF4: ; // 0x2065cf4
|
|
/* 02065CF4 */ goto L_02065D2C;
|
|
L_02065CF8: ; // 0x2065cf8
|
|
/* 02065CF8 */ _t360 = cpu->r[5] + 0x00000000u;
|
|
/* 02065CF8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t360);
|
|
/* 02065CFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[21]);
|
|
/* 02065D00 */ _t361 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065D00 */ _t362 = _t361 & 0x00000001u;
|
|
/* 02065D00 */ if (_t362) goto L_02065D2C; else goto L_02065D04;
|
|
L_02065D04: ; // 0x2065d04
|
|
/* 02065D04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]);
|
|
/* 02065D08 */ _t363 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065D08 */ _t364 = _t363 & 0x00000001u;
|
|
/* 02065D08 */ if (_t364) goto L_02065D0C; else goto L_02065D2C;
|
|
L_02065D0C: ; // 0x2065d0c
|
|
/* 02065D0C */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02065D10 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02065D14 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02065D14 */ _t365 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02065D14 */ _t366 = _t365 >> (0x00000002u & 31u);
|
|
/* 02065D14 */ _t367 = _t366 & 0x00000001u;
|
|
/* 02065D14 */ if (_t367) goto L_02065CDC; else goto L_02065D18;
|
|
L_02065D18: ; // 0x2065d18
|
|
/* 02065D18 */ _t368 = cpu->r[20] | cpu->r[20];
|
|
/* 02065D18 */ cpu->r[8] = ~_t368;
|
|
/* 02065D1C */ cpu->r[0] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 02065D20 */ cpu->r[0] = cpu->r[8] - cpu->r[0];
|
|
/* 02065D20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02065D24 */ _t369 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065D24 */ _t370 = _t369 & 0x00000001u;
|
|
/* 02065D24 */ if (_t370) goto L_02065F04; else goto L_02065D28;
|
|
L_02065D28: ; // 0x2065d28
|
|
/* 02065D28 */ goto L_02065D48;
|
|
L_02065D2C: ; // 0x2065d2c
|
|
/* 02065D2C */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 02065D30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[29]);
|
|
/* 02065D34 */ _t371 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065D34 */ _t372 = _t371 & 0x00000001u;
|
|
/* 02065D34 */ if (_t372) goto L_02065D38; else goto L_02065C78;
|
|
L_02065D38: ; // 0x2065d38
|
|
/* 02065D38 */ cpu->r[8] = 0x00000000u;
|
|
/* 02065D3C */ cpu->r[0] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 02065D40 */ cpu->r[0] = ~cpu->r[0];
|
|
/* 02065D40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02065D44 */ _t373 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065D44 */ _t374 = _t373 & 0x00000001u;
|
|
/* 02065D44 */ if (_t374) goto L_02065F04; else goto L_02065D48;
|
|
L_02065D48: ; // 0x2065d48
|
|
/* 02065D48 */ cpu->r[10] = 0x10000000u;
|
|
/* 02065D4C */ _t375 = cpu->r[1] + 0x00000074u;
|
|
/* 02065D4C */ rbrew_write32(cpu->mem, _t375, cpu->r[26]);
|
|
/* 02065D50 */ cpu->r[10] = cpu->r[10] + 0x000071A0u;
|
|
/* 02065D54 */ _t376 = cpu->r[27] + 0x00000004u;
|
|
/* 02065D54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t376);
|
|
/* 02065D58 */ _t377 = cpu->r[1] + 0x00000070u;
|
|
/* 02065D58 */ rbrew_write32(cpu->mem, _t377, cpu->r[10]);
|
|
/* 02065D5C */ _t378 = cpu->r[11] + 0x00000014u;
|
|
/* 02065D5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t378);
|
|
/* 02065D60 */ cpu->ctr = cpu->r[12];
|
|
/* 02065D64 */ cpu->r[3] = cpu->r[27];
|
|
/* 02065D68 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065D6C */ _t379 = cpu->r[27] + 0x00000000u;
|
|
/* 02065D6C */ cpu->r[8] = rbrew_read32(cpu->mem, _t379);
|
|
/* 02065D70 */ _t380 = cpu->r[8] + 0x00000000u;
|
|
/* 02065D70 */ cpu->r[0] = rbrew_read8(cpu->mem, _t380);
|
|
/* 02065D74 */ cpu->r[29] = 0x00000000u;
|
|
/* 02065D78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02065D7C */ cpu->r[0] = 0x00080000u;
|
|
/* 02065D80 */ _t381 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065D80 */ _t382 = _t381 & 0x00000001u;
|
|
/* 02065D80 */ if (_t382) goto L_02065DA8; else goto L_02065D84;
|
|
L_02065D84: ; // 0x2065d84
|
|
/* 02065D84 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02065D88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 02065D8C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02065D90 */ _t383 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065D90 */ _t384 = _t383 & 0x00000001u;
|
|
/* 02065D90 */ if (_t384) goto L_02065DA4; else goto L_02065D94;
|
|
L_02065D94: ; // 0x2065d94
|
|
/* 02065D94 */ _t385 = cpu->r[8] + 0x00000000u;
|
|
/* 02065D94 */ cpu->r[4] = rbrew_read8(cpu->mem, _t385);
|
|
/* 02065D98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 02065D9C */ _t386 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065D9C */ _t387 = _t386 & 0x00000001u;
|
|
/* 02065D9C */ if (_t387) goto L_02065DA0; else goto L_02065D84;
|
|
L_02065DA0: ; // 0x2065da0
|
|
/* 02065DA0 */ goto L_02065DA8;
|
|
L_02065DA4: ; // 0x2065da4
|
|
/* 02065DA4 */ cpu->r[29] = 0x00000000u;
|
|
L_02065DA8: ; // 0x2065da8
|
|
/* 02065DA8 */ _t388 = cpu->r[1] + 0x00000074u;
|
|
/* 02065DA8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t388);
|
|
/* 02065DAC */ _t389 = cpu->r[5] + 0x00000014u;
|
|
/* 02065DAC */ cpu->r[6] = rbrew_read32(cpu->mem, _t389);
|
|
/* 02065DB0 */ cpu->ctr = cpu->r[6];
|
|
/* 02065DB4 */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 02065DB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065DBC */ _t390 = cpu->r[1] + 0x00000070u;
|
|
/* 02065DBC */ cpu->r[6] = rbrew_read32(cpu->mem, _t390);
|
|
/* 02065DC0 */ _t391 = cpu->r[6] + 0x00000000u;
|
|
/* 02065DC0 */ cpu->r[7] = rbrew_read8(cpu->mem, _t391);
|
|
/* 02065DC4 */ cpu->r[30] = 0x00000000u;
|
|
/* 02065DC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 02065DCC */ cpu->r[7] = 0x00080000u;
|
|
/* 02065DD0 */ _t392 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065DD0 */ _t393 = _t392 & 0x00000001u;
|
|
/* 02065DD0 */ if (_t393) goto L_02065DF8; else goto L_02065DD4;
|
|
L_02065DD4: ; // 0x2065dd4
|
|
/* 02065DD4 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02065DD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 02065DDC */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02065DE0 */ _t394 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065DE0 */ _t395 = _t394 & 0x00000001u;
|
|
/* 02065DE0 */ if (_t395) goto L_02065DF4; else goto L_02065DE4;
|
|
L_02065DE4: ; // 0x2065de4
|
|
/* 02065DE4 */ _t396 = cpu->r[6] + 0x00000000u;
|
|
/* 02065DE4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t396);
|
|
/* 02065DE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02065DEC */ _t397 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065DEC */ _t398 = _t397 & 0x00000001u;
|
|
/* 02065DEC */ if (_t398) goto L_02065DF0; else goto L_02065DD4;
|
|
L_02065DF0: ; // 0x2065df0
|
|
/* 02065DF0 */ goto L_02065DF8;
|
|
L_02065DF4: ; // 0x2065df4
|
|
/* 02065DF4 */ cpu->r[30] = 0x00000000u;
|
|
L_02065DF8: ; // 0x2065df8
|
|
/* 02065DF8 */ cpu->r[29] = cpu->r[29] - cpu->r[30];
|
|
/* 02065DF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02065DFC */ cpu->r[23] = 0x00000000u;
|
|
/* 02065E00 */ _t399 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02065E00 */ _t400 = _t399 & 0x00000001u;
|
|
/* 02065E00 */ if (_t400) goto L_02065EC4; else goto L_02065E04;
|
|
L_02065E04: ; // 0x2065e04
|
|
/* 02065E04 */ _t401 = cpu->r[27] + 0x00000000u;
|
|
/* 02065E04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t401);
|
|
/* 02065E08 */ _t402 = cpu->r[1] + 0x00000034u;
|
|
/* 02065E08 */ rbrew_write32(cpu->mem, _t402, cpu->r[26]);
|
|
/* 02065E0C */ cpu->r[0] = cpu->r[11] + cpu->r[23];
|
|
/* 02065E10 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 02065E14 */ _t403 = cpu->r[1] + 0x00000030u;
|
|
/* 02065E14 */ rbrew_write32(cpu->mem, _t403, cpu->r[0]);
|
|
/* 02065E18 */ Gambit_fn_020669E4(cpu);
|
|
/* 02065E1C */ _t404 = cpu->r[1] + 0x00000034u;
|
|
/* 02065E1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t404);
|
|
/* 02065E20 */ _t405 = cpu->r[12] + 0x00000014u;
|
|
/* 02065E20 */ cpu->r[4] = rbrew_read32(cpu->mem, _t405);
|
|
/* 02065E24 */ cpu->ctr = cpu->r[4];
|
|
/* 02065E28 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 02065E2C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065E30 */ _t406 = cpu->r[1] + 0x00000074u;
|
|
/* 02065E30 */ cpu->r[5] = rbrew_read32(cpu->mem, _t406);
|
|
/* 02065E34 */ _t407 = cpu->r[5] + 0x00000014u;
|
|
/* 02065E34 */ cpu->r[6] = rbrew_read32(cpu->mem, _t407);
|
|
/* 02065E38 */ cpu->ctr = cpu->r[6];
|
|
/* 02065E3C */ _t408 = cpu->r[1] + 0x00000030u;
|
|
/* 02065E3C */ cpu->r[22] = rbrew_read32(cpu->mem, _t408);
|
|
/* 02065E40 */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 02065E44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065E48 */ _t409 = cpu->r[1] + 0x00000070u;
|
|
/* 02065E48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t409);
|
|
/* 02065E4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[7]);
|
|
/* 02065E50 */ _t410 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065E50 */ _t411 = _t410 & 0x00000001u;
|
|
/* 02065E50 */ if (_t411) goto L_02065EA4; else goto L_02065E54;
|
|
L_02065E54: ; // 0x2065e54
|
|
/* 02065E54 */ cpu->r[0] = cpu->r[30];
|
|
/* 02065E54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02065E58 */ _t412 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065E58 */ _t413 = _t412 & 0x00000001u;
|
|
/* 02065E58 */ if (_t413) goto L_02065E5C; else goto L_02065EA4;
|
|
L_02065E5C: ; // 0x2065e5c
|
|
/* 02065E5C */ _t414 = cpu->r[1] + 0x00000070u;
|
|
/* 02065E5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t414);
|
|
/* 02065E60 */ cpu->ctr = cpu->r[0];
|
|
/* 02065E64 */ _t415 = cpu->r[1] + 0x00000030u;
|
|
/* 02065E64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t415);
|
|
L_02065E68: ; // 0x2065e68
|
|
/* 02065E68 */ _t416 = cpu->r[12] + 0x00000000u;
|
|
/* 02065E68 */ cpu->r[5] = rbrew_read8(cpu->mem, _t416);
|
|
/* 02065E6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02065E70 */ _t417 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065E70 */ _t418 = _t417 & 0x00000001u;
|
|
/* 02065E70 */ if (_t418) goto L_02065E74; else goto L_02065E84;
|
|
L_02065E74: ; // 0x2065e74
|
|
/* 02065E74 */ _t419 = cpu->r[11] + 0x00000000u;
|
|
/* 02065E74 */ cpu->r[8] = rbrew_read8(cpu->mem, _t419);
|
|
/* 02065E78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02065E7C */ _t420 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065E7C */ _t421 = _t420 & 0x00000001u;
|
|
/* 02065E7C */ if (_t421) goto L_02065EA4; else goto L_02065E80;
|
|
L_02065E80: ; // 0x2065e80
|
|
/* 02065E80 */ goto L_02065EB8;
|
|
L_02065E84: ; // 0x2065e84
|
|
/* 02065E84 */ _t422 = cpu->r[11] + 0x00000000u;
|
|
/* 02065E84 */ cpu->r[4] = rbrew_read8(cpu->mem, _t422);
|
|
/* 02065E88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 02065E8C */ _t423 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065E8C */ _t424 = _t423 & 0x00000001u;
|
|
/* 02065E8C */ if (_t424) goto L_02065EB8; else goto L_02065E90;
|
|
L_02065E90: ; // 0x2065e90
|
|
/* 02065E90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[5]);
|
|
/* 02065E94 */ _t425 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065E94 */ _t426 = _t425 & 0x00000001u;
|
|
/* 02065E94 */ if (_t426) goto L_02065E98; else goto L_02065EB8;
|
|
L_02065E98: ; // 0x2065e98
|
|
/* 02065E98 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02065E9C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02065EA0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02065EA0 */ _t427 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02065EA0 */ _t428 = _t427 >> (0x00000002u & 31u);
|
|
/* 02065EA0 */ _t429 = _t428 & 0x00000001u;
|
|
/* 02065EA0 */ if (_t429) goto L_02065E68; else goto L_02065EA4;
|
|
L_02065EA4: ; // 0x2065ea4
|
|
/* 02065EA4 */ _t430 = cpu->r[23] | cpu->r[23];
|
|
/* 02065EA4 */ cpu->r[9] = ~_t430;
|
|
/* 02065EA8 */ cpu->r[10] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02065EAC */ cpu->r[0] = cpu->r[9] - cpu->r[10];
|
|
/* 02065EAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02065EB0 */ _t431 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065EB0 */ _t432 = _t431 & 0x00000001u;
|
|
/* 02065EB0 */ if (_t432) goto L_0206622C; else goto L_02065EB4;
|
|
L_02065EB4: ; // 0x2065eb4
|
|
/* 02065EB4 */ goto L_02065ED4;
|
|
L_02065EB8: ; // 0x2065eb8
|
|
/* 02065EB8 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 02065EBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], cpu->r[29]);
|
|
/* 02065EC0 */ _t433 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065EC0 */ _t434 = _t433 & 0x00000001u;
|
|
/* 02065EC0 */ if (_t434) goto L_02065EC4; else goto L_02065E04;
|
|
L_02065EC4: ; // 0x2065ec4
|
|
/* 02065EC4 */ cpu->r[9] = 0x00000000u;
|
|
/* 02065EC8 */ cpu->r[10] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 02065ECC */ cpu->r[0] = ~cpu->r[10];
|
|
/* 02065ECC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02065ED0 */ _t435 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065ED0 */ _t436 = _t435 & 0x00000001u;
|
|
/* 02065ED0 */ if (_t436) goto L_0206622C; else goto L_02065ED4;
|
|
L_02065ED4: ; // 0x2065ed4
|
|
/* 02065ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02065ED8 */ _t437 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065ED8 */ _t438 = _t437 & 0x00000001u;
|
|
/* 02065ED8 */ if (_t438) goto L_02065EEC; else goto L_02065EDC;
|
|
L_02065EDC: ; // 0x2065edc
|
|
/* 02065EDC */ cpu->r[4] = 0x10000000u;
|
|
/* 02065EE0 */ cpu->r[4] = cpu->r[4] + 0x000070E0u;
|
|
/* 02065EE4 */ _t439 = cpu->r[25] + 0x00000110u;
|
|
/* 02065EE4 */ rbrew_write32(cpu->mem, _t439, cpu->r[4]);
|
|
/* 02065EE8 */ goto L_0206622C;
|
|
L_02065EEC: ; // 0x2065eec
|
|
/* 02065EEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02065EF0 */ _t440 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065EF0 */ _t441 = _t440 & 0x00000001u;
|
|
/* 02065EF0 */ if (_t441) goto L_0206622C; else goto L_02065EF4;
|
|
L_02065EF4: ; // 0x2065ef4
|
|
/* 02065EF4 */ cpu->r[4] = 0x10000000u;
|
|
/* 02065EF8 */ cpu->r[4] = cpu->r[4] + 0x000071ACu;
|
|
/* 02065EFC */ _t442 = cpu->r[25] + 0x00000110u;
|
|
/* 02065EFC */ rbrew_write32(cpu->mem, _t442, cpu->r[4]);
|
|
/* 02065F00 */ goto L_0206622C;
|
|
L_02065F04: ; // 0x2065f04
|
|
/* 02065F04 */ cpu->r[11] = 0x10000000u;
|
|
/* 02065F08 */ _t443 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02065F08 */ rbrew_write32(cpu->mem, _t443, cpu->r[26]);
|
|
/* 02065F0C */ cpu->r[11] = cpu->r[11] + 0x000071C4u;
|
|
/* 02065F10 */ _t444 = cpu->r[23] + 0x00000004u;
|
|
/* 02065F10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t444);
|
|
/* 02065F14 */ _t445 = cpu->r[1] + 0x00000078u;
|
|
/* 02065F14 */ rbrew_write32(cpu->mem, _t445, cpu->r[11]);
|
|
/* 02065F18 */ _t446 = cpu->r[12] + 0x00000014u;
|
|
/* 02065F18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t446);
|
|
/* 02065F1C */ cpu->ctr = cpu->r[0];
|
|
/* 02065F20 */ cpu->r[3] = cpu->r[23];
|
|
/* 02065F24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065F28 */ _t447 = cpu->r[23] + 0x00000000u;
|
|
/* 02065F28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t447);
|
|
/* 02065F2C */ _t448 = cpu->r[12] + 0x00000000u;
|
|
/* 02065F2C */ cpu->r[4] = rbrew_read8(cpu->mem, _t448);
|
|
/* 02065F30 */ cpu->r[29] = 0x00000000u;
|
|
/* 02065F34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 02065F38 */ cpu->r[4] = 0x00080000u;
|
|
/* 02065F3C */ _t449 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065F3C */ _t450 = _t449 & 0x00000001u;
|
|
/* 02065F3C */ if (_t450) goto L_02065F64; else goto L_02065F40;
|
|
L_02065F40: ; // 0x2065f40
|
|
/* 02065F40 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02065F44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[4]);
|
|
/* 02065F48 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02065F4C */ _t451 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065F4C */ _t452 = _t451 & 0x00000001u;
|
|
/* 02065F4C */ if (_t452) goto L_02065F60; else goto L_02065F50;
|
|
L_02065F50: ; // 0x2065f50
|
|
/* 02065F50 */ _t453 = cpu->r[12] + 0x00000000u;
|
|
/* 02065F50 */ cpu->r[5] = rbrew_read8(cpu->mem, _t453);
|
|
/* 02065F54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02065F58 */ _t454 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065F58 */ _t455 = _t454 & 0x00000001u;
|
|
/* 02065F58 */ if (_t455) goto L_02065F5C; else goto L_02065F40;
|
|
L_02065F5C: ; // 0x2065f5c
|
|
/* 02065F5C */ goto L_02065F64;
|
|
L_02065F60: ; // 0x2065f60
|
|
/* 02065F60 */ cpu->r[29] = 0x00000000u;
|
|
L_02065F64: ; // 0x2065f64
|
|
/* 02065F64 */ _t456 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02065F64 */ cpu->r[6] = rbrew_read32(cpu->mem, _t456);
|
|
/* 02065F68 */ _t457 = cpu->r[6] + 0x00000014u;
|
|
/* 02065F68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t457);
|
|
/* 02065F6C */ cpu->ctr = cpu->r[0];
|
|
/* 02065F70 */ cpu->r[3] = cpu->r[1] + 0x00000078u;
|
|
/* 02065F74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065F78 */ _t458 = cpu->r[1] + 0x00000078u;
|
|
/* 02065F78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t458);
|
|
/* 02065F7C */ _t459 = cpu->r[10] + 0x00000000u;
|
|
/* 02065F7C */ cpu->r[8] = rbrew_read8(cpu->mem, _t459);
|
|
/* 02065F80 */ cpu->r[30] = 0x00000000u;
|
|
/* 02065F84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02065F88 */ cpu->r[0] = 0x00080000u;
|
|
/* 02065F8C */ _t460 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065F8C */ _t461 = _t460 & 0x00000001u;
|
|
/* 02065F8C */ if (_t461) goto L_02065FB4; else goto L_02065F90;
|
|
L_02065F90: ; // 0x2065f90
|
|
/* 02065F90 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02065F94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 02065F98 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02065F9C */ _t462 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02065F9C */ _t463 = _t462 & 0x00000001u;
|
|
/* 02065F9C */ if (_t463) goto L_02065FB0; else goto L_02065FA0;
|
|
L_02065FA0: ; // 0x2065fa0
|
|
/* 02065FA0 */ _t464 = cpu->r[10] + 0x00000000u;
|
|
/* 02065FA0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t464);
|
|
/* 02065FA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02065FA8 */ _t465 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02065FA8 */ _t466 = _t465 & 0x00000001u;
|
|
/* 02065FA8 */ if (_t466) goto L_02065FAC; else goto L_02065F90;
|
|
L_02065FAC: ; // 0x2065fac
|
|
/* 02065FAC */ goto L_02065FB4;
|
|
L_02065FB0: ; // 0x2065fb0
|
|
/* 02065FB0 */ cpu->r[30] = 0x00000000u;
|
|
L_02065FB4: ; // 0x2065fb4
|
|
/* 02065FB4 */ cpu->r[29] = cpu->r[29] - cpu->r[30];
|
|
/* 02065FB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02065FB8 */ cpu->r[24] = 0x00000000u;
|
|
/* 02065FBC */ _t467 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02065FBC */ _t468 = _t467 & 0x00000001u;
|
|
/* 02065FBC */ if (_t468) goto L_02066084; else goto L_02065FC0;
|
|
L_02065FC0: ; // 0x2065fc0
|
|
/* 02065FC0 */ cpu->r[21] = cpu->r[31];
|
|
L_02065FC4: ; // 0x2065fc4
|
|
/* 02065FC4 */ _t469 = cpu->r[23] + 0x00000000u;
|
|
/* 02065FC4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t469);
|
|
/* 02065FC8 */ _t470 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02065FC8 */ rbrew_write32(cpu->mem, _t470, cpu->r[26]);
|
|
/* 02065FCC */ cpu->r[0] = cpu->r[11] + cpu->r[24];
|
|
/* 02065FD0 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02065FD4 */ _t471 = cpu->r[1] + 0x00000038u;
|
|
/* 02065FD4 */ rbrew_write32(cpu->mem, _t471, cpu->r[0]);
|
|
/* 02065FD8 */ Gambit_fn_020669E4(cpu);
|
|
/* 02065FDC */ _t472 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02065FDC */ cpu->r[12] = rbrew_read32(cpu->mem, _t472);
|
|
/* 02065FE0 */ _t473 = cpu->r[12] + 0x00000014u;
|
|
/* 02065FE0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t473);
|
|
/* 02065FE4 */ cpu->ctr = cpu->r[4];
|
|
/* 02065FE8 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02065FEC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02065FF0 */ _t474 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02065FF0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t474);
|
|
/* 02065FF4 */ _t475 = cpu->r[6] + 0x00000014u;
|
|
/* 02065FF4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t475);
|
|
/* 02065FF8 */ cpu->ctr = cpu->r[7];
|
|
/* 02065FFC */ _t476 = cpu->r[1] + 0x00000038u;
|
|
/* 02065FFC */ cpu->r[20] = rbrew_read32(cpu->mem, _t476);
|
|
/* 02066000 */ cpu->r[3] = cpu->r[1] + 0x00000078u;
|
|
/* 02066004 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066008 */ _t477 = cpu->r[1] + 0x00000078u;
|
|
/* 02066008 */ cpu->r[8] = rbrew_read32(cpu->mem, _t477);
|
|
/* 0206600C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[8]);
|
|
/* 02066010 */ _t478 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066010 */ _t479 = _t478 & 0x00000001u;
|
|
/* 02066010 */ if (_t479) goto L_02066064; else goto L_02066014;
|
|
L_02066014: ; // 0x2066014
|
|
/* 02066014 */ cpu->r[0] = cpu->r[30];
|
|
/* 02066014 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02066018 */ _t480 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02066018 */ _t481 = _t480 & 0x00000001u;
|
|
/* 02066018 */ if (_t481) goto L_0206601C; else goto L_02066064;
|
|
L_0206601C: ; // 0x206601c
|
|
/* 0206601C */ _t482 = cpu->r[1] + 0x00000078u;
|
|
/* 0206601C */ cpu->r[8] = rbrew_read32(cpu->mem, _t482);
|
|
/* 02066020 */ cpu->ctr = cpu->r[0];
|
|
/* 02066024 */ _t483 = cpu->r[1] + 0x00000038u;
|
|
/* 02066024 */ cpu->r[9] = rbrew_read32(cpu->mem, _t483);
|
|
L_02066028: ; // 0x2066028
|
|
/* 02066028 */ _t484 = cpu->r[9] + 0x00000000u;
|
|
/* 02066028 */ cpu->r[11] = rbrew_read8(cpu->mem, _t484);
|
|
/* 0206602C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[21]);
|
|
/* 02066030 */ _t485 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066030 */ _t486 = _t485 & 0x00000001u;
|
|
/* 02066030 */ if (_t486) goto L_02066034; else goto L_02066044;
|
|
L_02066034: ; // 0x2066034
|
|
/* 02066034 */ _t487 = cpu->r[8] + 0x00000000u;
|
|
/* 02066034 */ cpu->r[9] = rbrew_read8(cpu->mem, _t487);
|
|
/* 02066038 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[21]);
|
|
/* 0206603C */ _t488 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206603C */ _t489 = _t488 & 0x00000001u;
|
|
/* 0206603C */ if (_t489) goto L_02066064; else goto L_02066040;
|
|
L_02066040: ; // 0x2066040
|
|
/* 02066040 */ goto L_02066078;
|
|
L_02066044: ; // 0x2066044
|
|
/* 02066044 */ _t490 = cpu->r[8] + 0x00000000u;
|
|
/* 02066044 */ cpu->r[10] = rbrew_read8(cpu->mem, _t490);
|
|
/* 02066048 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[21]);
|
|
/* 0206604C */ _t491 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206604C */ _t492 = _t491 & 0x00000001u;
|
|
/* 0206604C */ if (_t492) goto L_02066078; else goto L_02066050;
|
|
L_02066050: ; // 0x2066050
|
|
/* 02066050 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]);
|
|
/* 02066054 */ _t493 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066054 */ _t494 = _t493 & 0x00000001u;
|
|
/* 02066054 */ if (_t494) goto L_02066058; else goto L_02066078;
|
|
L_02066058: ; // 0x2066058
|
|
/* 02066058 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 0206605C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02066060 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02066060 */ _t495 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02066060 */ _t496 = _t495 >> (0x00000002u & 31u);
|
|
/* 02066060 */ _t497 = _t496 & 0x00000001u;
|
|
/* 02066060 */ if (_t497) goto L_02066028; else goto L_02066064;
|
|
L_02066064: ; // 0x2066064
|
|
/* 02066064 */ _t498 = cpu->r[24] | cpu->r[24];
|
|
/* 02066064 */ cpu->r[10] = ~_t498;
|
|
/* 02066068 */ cpu->r[11] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 0206606C */ cpu->r[0] = cpu->r[10] - cpu->r[11];
|
|
/* 0206606C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02066070 */ _t499 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066070 */ _t500 = _t499 & 0x00000001u;
|
|
/* 02066070 */ if (_t500) goto L_0206622C; else goto L_02066074;
|
|
L_02066074: ; // 0x2066074
|
|
/* 02066074 */ goto L_02066094;
|
|
L_02066078: ; // 0x2066078
|
|
/* 02066078 */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 0206607C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[29]);
|
|
/* 02066080 */ _t501 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02066080 */ _t502 = _t501 & 0x00000001u;
|
|
/* 02066080 */ if (_t502) goto L_02066084; else goto L_02065FC4;
|
|
L_02066084: ; // 0x2066084
|
|
/* 02066084 */ cpu->r[10] = 0x00000000u;
|
|
/* 02066088 */ cpu->r[11] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 0206608C */ cpu->r[0] = ~cpu->r[11];
|
|
/* 0206608C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02066090 */ _t503 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066090 */ _t504 = _t503 & 0x00000001u;
|
|
/* 02066090 */ if (_t504) goto L_0206622C; else goto L_02066094;
|
|
L_02066094: ; // 0x2066094
|
|
/* 02066094 */ _t505 = cpu->r[27] + 0x00000004u;
|
|
/* 02066094 */ cpu->r[12] = rbrew_read32(cpu->mem, _t505);
|
|
/* 02066098 */ _t506 = cpu->r[1] + 0x00000080u;
|
|
/* 02066098 */ rbrew_write32(cpu->mem, _t506, cpu->r[22]);
|
|
/* 0206609C */ _t507 = cpu->r[1] + 0x00000084u;
|
|
/* 0206609C */ rbrew_write32(cpu->mem, _t507, cpu->r[26]);
|
|
/* 020660A0 */ _t508 = cpu->r[12] + 0x00000014u;
|
|
/* 020660A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t508);
|
|
/* 020660A4 */ cpu->ctr = cpu->r[0];
|
|
/* 020660A8 */ cpu->r[3] = cpu->r[27];
|
|
/* 020660AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020660B0 */ _t509 = cpu->r[27] + 0x00000000u;
|
|
/* 020660B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t509);
|
|
/* 020660B4 */ _t510 = cpu->r[6] + 0x00000000u;
|
|
/* 020660B4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t510);
|
|
/* 020660B8 */ cpu->r[7] = 0x00080000u;
|
|
/* 020660BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 020660C0 */ cpu->r[29] = 0x00000000u;
|
|
/* 020660C4 */ _t511 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020660C4 */ _t512 = _t511 & 0x00000001u;
|
|
/* 020660C4 */ if (_t512) goto L_020660EC; else goto L_020660C8;
|
|
L_020660C8: ; // 0x20660c8
|
|
/* 020660C8 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 020660CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[7]);
|
|
/* 020660D0 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 020660D4 */ _t513 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020660D4 */ _t514 = _t513 & 0x00000001u;
|
|
/* 020660D4 */ if (_t514) goto L_020660E8; else goto L_020660D8;
|
|
L_020660D8: ; // 0x20660d8
|
|
/* 020660D8 */ _t515 = cpu->r[6] + 0x00000000u;
|
|
/* 020660D8 */ cpu->r[5] = rbrew_read8(cpu->mem, _t515);
|
|
/* 020660DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 020660E0 */ _t516 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020660E0 */ _t517 = _t516 & 0x00000001u;
|
|
/* 020660E0 */ if (_t517) goto L_020660E4; else goto L_020660C8;
|
|
L_020660E4: ; // 0x20660e4
|
|
/* 020660E4 */ goto L_020660EC;
|
|
L_020660E8: ; // 0x20660e8
|
|
/* 020660E8 */ cpu->r[29] = 0x00000000u;
|
|
L_020660EC: ; // 0x20660ec
|
|
/* 020660EC */ _t518 = cpu->r[1] + 0x00000084u;
|
|
/* 020660EC */ cpu->r[6] = rbrew_read32(cpu->mem, _t518);
|
|
/* 020660F0 */ _t519 = cpu->r[6] + 0x00000014u;
|
|
/* 020660F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t519);
|
|
/* 020660F4 */ cpu->ctr = cpu->r[7];
|
|
/* 020660F8 */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 020660FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066100 */ _t520 = cpu->r[1] + 0x00000080u;
|
|
/* 02066100 */ cpu->r[4] = rbrew_read32(cpu->mem, _t520);
|
|
/* 02066104 */ _t521 = cpu->r[4] + 0x00000000u;
|
|
/* 02066104 */ cpu->r[8] = rbrew_read8(cpu->mem, _t521);
|
|
/* 02066108 */ cpu->r[30] = 0x00000000u;
|
|
/* 0206610C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02066110 */ cpu->r[5] = 0x00080000u;
|
|
/* 02066114 */ _t522 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066114 */ _t523 = _t522 & 0x00000001u;
|
|
/* 02066114 */ if (_t523) goto L_0206613C; else goto L_02066118;
|
|
L_02066118: ; // 0x2066118
|
|
/* 02066118 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0206611C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02066120 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 02066124 */ _t524 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02066124 */ _t525 = _t524 & 0x00000001u;
|
|
/* 02066124 */ if (_t525) goto L_02066138; else goto L_02066128;
|
|
L_02066128: ; // 0x2066128
|
|
/* 02066128 */ _t526 = cpu->r[4] + 0x00000000u;
|
|
/* 02066128 */ cpu->r[9] = rbrew_read8(cpu->mem, _t526);
|
|
/* 0206612C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02066130 */ _t527 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066130 */ _t528 = _t527 & 0x00000001u;
|
|
/* 02066130 */ if (_t528) goto L_02066134; else goto L_02066118;
|
|
L_02066134: ; // 0x2066134
|
|
/* 02066134 */ goto L_0206613C;
|
|
L_02066138: ; // 0x2066138
|
|
/* 02066138 */ cpu->r[30] = 0x00000000u;
|
|
L_0206613C: ; // 0x206613c
|
|
/* 0206613C */ cpu->r[29] = cpu->r[29] - cpu->r[30];
|
|
/* 0206613C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02066140 */ cpu->r[24] = 0x00000000u;
|
|
/* 02066144 */ _t529 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02066144 */ _t530 = _t529 & 0x00000001u;
|
|
/* 02066144 */ if (_t530) goto L_02066208; else goto L_02066148;
|
|
L_02066148: ; // 0x2066148
|
|
/* 02066148 */ _t531 = cpu->r[27] + 0x00000000u;
|
|
/* 02066148 */ cpu->r[11] = rbrew_read32(cpu->mem, _t531);
|
|
/* 0206614C */ _t532 = cpu->r[1] + 0x00000044u;
|
|
/* 0206614C */ rbrew_write32(cpu->mem, _t532, cpu->r[26]);
|
|
/* 02066150 */ cpu->r[10] = cpu->r[11] + cpu->r[24];
|
|
/* 02066154 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 02066158 */ _t533 = cpu->r[1] + 0x00000040u;
|
|
/* 02066158 */ rbrew_write32(cpu->mem, _t533, cpu->r[10]);
|
|
/* 0206615C */ Gambit_fn_020669E4(cpu);
|
|
/* 02066160 */ _t534 = cpu->r[1] + 0x00000044u;
|
|
/* 02066160 */ cpu->r[12] = rbrew_read32(cpu->mem, _t534);
|
|
/* 02066164 */ _t535 = cpu->r[12] + 0x00000014u;
|
|
/* 02066164 */ cpu->r[0] = rbrew_read32(cpu->mem, _t535);
|
|
/* 02066168 */ cpu->ctr = cpu->r[0];
|
|
/* 0206616C */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 02066170 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066174 */ _t536 = cpu->r[1] + 0x00000084u;
|
|
/* 02066174 */ cpu->r[4] = rbrew_read32(cpu->mem, _t536);
|
|
/* 02066178 */ _t537 = cpu->r[4] + 0x00000014u;
|
|
/* 02066178 */ cpu->r[5] = rbrew_read32(cpu->mem, _t537);
|
|
/* 0206617C */ cpu->ctr = cpu->r[5];
|
|
/* 02066180 */ _t538 = cpu->r[1] + 0x00000040u;
|
|
/* 02066180 */ cpu->r[23] = rbrew_read32(cpu->mem, _t538);
|
|
/* 02066184 */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 02066188 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206618C */ _t539 = cpu->r[1] + 0x00000080u;
|
|
/* 0206618C */ cpu->r[6] = rbrew_read32(cpu->mem, _t539);
|
|
/* 02066190 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[6]);
|
|
/* 02066194 */ _t540 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066194 */ _t541 = _t540 & 0x00000001u;
|
|
/* 02066194 */ if (_t541) goto L_020661E8; else goto L_02066198;
|
|
L_02066198: ; // 0x2066198
|
|
/* 02066198 */ cpu->r[9] = cpu->r[30];
|
|
/* 02066198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0206619C */ _t542 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0206619C */ _t543 = _t542 & 0x00000001u;
|
|
/* 0206619C */ if (_t543) goto L_020661A0; else goto L_020661E8;
|
|
L_020661A0: ; // 0x20661a0
|
|
/* 020661A0 */ _t544 = cpu->r[1] + 0x00000080u;
|
|
/* 020661A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t544);
|
|
/* 020661A4 */ cpu->ctr = cpu->r[9];
|
|
/* 020661A8 */ _t545 = cpu->r[1] + 0x00000040u;
|
|
/* 020661A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t545);
|
|
L_020661AC: ; // 0x20661ac
|
|
/* 020661AC */ _t546 = cpu->r[11] + 0x00000000u;
|
|
/* 020661AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t546);
|
|
/* 020661B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 020661B4 */ _t547 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020661B4 */ _t548 = _t547 & 0x00000001u;
|
|
/* 020661B4 */ if (_t548) goto L_020661B8; else goto L_020661C8;
|
|
L_020661B8: ; // 0x20661b8
|
|
/* 020661B8 */ _t549 = cpu->r[10] + 0x00000000u;
|
|
/* 020661B8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t549);
|
|
/* 020661BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 020661C0 */ _t550 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020661C0 */ _t551 = _t550 & 0x00000001u;
|
|
/* 020661C0 */ if (_t551) goto L_020661E8; else goto L_020661C4;
|
|
L_020661C4: ; // 0x20661c4
|
|
/* 020661C4 */ goto L_020661FC;
|
|
L_020661C8: ; // 0x20661c8
|
|
/* 020661C8 */ _t552 = cpu->r[10] + 0x00000000u;
|
|
/* 020661C8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t552);
|
|
/* 020661CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 020661D0 */ _t553 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020661D0 */ _t554 = _t553 & 0x00000001u;
|
|
/* 020661D0 */ if (_t554) goto L_020661FC; else goto L_020661D4;
|
|
L_020661D4: ; // 0x20661d4
|
|
/* 020661D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 020661D8 */ _t555 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020661D8 */ _t556 = _t555 & 0x00000001u;
|
|
/* 020661D8 */ if (_t556) goto L_020661DC; else goto L_020661FC;
|
|
L_020661DC: ; // 0x20661dc
|
|
/* 020661DC */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 020661E0 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 020661E4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020661E4 */ _t557 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020661E4 */ _t558 = _t557 >> (0x00000002u & 31u);
|
|
/* 020661E4 */ _t559 = _t558 & 0x00000001u;
|
|
/* 020661E4 */ if (_t559) goto L_020661AC; else goto L_020661E8;
|
|
L_020661E8: ; // 0x20661e8
|
|
/* 020661E8 */ _t560 = cpu->r[24] | cpu->r[24];
|
|
/* 020661E8 */ cpu->r[8] = ~_t560;
|
|
/* 020661EC */ cpu->r[9] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 020661F0 */ cpu->r[0] = cpu->r[8] - cpu->r[9];
|
|
/* 020661F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020661F4 */ _t561 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020661F4 */ _t562 = _t561 & 0x00000001u;
|
|
/* 020661F4 */ if (_t562) goto L_0206622C; else goto L_020661F8;
|
|
L_020661F8: ; // 0x20661f8
|
|
/* 020661F8 */ goto L_02066218;
|
|
L_020661FC: ; // 0x20661fc
|
|
/* 020661FC */ cpu->r[24] = cpu->r[24] + 0x00000001u;
|
|
/* 02066200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[29]);
|
|
/* 02066204 */ _t563 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02066204 */ _t564 = _t563 & 0x00000001u;
|
|
/* 02066204 */ if (_t564) goto L_02066208; else goto L_02066148;
|
|
L_02066208: ; // 0x2066208
|
|
/* 02066208 */ cpu->r[8] = 0x00000000u;
|
|
/* 0206620C */ cpu->r[9] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 02066210 */ cpu->r[0] = ~cpu->r[9];
|
|
/* 02066210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02066214 */ _t565 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066214 */ _t566 = _t565 & 0x00000001u;
|
|
/* 02066214 */ if (_t566) goto L_0206622C; else goto L_02066218;
|
|
L_02066218: ; // 0x2066218
|
|
/* 02066218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0206621C */ _t567 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206621C */ _t568 = _t567 & 0x00000001u;
|
|
/* 0206621C */ if (_t568) goto L_0206622C; else goto L_02066220;
|
|
L_02066220: ; // 0x2066220
|
|
/* 02066220 */ cpu->r[4] = 0x10000000u;
|
|
/* 02066224 */ cpu->r[4] = cpu->r[4] + 0x000071D4u;
|
|
/* 02066228 */ _t569 = cpu->r[25] + 0x00000110u;
|
|
/* 02066228 */ rbrew_write32(cpu->mem, _t569, cpu->r[4]);
|
|
L_0206622C: ; // 0x206622c
|
|
/* 0206622C */ /* nop */
|
|
/* 02066230 */ _t570 = cpu->r[1] + 0x000000D4u;
|
|
/* 02066230 */ cpu->r[0] = rbrew_read32(cpu->mem, _t570);
|
|
/* 02066234 */ cpu->lr = cpu->r[0];
|
|
/* 02066238 */ cpu->r[1] = cpu->r[1] + 0x000000D0u;
|
|
/* 0206623C */ return;
|
|
}
|
|
|
|
// fn_02066240 @ 0x2066240
|
|
void Gambit_fn_02066240(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275;
|
|
|
|
L_02066240: ; // 0x2066240
|
|
/* 02066240 */ _t0 = cpu->r[1] + 0xFFFFFF30u;
|
|
/* 02066240 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02066240 */ cpu->r[1] = _t0;
|
|
/* 02066244 */ /* nop */
|
|
/* 02066248 */ _t1 = cpu->r[1] + 0x000000C0u;
|
|
/* 02066248 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0206624C */ _t2 = cpu->r[1] + 0x000000A0u;
|
|
/* 0206624C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 02066250 */ /* nop */
|
|
/* 02066254 */ _t3 = cpu->r[1] + 0x000000C8u;
|
|
/* 02066254 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02066258 */ /* nop */
|
|
/* 0206625C */ _t4 = cpu->r[1] + 0x000000A8u;
|
|
/* 0206625C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[29]);
|
|
/* 02066260 */ _t5 = cpu->r[1] + 0x000000B0u;
|
|
/* 02066260 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[30]);
|
|
/* 02066264 */ _t6 = cpu->r[1] + 0x00000090u;
|
|
/* 02066264 */ rbrew_write_f64(cpu->mem, _t6, cpu->f[28]);
|
|
/* 02066268 */ /* nop */
|
|
/* 0206626C */ _t7 = cpu->r[1] + 0x000000B8u;
|
|
/* 0206626C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]);
|
|
/* 02066270 */ /* nop */
|
|
/* 02066274 */ _t8 = cpu->r[1] + 0x00000098u;
|
|
/* 02066274 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[28]);
|
|
/* 02066278 */ cpu->r[0] = cpu->lr;
|
|
/* 0206627C */ _t9 = cpu->r[1] + 0x000000D4u;
|
|
/* 0206627C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02066280 */ cpu->r[27] = cpu->r[4];
|
|
/* 02066284 */ cpu->r[26] = cpu->r[3];
|
|
/* 02066288 */ _t10 = cpu->r[27] + 0x00000008u;
|
|
/* 02066288 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206628C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02066290 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066290 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02066290 */ if (_t12) goto L_02066998; else goto L_02066294;
|
|
L_02066294: ; // 0x2066294
|
|
/* 02066294 */ Gambit_fn_028BC334(cpu);
|
|
/* 02066298 */ cpu->r[20] = cpu->r[3];
|
|
/* 02066298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u);
|
|
/* 0206629C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206629C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0206629C */ if (_t14) goto L_02066998; else goto L_020662A0;
|
|
L_020662A0: ; // 0x20662a0
|
|
/* 020662A0 */ _t15 = cpu->r[27] + 0x00000004u;
|
|
/* 020662A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 020662A4 */ Gambit_fn_028B4C24(cpu);
|
|
/* 020662A8 */ _t16 = cpu->r[27] + 0x0000000Cu;
|
|
/* 020662A8 */ cpu->r[21] = rbrew_read32(cpu->mem, _t16);
|
|
/* 020662AC */ cpu->r[4] = cpu->r[21];
|
|
/* 020662B0 */ Gambit_fn_028B32E0(cpu);
|
|
/* 020662B4 */ cpu->r[12] = 0x10000000u;
|
|
/* 020662B8 */ cpu->r[11] = 0x10000000u;
|
|
/* 020662BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020662C0 */ _t17 = cpu->r[12] + 0x000071F0u;
|
|
/* 020662C0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 020662C4 */ cpu->r[24] = 0x101C0000u;
|
|
/* 020662C8 */ _t18 = cpu->r[11] + 0x000071F4u;
|
|
/* 020662C8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 020662CC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020662CC */ _t20 = _t19 & 0x00000001u;
|
|
/* 020662CC */ if (_t20) goto L_020662D0; else goto L_0206632C;
|
|
L_020662D0: ; // 0x20662d0
|
|
/* 020662D0 */ _t21 = cpu->r[27] + 0x00000004u;
|
|
/* 020662D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t21);
|
|
/* 020662D4 */ _t22 = cpu->r[6] + 0x00000028u;
|
|
/* 020662D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 020662D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 020662DC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020662DC */ _t24 = _t23 & 0x00000001u;
|
|
/* 020662DC */ if (_t24) goto L_02066998; else goto L_020662E0;
|
|
L_020662E0: ; // 0x20662e0
|
|
/* 020662E0 */ _t25 = cpu->r[24] + 0x00004D34u;
|
|
/* 020662E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 020662E4 */ _t26 = cpu->r[8] + 0x0000000Cu;
|
|
/* 020662E4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 020662E8 */ _t27 = cpu->r[9] + 0x00000024u;
|
|
/* 020662E8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 020662EC */ cpu->f[1] = cpu->f[12] / cpu->f[0];
|
|
/* 020662F0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]);
|
|
/* 020662F4 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020662F4 */ _t29 = _t28 & 0x00000001u;
|
|
/* 020662F4 */ if (_t29) goto L_020662F8; else goto L_02066310;
|
|
L_020662F8: ; // 0x20662f8
|
|
/* 020662F8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 020662FC */ cpu->f[1] = cpu->f[31];
|
|
/* 02066300 */ _t30 = cpu->r[3] + 0x00004D94u;
|
|
/* 02066300 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02066304 */ cpu->r[4] = cpu->r[20];
|
|
/* 02066308 */ Gambit_fn_021B66C4(cpu);
|
|
/* 0206630C */ goto L_0206632C;
|
|
L_02066310: ; // 0x2066310
|
|
/* 02066310 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[30]);
|
|
/* 02066314 */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02066314 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02066314 */ if (_t32) goto L_02066318; else goto L_0206631C;
|
|
L_02066318: ; // 0x2066318
|
|
/* 02066318 */ cpu->f[1] = cpu->f[30];
|
|
L_0206631C: ; // 0x206631c
|
|
/* 0206631C */ cpu->r[3] = 0x101C0000u;
|
|
/* 02066320 */ _t33 = cpu->r[3] + 0x00004D94u;
|
|
/* 02066320 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02066324 */ cpu->r[4] = cpu->r[20];
|
|
/* 02066328 */ Gambit_fn_021B66C4(cpu);
|
|
L_0206632C: ; // 0x206632c
|
|
/* 0206632C */ _t34 = cpu->r[24] + 0x00004D34u;
|
|
/* 0206632C */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02066330 */ _t35 = cpu->r[12] + 0x0000003Eu;
|
|
/* 02066330 */ cpu->r[4] = rbrew_read8(cpu->mem, _t35);
|
|
/* 02066334 */ cpu->r[22] = 0x10000000u;
|
|
/* 02066338 */ cpu->r[23] = 0x00000000u;
|
|
/* 0206633C */ cpu->r[25] = 0x10110000u;
|
|
/* 02066340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02066344 */ cpu->r[22] = cpu->r[22] + 0x000070A8u;
|
|
/* 02066348 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066348 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02066348 */ if (_t37) goto L_020667C8; else goto L_0206634C;
|
|
L_0206634C: ; // 0x206634c
|
|
/* 0206634C */ _t38 = cpu->r[27] + 0x00000004u;
|
|
/* 0206634C */ cpu->r[3] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02066350 */ Gambit_fn_028AC54C(cpu);
|
|
/* 02066354 */ _t39 = cpu->r[26] + 0x00000004u;
|
|
/* 02066354 */ cpu->r[7] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02066358 */ _t40 = cpu->r[1] + 0x00000030u;
|
|
/* 02066358 */ rbrew_write32(cpu->mem, _t40, cpu->r[22]);
|
|
/* 0206635C */ _t41 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206635C */ rbrew_write32(cpu->mem, _t41, cpu->r[3]);
|
|
/* 02066360 */ _t42 = cpu->r[7] + 0x00000030u;
|
|
/* 02066360 */ cpu->r[5] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02066364 */ _t43 = cpu->r[5] + 0x0000001Cu;
|
|
/* 02066364 */ cpu->r[6] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02066368 */ _t44 = cpu->r[6] + 0x0000000Cu;
|
|
/* 02066368 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44);
|
|
/* 0206636C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02066370 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066370 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02066370 */ if (_t46) goto L_020663E0; else goto L_02066374;
|
|
L_02066374: ; // 0x2066374
|
|
/* 02066374 */ _t47 = cpu->r[7] + 0x00000024u;
|
|
/* 02066374 */ cpu->r[7] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02066378 */ _t48 = cpu->r[7] + 0x00000030u;
|
|
/* 02066378 */ cpu->r[11] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0206637C */ _t49 = cpu->r[11] + 0x0000001Cu;
|
|
/* 0206637C */ cpu->r[9] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02066380 */ _t50 = cpu->r[9] + 0x0000000Cu;
|
|
/* 02066380 */ cpu->r[5] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02066384 */ cpu->r[6] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 02066388 */ cpu->r[4] = cpu->r[5] - cpu->r[6];
|
|
/* 02066388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0206638C */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206638C */ _t52 = _t51 & 0x00000001u;
|
|
/* 0206638C */ if (_t52) goto L_020663B8; else goto L_02066390;
|
|
L_02066390: ; // 0x2066390
|
|
/* 02066390 */ _t53 = cpu->r[7] + 0x00000024u;
|
|
/* 02066390 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02066394 */ Gambit_fn_020669F4(cpu);
|
|
/* 02066398 */ _t54 = cpu->r[26] + 0x00000004u;
|
|
/* 02066398 */ cpu->r[7] = rbrew_read32(cpu->mem, _t54);
|
|
/* 0206639C */ _t55 = cpu->r[7] + 0x00000030u;
|
|
/* 0206639C */ cpu->r[9] = rbrew_read32(cpu->mem, _t55);
|
|
/* 020663A0 */ _t56 = cpu->r[9] + 0x0000001Cu;
|
|
/* 020663A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 020663A4 */ _t57 = cpu->r[12] + 0x0000000Cu;
|
|
/* 020663A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 020663A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020663AC */ cpu->r[19] = cpu->r[3];
|
|
/* 020663B0 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020663B0 */ _t59 = _t58 & 0x00000001u;
|
|
/* 020663B0 */ if (_t59) goto L_020664C0; else goto L_020663B4;
|
|
L_020663B4: ; // 0x20663b4
|
|
/* 020663B4 */ goto L_02066404;
|
|
L_020663B8: ; // 0x20663b8
|
|
/* 020663B8 */ cpu->r[3] = cpu->r[7] + 0x00000110u;
|
|
/* 020663BC */ Gambit_fn_026D8B90(cpu);
|
|
/* 020663C0 */ _t60 = cpu->r[26] + 0x00000004u;
|
|
/* 020663C0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t60);
|
|
/* 020663C4 */ _t61 = cpu->r[7] + 0x00000030u;
|
|
/* 020663C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t61);
|
|
/* 020663C8 */ _t62 = cpu->r[9] + 0x0000001Cu;
|
|
/* 020663C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t62);
|
|
/* 020663CC */ _t63 = cpu->r[12] + 0x0000000Cu;
|
|
/* 020663CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t63);
|
|
/* 020663D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020663D4 */ cpu->r[19] = cpu->r[3];
|
|
/* 020663D8 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020663D8 */ _t65 = _t64 & 0x00000001u;
|
|
/* 020663D8 */ if (_t65) goto L_020664C0; else goto L_020663DC;
|
|
L_020663DC: ; // 0x20663dc
|
|
/* 020663DC */ goto L_02066404;
|
|
L_020663E0: ; // 0x20663e0
|
|
/* 020663E0 */ cpu->r[3] = cpu->r[7] + 0x00000110u;
|
|
/* 020663E4 */ Gambit_fn_026D8B90(cpu);
|
|
/* 020663E8 */ _t66 = cpu->r[26] + 0x00000004u;
|
|
/* 020663E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t66);
|
|
/* 020663EC */ _t67 = cpu->r[7] + 0x00000030u;
|
|
/* 020663EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t67);
|
|
/* 020663F0 */ _t68 = cpu->r[9] + 0x0000001Cu;
|
|
/* 020663F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t68);
|
|
/* 020663F4 */ _t69 = cpu->r[12] + 0x0000000Cu;
|
|
/* 020663F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t69);
|
|
/* 020663F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020663FC */ cpu->r[19] = cpu->r[3];
|
|
/* 02066400 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066400 */ _t71 = _t70 & 0x00000001u;
|
|
/* 02066400 */ if (_t71) goto L_020664C0; else goto L_02066404;
|
|
L_02066404: ; // 0x2066404
|
|
/* 02066404 */ _t72 = cpu->r[7] + 0x00000024u;
|
|
/* 02066404 */ cpu->r[4] = rbrew_read32(cpu->mem, _t72);
|
|
/* 02066408 */ _t73 = cpu->r[4] + 0x00000030u;
|
|
/* 02066408 */ cpu->r[12] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0206640C */ _t74 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0206640C */ cpu->r[5] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02066410 */ _t75 = cpu->r[5] + 0x0000000Cu;
|
|
/* 02066410 */ cpu->r[10] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02066414 */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu;
|
|
/* 02066418 */ cpu->r[6] = cpu->r[10] - cpu->r[0];
|
|
/* 02066418 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0206641C */ _t76 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206641C */ _t77 = _t76 & 0x00000001u;
|
|
/* 0206641C */ if (_t77) goto L_02066470; else goto L_02066420;
|
|
L_02066420: ; // 0x2066420
|
|
/* 02066420 */ _t78 = cpu->r[4] + 0x00000024u;
|
|
/* 02066420 */ cpu->r[3] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02066424 */ Gambit_fn_02066A38(cpu);
|
|
/* 02066428 */ cpu->r[4] = 0x10000000u;
|
|
/* 0206642C */ _t79 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206642C */ rbrew_write32(cpu->mem, _t79, cpu->r[22]);
|
|
/* 02066430 */ cpu->r[4] = cpu->r[4] + 0x00007218u;
|
|
/* 02066434 */ _t80 = cpu->r[1] + 0x00000030u;
|
|
/* 02066434 */ cpu->r[7] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02066438 */ _t81 = cpu->r[1] + 0x00000018u;
|
|
/* 02066438 */ rbrew_write32(cpu->mem, _t81, cpu->r[4]);
|
|
/* 0206643C */ _t82 = cpu->r[7] + 0x00000014u;
|
|
/* 0206643C */ cpu->r[8] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02066440 */ cpu->r[28] = cpu->r[3];
|
|
/* 02066444 */ cpu->ctr = cpu->r[8];
|
|
/* 02066448 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206644C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066450 */ _t83 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02066450 */ cpu->r[7] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02066454 */ _t84 = cpu->r[25] + 0x00007399u;
|
|
/* 02066454 */ cpu->r[30] = rbrew_read8(cpu->mem, _t84);
|
|
/* 02066458 */ _t85 = cpu->r[7] + 0x00000000u;
|
|
/* 02066458 */ cpu->r[0] = rbrew_read8(cpu->mem, _t85);
|
|
/* 0206645C */ cpu->r[29] = 0x00000000u;
|
|
/* 02066460 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02066464 */ cpu->r[0] = 0x00080000u;
|
|
/* 02066468 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066468 */ _t87 = _t86 & 0x00000001u;
|
|
/* 02066468 */ if (_t87) goto L_0206646C; else goto L_0206650C;
|
|
L_0206646C: ; // 0x206646c
|
|
/* 0206646C */ goto L_02066530;
|
|
L_02066470: ; // 0x2066470
|
|
/* 02066470 */ cpu->r[3] = cpu->r[4] + 0x00000110u;
|
|
/* 02066474 */ Gambit_fn_026D8AF0(cpu);
|
|
/* 02066478 */ cpu->r[4] = 0x10000000u;
|
|
/* 0206647C */ _t88 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206647C */ rbrew_write32(cpu->mem, _t88, cpu->r[22]);
|
|
/* 02066480 */ cpu->r[4] = cpu->r[4] + 0x00007218u;
|
|
/* 02066484 */ _t89 = cpu->r[1] + 0x00000030u;
|
|
/* 02066484 */ cpu->r[7] = rbrew_read32(cpu->mem, _t89);
|
|
/* 02066488 */ _t90 = cpu->r[1] + 0x00000018u;
|
|
/* 02066488 */ rbrew_write32(cpu->mem, _t90, cpu->r[4]);
|
|
/* 0206648C */ _t91 = cpu->r[7] + 0x00000014u;
|
|
/* 0206648C */ cpu->r[8] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02066490 */ cpu->r[28] = cpu->r[3];
|
|
/* 02066494 */ cpu->ctr = cpu->r[8];
|
|
/* 02066498 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206649C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020664A0 */ _t92 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020664A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t92);
|
|
/* 020664A4 */ _t93 = cpu->r[25] + 0x00007399u;
|
|
/* 020664A4 */ cpu->r[30] = rbrew_read8(cpu->mem, _t93);
|
|
/* 020664A8 */ _t94 = cpu->r[7] + 0x00000000u;
|
|
/* 020664A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t94);
|
|
/* 020664AC */ cpu->r[29] = 0x00000000u;
|
|
/* 020664B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 020664B4 */ cpu->r[0] = 0x00080000u;
|
|
/* 020664B8 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020664B8 */ _t96 = _t95 & 0x00000001u;
|
|
/* 020664B8 */ if (_t96) goto L_02066530; else goto L_020664BC;
|
|
L_020664BC: ; // 0x20664bc
|
|
/* 020664BC */ goto L_0206650C;
|
|
L_020664C0: ; // 0x20664c0
|
|
/* 020664C0 */ cpu->r[3] = cpu->r[7] + 0x00000110u;
|
|
/* 020664C4 */ Gambit_fn_026D8AF0(cpu);
|
|
/* 020664C8 */ cpu->r[4] = 0x10000000u;
|
|
/* 020664CC */ _t97 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020664CC */ rbrew_write32(cpu->mem, _t97, cpu->r[22]);
|
|
/* 020664D0 */ cpu->r[4] = cpu->r[4] + 0x00007218u;
|
|
/* 020664D4 */ _t98 = cpu->r[1] + 0x00000030u;
|
|
/* 020664D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t98);
|
|
/* 020664D8 */ _t99 = cpu->r[1] + 0x00000018u;
|
|
/* 020664D8 */ rbrew_write32(cpu->mem, _t99, cpu->r[4]);
|
|
/* 020664DC */ _t100 = cpu->r[7] + 0x00000014u;
|
|
/* 020664DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t100);
|
|
/* 020664E0 */ cpu->r[28] = cpu->r[3];
|
|
/* 020664E4 */ cpu->ctr = cpu->r[8];
|
|
/* 020664E8 */ cpu->r[3] = cpu->r[1] + 0x0000002Cu;
|
|
/* 020664EC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020664F0 */ _t101 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020664F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t101);
|
|
/* 020664F4 */ _t102 = cpu->r[25] + 0x00007399u;
|
|
/* 020664F4 */ cpu->r[30] = rbrew_read8(cpu->mem, _t102);
|
|
/* 020664F8 */ _t103 = cpu->r[7] + 0x00000000u;
|
|
/* 020664F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t103);
|
|
/* 020664FC */ cpu->r[29] = 0x00000000u;
|
|
/* 02066500 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02066504 */ cpu->r[0] = 0x00080000u;
|
|
/* 02066508 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066508 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02066508 */ if (_t105) goto L_02066530; else goto L_0206650C;
|
|
L_0206650C: ; // 0x206650c
|
|
/* 0206650C */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02066510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]);
|
|
/* 02066514 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02066518 */ _t106 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02066518 */ _t107 = _t106 & 0x00000001u;
|
|
/* 02066518 */ if (_t107) goto L_0206652C; else goto L_0206651C;
|
|
L_0206651C: ; // 0x206651c
|
|
/* 0206651C */ _t108 = cpu->r[7] + 0x00000000u;
|
|
/* 0206651C */ cpu->r[10] = rbrew_read8(cpu->mem, _t108);
|
|
/* 02066520 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 02066524 */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066524 */ _t110 = _t109 & 0x00000001u;
|
|
/* 02066524 */ if (_t110) goto L_02066528; else goto L_0206650C;
|
|
L_02066528: ; // 0x2066528
|
|
/* 02066528 */ goto L_02066530;
|
|
L_0206652C: ; // 0x206652c
|
|
/* 0206652C */ cpu->r[29] = 0x00000000u;
|
|
L_02066530: ; // 0x2066530
|
|
/* 02066530 */ _t111 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02066530 */ cpu->r[12] = rbrew_read32(cpu->mem, _t111);
|
|
/* 02066534 */ _t112 = cpu->r[12] + 0x00000014u;
|
|
/* 02066534 */ cpu->r[5] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02066538 */ cpu->ctr = cpu->r[5];
|
|
/* 0206653C */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02066540 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066544 */ _t113 = cpu->r[1] + 0x00000018u;
|
|
/* 02066544 */ cpu->r[11] = rbrew_read32(cpu->mem, _t113);
|
|
/* 02066548 */ _t114 = cpu->r[11] + 0x00000000u;
|
|
/* 02066548 */ cpu->r[6] = rbrew_read8(cpu->mem, _t114);
|
|
/* 0206654C */ cpu->r[31] = 0x00000000u;
|
|
/* 02066550 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 02066554 */ cpu->r[4] = 0x00080000u;
|
|
/* 02066558 */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066558 */ _t116 = _t115 & 0x00000001u;
|
|
/* 02066558 */ if (_t116) goto L_02066580; else goto L_0206655C;
|
|
L_0206655C: ; // 0x206655c
|
|
/* 0206655C */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 02066560 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]);
|
|
/* 02066564 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02066568 */ _t117 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02066568 */ _t118 = _t117 & 0x00000001u;
|
|
/* 02066568 */ if (_t118) goto L_0206657C; else goto L_0206656C;
|
|
L_0206656C: ; // 0x206656c
|
|
/* 0206656C */ _t119 = cpu->r[11] + 0x00000000u;
|
|
/* 0206656C */ cpu->r[8] = rbrew_read8(cpu->mem, _t119);
|
|
/* 02066570 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 02066574 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066574 */ _t121 = _t120 & 0x00000001u;
|
|
/* 02066574 */ if (_t121) goto L_02066578; else goto L_0206655C;
|
|
L_02066578: ; // 0x2066578
|
|
/* 02066578 */ goto L_02066580;
|
|
L_0206657C: ; // 0x206657c
|
|
/* 0206657C */ cpu->r[31] = 0x00000000u;
|
|
L_02066580: ; // 0x2066580
|
|
/* 02066580 */ cpu->r[29] = cpu->r[29] - cpu->r[31];
|
|
/* 02066580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02066584 */ cpu->r[18] = 0x00000000u;
|
|
/* 02066588 */ _t122 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02066588 */ _t123 = _t122 & 0x00000001u;
|
|
/* 02066588 */ if (_t123) goto L_02066658; else goto L_0206658C;
|
|
L_0206658C: ; // 0x206658c
|
|
/* 0206658C */ _t124 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206658C */ cpu->r[11] = rbrew_read32(cpu->mem, _t124);
|
|
/* 02066590 */ cpu->r[17] = cpu->r[31];
|
|
/* 02066594 */ _t125 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066594 */ rbrew_write32(cpu->mem, _t125, cpu->r[22]);
|
|
/* 02066598 */ cpu->r[9] = cpu->r[11] + cpu->r[18];
|
|
/* 0206659C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020665A0 */ _t126 = cpu->r[1] + 0x00000008u;
|
|
/* 020665A0 */ rbrew_write32(cpu->mem, _t126, cpu->r[9]);
|
|
/* 020665A4 */ Gambit_fn_020669E4(cpu);
|
|
/* 020665A8 */ _t127 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020665A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t127);
|
|
/* 020665AC */ _t128 = cpu->r[12] + 0x00000014u;
|
|
/* 020665AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t128);
|
|
/* 020665B0 */ cpu->ctr = cpu->r[0];
|
|
/* 020665B4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020665B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020665BC */ _t129 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020665BC */ cpu->r[5] = rbrew_read32(cpu->mem, _t129);
|
|
/* 020665C0 */ _t130 = cpu->r[5] + 0x00000014u;
|
|
/* 020665C0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t130);
|
|
/* 020665C4 */ cpu->ctr = cpu->r[7];
|
|
/* 020665C8 */ _t131 = cpu->r[1] + 0x00000008u;
|
|
/* 020665C8 */ cpu->r[16] = rbrew_read32(cpu->mem, _t131);
|
|
/* 020665CC */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 020665D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020665D4 */ _t132 = cpu->r[1] + 0x00000018u;
|
|
/* 020665D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t132);
|
|
/* 020665D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[16], cpu->r[9]);
|
|
/* 020665DC */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020665DC */ _t134 = _t133 & 0x00000001u;
|
|
/* 020665DC */ if (_t134) goto L_02066630; else goto L_020665E0;
|
|
L_020665E0: ; // 0x20665e0
|
|
/* 020665E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u);
|
|
/* 020665E4 */ _t135 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020665E4 */ _t136 = _t135 & 0x00000001u;
|
|
/* 020665E4 */ if (_t136) goto L_020665E8; else goto L_02066630;
|
|
L_020665E8: ; // 0x20665e8
|
|
/* 020665E8 */ _t137 = cpu->r[1] + 0x00000018u;
|
|
/* 020665E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t137);
|
|
/* 020665EC */ cpu->ctr = cpu->r[17];
|
|
/* 020665F0 */ _t138 = cpu->r[1] + 0x00000008u;
|
|
/* 020665F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t138);
|
|
L_020665F4: ; // 0x20665f4
|
|
/* 020665F4 */ _t139 = cpu->r[5] + 0x00000000u;
|
|
/* 020665F4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t139);
|
|
/* 020665F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]);
|
|
/* 020665FC */ _t140 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020665FC */ _t141 = _t140 & 0x00000001u;
|
|
/* 020665FC */ if (_t141) goto L_02066600; else goto L_02066610;
|
|
L_02066600: ; // 0x2066600
|
|
/* 02066600 */ _t142 = cpu->r[12] + 0x00000000u;
|
|
/* 02066600 */ cpu->r[0] = rbrew_read8(cpu->mem, _t142);
|
|
/* 02066604 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02066608 */ _t143 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066608 */ _t144 = _t143 & 0x00000001u;
|
|
/* 02066608 */ if (_t144) goto L_02066630; else goto L_0206660C;
|
|
L_0206660C: ; // 0x206660c
|
|
/* 0206660C */ goto L_0206664C;
|
|
L_02066610: ; // 0x2066610
|
|
/* 02066610 */ _t145 = cpu->r[12] + 0x00000000u;
|
|
/* 02066610 */ cpu->r[4] = rbrew_read8(cpu->mem, _t145);
|
|
/* 02066614 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[30]);
|
|
/* 02066618 */ _t146 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066618 */ _t147 = _t146 & 0x00000001u;
|
|
/* 02066618 */ if (_t147) goto L_0206664C; else goto L_0206661C;
|
|
L_0206661C: ; // 0x206661c
|
|
/* 0206661C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[6]);
|
|
/* 02066620 */ _t148 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066620 */ _t149 = _t148 & 0x00000001u;
|
|
/* 02066620 */ if (_t149) goto L_02066624; else goto L_0206664C;
|
|
L_02066624: ; // 0x2066624
|
|
/* 02066624 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02066628 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0206662C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0206662C */ _t150 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0206662C */ _t151 = _t150 >> (0x00000002u & 31u);
|
|
/* 0206662C */ _t152 = _t151 & 0x00000001u;
|
|
/* 0206662C */ if (_t152) goto L_020665F4; else goto L_02066630;
|
|
L_02066630: ; // 0x2066630
|
|
/* 02066630 */ _t153 = cpu->r[18] | cpu->r[18];
|
|
/* 02066630 */ cpu->r[4] = ~_t153;
|
|
/* 02066634 */ cpu->r[5] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 02066638 */ cpu->r[10] = 0x10000000u;
|
|
/* 0206663C */ cpu->r[7] = cpu->r[4] - cpu->r[5];
|
|
/* 0206663C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02066640 */ _t154 = cpu->r[10] + 0x000071F8u;
|
|
/* 02066640 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t154);
|
|
/* 02066644 */ _t155 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066644 */ _t156 = _t155 & 0x00000001u;
|
|
/* 02066644 */ if (_t156) goto L_020666B8; else goto L_02066648;
|
|
L_02066648: ; // 0x2066648
|
|
/* 02066648 */ goto L_02066670;
|
|
L_0206664C: ; // 0x206664c
|
|
/* 0206664C */ cpu->r[18] = cpu->r[18] + 0x00000001u;
|
|
/* 02066650 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], cpu->r[29]);
|
|
/* 02066654 */ _t157 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02066654 */ _t158 = _t157 & 0x00000001u;
|
|
/* 02066654 */ if (_t158) goto L_02066658; else goto L_0206658C;
|
|
L_02066658: ; // 0x2066658
|
|
/* 02066658 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206665C */ cpu->r[5] = cpu->r[4] + 0xFFFFFFFFu;
|
|
/* 02066660 */ cpu->r[10] = 0x10000000u;
|
|
/* 02066664 */ cpu->r[7] = ~cpu->r[5];
|
|
/* 02066664 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02066668 */ _t159 = cpu->r[10] + 0x000071F8u;
|
|
/* 02066668 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t159);
|
|
/* 0206666C */ _t160 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206666C */ _t161 = _t160 & 0x00000001u;
|
|
/* 0206666C */ if (_t161) goto L_020666B8; else goto L_02066670;
|
|
L_02066670: ; // 0x2066670
|
|
/* 02066670 */ cpu->f[1] = cpu->f[30];
|
|
/* 02066674 */ cpu->r[31] = cpu->r[20] + 0x00000078u;
|
|
/* 02066678 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 0206667C */ cpu->r[3] = cpu->r[31];
|
|
/* 02066680 */ _t162 = cpu->r[1] + 0x00000028u;
|
|
/* 02066680 */ rbrew_write32(cpu->mem, _t162, cpu->r[23]);
|
|
/* 02066684 */ Gambit_fn_028BD348(cpu);
|
|
/* 02066688 */ cpu->f[1] = cpu->f[30];
|
|
/* 0206668C */ cpu->r[8] = 0x00000001u;
|
|
/* 02066690 */ cpu->r[3] = cpu->r[31];
|
|
/* 02066694 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02066698 */ _t163 = cpu->r[1] + 0x00000028u;
|
|
/* 02066698 */ rbrew_write32(cpu->mem, _t163, cpu->r[8]);
|
|
/* 0206669C */ Gambit_fn_028BD348(cpu);
|
|
/* 020666A0 */ _t164 = cpu->r[1] + 0x00000028u;
|
|
/* 020666A0 */ rbrew_write32(cpu->mem, _t164, cpu->r[23]);
|
|
/* 020666A4 */ _t165 = cpu->r[20] + 0x00000030u;
|
|
/* 020666A4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t165);
|
|
/* 020666A8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[29]);
|
|
/* 020666AC */ cpu->r[31] = cpu->r[20] + 0x0000002Cu;
|
|
/* 020666B0 */ _t166 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020666B0 */ _t167 = _t166 & 0x00000001u;
|
|
/* 020666B0 */ if (_t167) goto L_02066774; else goto L_020666B4;
|
|
L_020666B4: ; // 0x20666b4
|
|
/* 020666B4 */ goto L_02066760;
|
|
L_020666B8: ; // 0x20666b8
|
|
/* 020666B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 020666BC */ _t168 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020666BC */ _t169 = _t168 & 0x00000001u;
|
|
/* 020666BC */ if (_t169) goto L_020666D0; else goto L_020666C0;
|
|
L_020666C0: ; // 0x20666c0
|
|
/* 020666C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 020666C4 */ cpu->f[1] = cpu->f[30];
|
|
/* 020666C8 */ _t170 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020666C8 */ _t171 = _t170 & 0x00000001u;
|
|
/* 020666C8 */ if (_t171) goto L_02066720; else goto L_020666CC;
|
|
L_020666CC: ; // 0x20666cc
|
|
/* 020666CC */ goto L_020666DC;
|
|
L_020666D0: ; // 0x20666d0
|
|
/* 020666D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 020666D4 */ cpu->f[1] = cpu->f[29];
|
|
/* 020666D8 */ _t172 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020666D8 */ _t173 = _t172 & 0x00000001u;
|
|
/* 020666D8 */ if (_t173) goto L_02066720; else goto L_020666DC;
|
|
L_020666DC: ; // 0x20666dc
|
|
/* 020666DC */ cpu->r[31] = cpu->r[20] + 0x00000078u;
|
|
/* 020666E0 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 020666E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 020666E8 */ _t174 = cpu->r[1] + 0x00000028u;
|
|
/* 020666E8 */ rbrew_write32(cpu->mem, _t174, cpu->r[23]);
|
|
/* 020666EC */ Gambit_fn_028BD348(cpu);
|
|
/* 020666F0 */ cpu->f[1] = cpu->f[30];
|
|
/* 020666F4 */ cpu->r[8] = 0x00000001u;
|
|
/* 020666F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020666FC */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02066700 */ _t175 = cpu->r[1] + 0x00000028u;
|
|
/* 02066700 */ rbrew_write32(cpu->mem, _t175, cpu->r[8]);
|
|
/* 02066704 */ Gambit_fn_028BD348(cpu);
|
|
/* 02066708 */ _t176 = cpu->r[1] + 0x00000028u;
|
|
/* 02066708 */ rbrew_write32(cpu->mem, _t176, cpu->r[23]);
|
|
/* 0206670C */ _t177 = cpu->r[20] + 0x00000030u;
|
|
/* 0206670C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t177);
|
|
/* 02066710 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[29]);
|
|
/* 02066714 */ cpu->r[31] = cpu->r[20] + 0x0000002Cu;
|
|
/* 02066718 */ _t178 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02066718 */ _t179 = _t178 & 0x00000001u;
|
|
/* 02066718 */ if (_t179) goto L_02066774; else goto L_0206671C;
|
|
L_0206671C: ; // 0x206671c
|
|
/* 0206671C */ goto L_02066760;
|
|
L_02066720: ; // 0x2066720
|
|
/* 02066720 */ cpu->r[31] = cpu->r[20] + 0x00000078u;
|
|
/* 02066724 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02066728 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206672C */ _t180 = cpu->r[1] + 0x00000028u;
|
|
/* 0206672C */ rbrew_write32(cpu->mem, _t180, cpu->r[23]);
|
|
/* 02066730 */ Gambit_fn_028BD348(cpu);
|
|
/* 02066734 */ cpu->f[1] = cpu->f[29];
|
|
/* 02066738 */ cpu->r[8] = 0x00000001u;
|
|
/* 0206673C */ cpu->r[3] = cpu->r[31];
|
|
/* 02066740 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02066744 */ _t181 = cpu->r[1] + 0x00000028u;
|
|
/* 02066744 */ rbrew_write32(cpu->mem, _t181, cpu->r[8]);
|
|
/* 02066748 */ Gambit_fn_028BD348(cpu);
|
|
/* 0206674C */ _t182 = cpu->r[1] + 0x00000028u;
|
|
/* 0206674C */ rbrew_write32(cpu->mem, _t182, cpu->r[23]);
|
|
/* 02066750 */ _t183 = cpu->r[20] + 0x00000030u;
|
|
/* 02066750 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t183);
|
|
/* 02066754 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[29]);
|
|
/* 02066758 */ cpu->r[31] = cpu->r[20] + 0x0000002Cu;
|
|
/* 0206675C */ _t184 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206675C */ _t185 = _t184 & 0x00000001u;
|
|
/* 0206675C */ if (_t185) goto L_02066774; else goto L_02066760;
|
|
L_02066760: ; // 0x2066760
|
|
/* 02066760 */ cpu->f[1] = cpu->f[31];
|
|
/* 02066764 */ _t186 = cpu->r[1] + 0x00000040u;
|
|
/* 02066764 */ rbrew_write32(cpu->mem, _t186, cpu->r[23]);
|
|
/* 02066768 */ cpu->r[4] = cpu->r[1] + 0x00000040u;
|
|
/* 0206676C */ cpu->r[3] = cpu->r[31];
|
|
/* 02066770 */ Gambit_fn_028BD348(cpu);
|
|
L_02066774: ; // 0x2066774
|
|
/* 02066774 */ cpu->r[10] = 0x00000001u;
|
|
/* 02066778 */ _t187 = cpu->r[1] + 0x00000028u;
|
|
/* 02066778 */ rbrew_write32(cpu->mem, _t187, cpu->r[10]);
|
|
/* 0206677C */ _t188 = cpu->r[31] + 0x00000008u;
|
|
/* 0206677C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t188);
|
|
/* 02066780 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[29]);
|
|
/* 02066784 */ _t189 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02066784 */ _t190 = _t189 & 0x00000001u;
|
|
/* 02066784 */ if (_t190) goto L_020667A0; else goto L_02066788;
|
|
L_02066788: ; // 0x2066788
|
|
/* 02066788 */ cpu->f[1] = cpu->f[31];
|
|
/* 0206678C */ cpu->r[0] = 0x00000001u;
|
|
/* 02066790 */ cpu->r[3] = cpu->r[31];
|
|
/* 02066794 */ cpu->r[4] = cpu->r[1] + 0x00000044u;
|
|
/* 02066798 */ _t191 = cpu->r[1] + 0x00000044u;
|
|
/* 02066798 */ rbrew_write32(cpu->mem, _t191, cpu->r[0]);
|
|
/* 0206679C */ Gambit_fn_028BD348(cpu);
|
|
L_020667A0: ; // 0x20667a0
|
|
/* 020667A0 */ _t192 = cpu->r[21] + 0x00000000u;
|
|
/* 020667A0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t192);
|
|
/* 020667A4 */ cpu->r[3] = cpu->r[26];
|
|
/* 020667A8 */ cpu->r[6] = cpu->r[19];
|
|
/* 020667AC */ cpu->r[7] = cpu->r[28];
|
|
/* 020667B0 */ _t193 = cpu->r[1] + 0x00000048u;
|
|
/* 020667B0 */ rbrew_write32(cpu->mem, _t193, cpu->r[5]);
|
|
/* 020667B4 */ cpu->r[5] = cpu->r[1] + 0x00000048u;
|
|
/* 020667B8 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 020667BC */ _t194 = cpu->r[1] + 0x0000004Cu;
|
|
/* 020667BC */ rbrew_write32(cpu->mem, _t194, cpu->r[22]);
|
|
/* 020667C0 */ Gambit_fn_02065388(cpu);
|
|
/* 020667C4 */ _t195 = cpu->r[24] + 0x00004D34u;
|
|
/* 020667C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t195);
|
|
L_020667C8: ; // 0x20667c8
|
|
/* 020667C8 */ _t196 = cpu->r[12] + 0x0000003Fu;
|
|
/* 020667C8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t196);
|
|
/* 020667CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 020667D0 */ _t197 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020667D0 */ _t198 = _t197 & 0x00000001u;
|
|
/* 020667D0 */ if (_t198) goto L_02066998; else goto L_020667D4;
|
|
L_020667D4: ; // 0x20667d4
|
|
/* 020667D4 */ _t199 = cpu->r[27] + 0x00000004u;
|
|
/* 020667D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t199);
|
|
/* 020667D8 */ Gambit_fn_028AC54C(cpu);
|
|
/* 020667DC */ _t200 = cpu->r[1] + 0x00000038u;
|
|
/* 020667DC */ rbrew_write32(cpu->mem, _t200, cpu->r[22]);
|
|
/* 020667E0 */ cpu->r[7] = 0x10000000u;
|
|
/* 020667E4 */ _t201 = cpu->r[1] + 0x00000034u;
|
|
/* 020667E4 */ rbrew_write32(cpu->mem, _t201, cpu->r[3]);
|
|
/* 020667E8 */ cpu->r[7] = cpu->r[7] + 0x000071FCu;
|
|
/* 020667EC */ _t202 = cpu->r[1] + 0x00000024u;
|
|
/* 020667EC */ rbrew_write32(cpu->mem, _t202, cpu->r[22]);
|
|
/* 020667F0 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 020667F4 */ _t203 = cpu->r[1] + 0x00000020u;
|
|
/* 020667F4 */ rbrew_write32(cpu->mem, _t203, cpu->r[7]);
|
|
/* 020667F8 */ Gambit_fn_020669E4(cpu);
|
|
/* 020667FC */ _t204 = cpu->r[1] + 0x00000034u;
|
|
/* 020667FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t204);
|
|
/* 02066800 */ _t205 = cpu->r[25] + 0x00007399u;
|
|
/* 02066800 */ cpu->r[30] = rbrew_read8(cpu->mem, _t205);
|
|
/* 02066804 */ _t206 = cpu->r[5] + 0x00000000u;
|
|
/* 02066804 */ cpu->r[8] = rbrew_read8(cpu->mem, _t206);
|
|
/* 02066808 */ cpu->r[31] = 0x00000000u;
|
|
/* 0206680C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 02066810 */ cpu->r[8] = 0x00080000u;
|
|
/* 02066814 */ _t207 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066814 */ _t208 = _t207 & 0x00000001u;
|
|
/* 02066814 */ if (_t208) goto L_0206683C; else goto L_02066818;
|
|
L_02066818: ; // 0x2066818
|
|
/* 02066818 */ cpu->r[31] = cpu->r[31] + 0x00000001u;
|
|
/* 0206681C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]);
|
|
/* 02066820 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02066824 */ _t209 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02066824 */ _t210 = _t209 & 0x00000001u;
|
|
/* 02066824 */ if (_t210) goto L_02066838; else goto L_02066828;
|
|
L_02066828: ; // 0x2066828
|
|
/* 02066828 */ _t211 = cpu->r[5] + 0x00000000u;
|
|
/* 02066828 */ cpu->r[9] = rbrew_read8(cpu->mem, _t211);
|
|
/* 0206682C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]);
|
|
/* 02066830 */ _t212 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066830 */ _t213 = _t212 & 0x00000001u;
|
|
/* 02066830 */ if (_t213) goto L_02066834; else goto L_02066818;
|
|
L_02066834: ; // 0x2066834
|
|
/* 02066834 */ goto L_0206683C;
|
|
L_02066838: ; // 0x2066838
|
|
/* 02066838 */ cpu->r[31] = 0x00000000u;
|
|
L_0206683C: ; // 0x206683c
|
|
/* 0206683C */ _t214 = cpu->r[1] + 0x00000024u;
|
|
/* 0206683C */ cpu->r[10] = rbrew_read32(cpu->mem, _t214);
|
|
/* 02066840 */ _t215 = cpu->r[10] + 0x00000014u;
|
|
/* 02066840 */ cpu->r[11] = rbrew_read32(cpu->mem, _t215);
|
|
/* 02066844 */ cpu->ctr = cpu->r[11];
|
|
/* 02066848 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 0206684C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066850 */ _t216 = cpu->r[1] + 0x00000020u;
|
|
/* 02066850 */ cpu->r[8] = rbrew_read32(cpu->mem, _t216);
|
|
/* 02066854 */ _t217 = cpu->r[8] + 0x00000000u;
|
|
/* 02066854 */ cpu->r[12] = rbrew_read8(cpu->mem, _t217);
|
|
/* 02066858 */ cpu->r[10] = 0x00080000u;
|
|
/* 0206685C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[30]);
|
|
/* 02066860 */ cpu->r[29] = 0x00000000u;
|
|
/* 02066864 */ _t218 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066864 */ _t219 = _t218 & 0x00000001u;
|
|
/* 02066864 */ if (_t219) goto L_0206688C; else goto L_02066868;
|
|
L_02066868: ; // 0x2066868
|
|
/* 02066868 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0206686C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]);
|
|
/* 02066870 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02066874 */ _t220 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02066874 */ _t221 = _t220 & 0x00000001u;
|
|
/* 02066874 */ if (_t221) goto L_02066888; else goto L_02066878;
|
|
L_02066878: ; // 0x2066878
|
|
/* 02066878 */ _t222 = cpu->r[8] + 0x00000000u;
|
|
/* 02066878 */ cpu->r[0] = rbrew_read8(cpu->mem, _t222);
|
|
/* 0206687C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 02066880 */ _t223 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066880 */ _t224 = _t223 & 0x00000001u;
|
|
/* 02066880 */ if (_t224) goto L_02066884; else goto L_02066868;
|
|
L_02066884: ; // 0x2066884
|
|
/* 02066884 */ goto L_0206688C;
|
|
L_02066888: ; // 0x2066888
|
|
/* 02066888 */ cpu->r[29] = 0x00000000u;
|
|
L_0206688C: ; // 0x206688c
|
|
/* 0206688C */ cpu->r[31] = cpu->r[31] - cpu->r[29];
|
|
/* 0206688C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02066890 */ cpu->r[28] = 0x00000000u;
|
|
/* 02066894 */ _t225 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02066894 */ _t226 = _t225 & 0x00000001u;
|
|
/* 02066894 */ if (_t226) goto L_02066958; else goto L_02066898;
|
|
L_02066898: ; // 0x2066898
|
|
/* 02066898 */ _t227 = cpu->r[1] + 0x00000034u;
|
|
/* 02066898 */ cpu->r[5] = rbrew_read32(cpu->mem, _t227);
|
|
/* 0206689C */ _t228 = cpu->r[1] + 0x00000014u;
|
|
/* 0206689C */ rbrew_write32(cpu->mem, _t228, cpu->r[22]);
|
|
/* 020668A0 */ cpu->r[4] = cpu->r[5] + cpu->r[28];
|
|
/* 020668A4 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 020668A8 */ _t229 = cpu->r[1] + 0x00000010u;
|
|
/* 020668A8 */ rbrew_write32(cpu->mem, _t229, cpu->r[4]);
|
|
/* 020668AC */ Gambit_fn_020669E4(cpu);
|
|
/* 020668B0 */ _t230 = cpu->r[1] + 0x00000014u;
|
|
/* 020668B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t230);
|
|
/* 020668B4 */ _t231 = cpu->r[6] + 0x00000014u;
|
|
/* 020668B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t231);
|
|
/* 020668B8 */ cpu->ctr = cpu->r[7];
|
|
/* 020668BC */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 020668C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020668C4 */ _t232 = cpu->r[1] + 0x00000024u;
|
|
/* 020668C4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t232);
|
|
/* 020668C8 */ _t233 = cpu->r[8] + 0x00000014u;
|
|
/* 020668C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t233);
|
|
/* 020668CC */ cpu->ctr = cpu->r[9];
|
|
/* 020668D0 */ _t234 = cpu->r[1] + 0x00000010u;
|
|
/* 020668D0 */ cpu->r[27] = rbrew_read32(cpu->mem, _t234);
|
|
/* 020668D4 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 020668D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020668DC */ _t235 = cpu->r[1] + 0x00000020u;
|
|
/* 020668DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t235);
|
|
/* 020668E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[10]);
|
|
/* 020668E4 */ _t236 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020668E4 */ _t237 = _t236 & 0x00000001u;
|
|
/* 020668E4 */ if (_t237) goto L_02066938; else goto L_020668E8;
|
|
L_020668E8: ; // 0x20668e8
|
|
/* 020668E8 */ cpu->r[0] = cpu->r[29];
|
|
/* 020668E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020668EC */ _t238 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020668EC */ _t239 = _t238 & 0x00000001u;
|
|
/* 020668EC */ if (_t239) goto L_020668F0; else goto L_02066938;
|
|
L_020668F0: ; // 0x20668f0
|
|
/* 020668F0 */ _t240 = cpu->r[1] + 0x00000020u;
|
|
/* 020668F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t240);
|
|
/* 020668F4 */ cpu->ctr = cpu->r[0];
|
|
/* 020668F8 */ _t241 = cpu->r[1] + 0x00000010u;
|
|
/* 020668F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t241);
|
|
L_020668FC: ; // 0x20668fc
|
|
/* 020668FC */ _t242 = cpu->r[12] + 0x00000000u;
|
|
/* 020668FC */ cpu->r[10] = rbrew_read8(cpu->mem, _t242);
|
|
/* 02066900 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 02066904 */ _t243 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066904 */ _t244 = _t243 & 0x00000001u;
|
|
/* 02066904 */ if (_t244) goto L_02066908; else goto L_02066918;
|
|
L_02066908: ; // 0x2066908
|
|
/* 02066908 */ _t245 = cpu->r[9] + 0x00000000u;
|
|
/* 02066908 */ cpu->r[11] = rbrew_read8(cpu->mem, _t245);
|
|
/* 0206690C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[30]);
|
|
/* 02066910 */ _t246 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066910 */ _t247 = _t246 & 0x00000001u;
|
|
/* 02066910 */ if (_t247) goto L_02066938; else goto L_02066914;
|
|
L_02066914: ; // 0x2066914
|
|
/* 02066914 */ goto L_0206694C;
|
|
L_02066918: ; // 0x2066918
|
|
/* 02066918 */ _t248 = cpu->r[9] + 0x00000000u;
|
|
/* 02066918 */ cpu->r[8] = rbrew_read8(cpu->mem, _t248);
|
|
/* 0206691C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]);
|
|
/* 02066920 */ _t249 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066920 */ _t250 = _t249 & 0x00000001u;
|
|
/* 02066920 */ if (_t250) goto L_0206694C; else goto L_02066924;
|
|
L_02066924: ; // 0x2066924
|
|
/* 02066924 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[10]);
|
|
/* 02066928 */ _t251 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066928 */ _t252 = _t251 & 0x00000001u;
|
|
/* 02066928 */ if (_t252) goto L_0206692C; else goto L_0206694C;
|
|
L_0206692C: ; // 0x206692c
|
|
/* 0206692C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02066930 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02066934 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02066934 */ _t253 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02066934 */ _t254 = _t253 >> (0x00000002u & 31u);
|
|
/* 02066934 */ _t255 = _t254 & 0x00000001u;
|
|
/* 02066934 */ if (_t255) goto L_020668FC; else goto L_02066938;
|
|
L_02066938: ; // 0x2066938
|
|
/* 02066938 */ _t256 = cpu->r[28] | cpu->r[28];
|
|
/* 02066938 */ cpu->r[12] = ~_t256;
|
|
/* 0206693C */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02066940 */ cpu->r[0] = cpu->r[12] - cpu->r[0];
|
|
/* 02066940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02066944 */ _t257 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066944 */ _t258 = _t257 & 0x00000001u;
|
|
/* 02066944 */ if (_t258) goto L_02066998; else goto L_02066948;
|
|
L_02066948: ; // 0x2066948
|
|
/* 02066948 */ goto L_02066968;
|
|
L_0206694C: ; // 0x206694c
|
|
/* 0206694C */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02066950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[31]);
|
|
/* 02066954 */ _t259 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02066954 */ _t260 = _t259 & 0x00000001u;
|
|
/* 02066954 */ if (_t260) goto L_02066958; else goto L_02066898;
|
|
L_02066958: ; // 0x2066958
|
|
/* 02066958 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206695C */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02066960 */ cpu->r[0] = ~cpu->r[0];
|
|
/* 02066960 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02066964 */ _t261 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066964 */ _t262 = _t261 & 0x00000001u;
|
|
/* 02066964 */ if (_t262) goto L_02066998; else goto L_02066968;
|
|
L_02066968: ; // 0x2066968
|
|
/* 02066968 */ cpu->f[1] = cpu->f[30];
|
|
/* 0206696C */ cpu->r[31] = cpu->r[20] + 0x00000078u;
|
|
/* 02066970 */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 02066974 */ cpu->r[3] = cpu->r[31];
|
|
/* 02066978 */ _t263 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02066978 */ rbrew_write32(cpu->mem, _t263, cpu->r[23]);
|
|
/* 0206697C */ Gambit_fn_028BD348(cpu);
|
|
/* 02066980 */ cpu->f[1] = cpu->f[30];
|
|
/* 02066984 */ cpu->r[0] = 0x00000001u;
|
|
/* 02066988 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206698C */ cpu->r[4] = cpu->r[1] + 0x0000003Cu;
|
|
/* 02066990 */ _t264 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02066990 */ rbrew_write32(cpu->mem, _t264, cpu->r[0]);
|
|
/* 02066994 */ Gambit_fn_028BD348(cpu);
|
|
L_02066998: ; // 0x2066998
|
|
/* 02066998 */ /* nop */
|
|
/* 0206699C */ _t265 = cpu->r[1] + 0x000000A8u;
|
|
/* 0206699C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t265);
|
|
/* 020669A0 */ _t266 = cpu->r[1] + 0x000000B8u;
|
|
/* 020669A0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t266);
|
|
/* 020669A4 */ _t267 = cpu->r[1] + 0x000000A0u;
|
|
/* 020669A4 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t267);
|
|
/* 020669A8 */ _t268 = cpu->r[1] + 0x000000B0u;
|
|
/* 020669A8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t268);
|
|
/* 020669AC */ _t269 = cpu->r[1] + 0x00000098u;
|
|
/* 020669AC */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t269);
|
|
/* 020669B0 */ _t270 = cpu->r[1] + 0x000000C8u;
|
|
/* 020669B0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t270);
|
|
/* 020669B4 */ _t271 = cpu->r[1] + 0x00000090u;
|
|
/* 020669B4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t271);
|
|
/* 020669B8 */ _t272 = cpu->r[1] + 0x000000C0u;
|
|
/* 020669B8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t272);
|
|
/* 020669BC */ _t273 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020669BC */ _t274 = _t273 & 0x00000001u;
|
|
/* 020669BC */ if (_t274) goto L_020669C0; // else: addr-0 trap, fall-through
|
|
L_020669C0: ; // 0x20669c0
|
|
/* 020669C0 */ _t275 = cpu->r[1] + 0x000000D4u;
|
|
/* 020669C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t275);
|
|
/* 020669C4 */ cpu->lr = cpu->r[0];
|
|
/* 020669C8 */ cpu->r[1] = cpu->r[1] + 0x000000D0u;
|
|
/* 020669CC */ return;
|
|
}
|
|
|
|
// fn_020669D0 @ 0x20669d0
|
|
void Gambit_fn_020669D0(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_020669D0: ; // 0x20669d0
|
|
/* 020669D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020669D4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020669D4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 020669D4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 020669D4 */ goto L_020669D8;
|
|
L_020669D8: ; // 0x20669d8
|
|
/* 020669D8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020669D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020669DC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020669DC */ _t3 = _t2 & 0x00000001u;
|
|
/* 020669DC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 020669DC */ goto L_020669E0;
|
|
L_020669E0: ; // 0x20669e0
|
|
/* 020669E0 */ 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_020669E4 @ 0x20669e4
|
|
void Gambit_fn_020669E4(CPUState* cpu) {
|
|
L_020669E4: ; // 0x20669e4
|
|
/* 020669E4 */ return;
|
|
}
|
|
|
|
// fn_020669E8 @ 0x20669e8
|
|
void Gambit_fn_020669E8(CPUState* cpu) {
|
|
L_020669E8: ; // 0x20669e8
|
|
/* 020669E8 */ cpu->r[3] = 0x00000000u;
|
|
/* 020669EC */ return;
|
|
}
|
|
|
|
// fn_020669F0 @ 0x20669f0
|
|
void Gambit_fn_020669F0(CPUState* cpu) {
|
|
L_020669F0: ; // 0x20669f0
|
|
/* 020669F0 */ return;
|
|
}
|
|
|
|
// fn_020669F4 @ 0x20669f4
|
|
void Gambit_fn_020669F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_020669F4: ; // 0x20669f4
|
|
/* 020669F4 */ cpu->r[0] = cpu->lr;
|
|
/* 020669F8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 020669F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 020669FC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 020669FC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 020669FC */ cpu->r[1] = _t1;
|
|
/* 02066A00 */ _t2 = cpu->r[3] + 0x00000030u;
|
|
/* 02066A00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02066A04 */ _t3 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02066A04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02066A08 */ _t4 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02066A08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02066A0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02066A10 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066A10 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02066A10 */ if (_t6) goto L_02066A20; else goto L_02066A14;
|
|
L_02066A14: ; // 0x2066a14
|
|
/* 02066A14 */ _t7 = cpu->r[3] + 0x00000024u;
|
|
/* 02066A14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02066A18 */ Gambit_fn_020669F4(cpu);
|
|
/* 02066A1C */ goto L_02066A28;
|
|
L_02066A20: ; // 0x2066a20
|
|
/* 02066A20 */ cpu->r[3] = cpu->r[3] + 0x00000110u;
|
|
/* 02066A24 */ Gambit_fn_026D8B90(cpu);
|
|
L_02066A28: ; // 0x2066a28
|
|
/* 02066A28 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066A28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02066A2C */ cpu->lr = cpu->r[0];
|
|
/* 02066A30 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02066A34 */ return;
|
|
}
|
|
|
|
// fn_020669FC @ 0x20669fc
|
|
void Gambit_fn_020669FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_020669FC: ; // 0x20669fc
|
|
/* 020669FC */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 020669FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020669FC */ cpu->r[1] = _t0;
|
|
/* 02066A00 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 02066A00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02066A04 */ _t2 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02066A04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02066A08 */ _t3 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02066A08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02066A0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02066A10 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066A10 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02066A10 */ if (_t5) goto L_02066A20; else goto L_02066A14;
|
|
L_02066A14: ; // 0x2066a14
|
|
/* 02066A14 */ _t6 = cpu->r[3] + 0x00000024u;
|
|
/* 02066A14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02066A18 */ Gambit_fn_020669F4(cpu);
|
|
/* 02066A1C */ goto L_02066A28;
|
|
L_02066A20: ; // 0x2066a20
|
|
/* 02066A20 */ cpu->r[3] = cpu->r[3] + 0x00000110u;
|
|
/* 02066A24 */ Gambit_fn_026D8B90(cpu);
|
|
L_02066A28: ; // 0x2066a28
|
|
/* 02066A28 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066A28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02066A2C */ cpu->lr = cpu->r[0];
|
|
/* 02066A30 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02066A34 */ return;
|
|
}
|
|
|
|
// fn_02066A38 @ 0x2066a38
|
|
void Gambit_fn_02066A38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02066A38: ; // 0x2066a38
|
|
/* 02066A38 */ cpu->r[0] = cpu->lr;
|
|
/* 02066A3C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02066A3C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02066A40 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02066A40 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02066A40 */ cpu->r[1] = _t1;
|
|
/* 02066A44 */ _t2 = cpu->r[3] + 0x00000030u;
|
|
/* 02066A44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02066A48 */ _t3 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02066A48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02066A4C */ _t4 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02066A4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02066A50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02066A54 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066A54 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02066A54 */ if (_t6) goto L_02066A64; else goto L_02066A58;
|
|
L_02066A58: ; // 0x2066a58
|
|
/* 02066A58 */ _t7 = cpu->r[3] + 0x00000024u;
|
|
/* 02066A58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02066A5C */ Gambit_fn_02066A38(cpu);
|
|
/* 02066A60 */ goto L_02066A6C;
|
|
L_02066A64: ; // 0x2066a64
|
|
/* 02066A64 */ cpu->r[3] = cpu->r[3] + 0x00000110u;
|
|
/* 02066A68 */ Gambit_fn_026D8AF0(cpu);
|
|
L_02066A6C: ; // 0x2066a6c
|
|
/* 02066A6C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066A6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02066A70 */ cpu->lr = cpu->r[0];
|
|
/* 02066A74 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02066A78 */ return;
|
|
}
|
|
|
|
// fn_02066A40 @ 0x2066a40
|
|
void Gambit_fn_02066A40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02066A40: ; // 0x2066a40
|
|
/* 02066A40 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02066A40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02066A40 */ cpu->r[1] = _t0;
|
|
/* 02066A44 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 02066A44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02066A48 */ _t2 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02066A48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02066A4C */ _t3 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02066A4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02066A50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02066A54 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066A54 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02066A54 */ if (_t5) goto L_02066A64; else goto L_02066A58;
|
|
L_02066A58: ; // 0x2066a58
|
|
/* 02066A58 */ _t6 = cpu->r[3] + 0x00000024u;
|
|
/* 02066A58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02066A5C */ Gambit_fn_02066A38(cpu);
|
|
/* 02066A60 */ goto L_02066A6C;
|
|
L_02066A64: ; // 0x2066a64
|
|
/* 02066A64 */ cpu->r[3] = cpu->r[3] + 0x00000110u;
|
|
/* 02066A68 */ Gambit_fn_026D8AF0(cpu);
|
|
L_02066A6C: ; // 0x2066a6c
|
|
/* 02066A6C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066A6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02066A70 */ cpu->lr = cpu->r[0];
|
|
/* 02066A74 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02066A78 */ return;
|
|
}
|
|
|
|
// fn_02066A7C @ 0x2066a7c
|
|
void Gambit_fn_02066A7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02066A7C: ; // 0x2066a7c
|
|
/* 02066A7C */ cpu->r[12] = 0x10000000u;
|
|
/* 02066A80 */ _t0 = cpu->r[12] + 0x00007250u;
|
|
/* 02066A80 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02066A84 */ cpu->r[12] = 0x10000000u;
|
|
/* 02066A88 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02066A8C */ _t1 = cpu->r[12] + 0x00007254u;
|
|
/* 02066A8C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02066A90 */ _t2 = cpu->r[11] + 0xFFFFD4C4u;
|
|
/* 02066A90 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[13]);
|
|
/* 02066A90 */ cpu->r[11] = _t2;
|
|
/* 02066A94 */ cpu->r[12] = 0x10000000u;
|
|
/* 02066A98 */ _t3 = cpu->r[11] + 0x00000004u;
|
|
/* 02066A98 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[0]);
|
|
/* 02066A9C */ cpu->r[11] = 0x10000000u;
|
|
/* 02066AA0 */ _t4 = cpu->r[12] + 0x00007260u;
|
|
/* 02066AA0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02066AA4 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02066AA8 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02066AAC */ _t5 = cpu->r[11] + 0x0000725Cu;
|
|
/* 02066AAC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02066AB0 */ cpu->r[12] = cpu->r[12] + 0xFFFFD4CCu;
|
|
/* 02066AB4 */ _t6 = cpu->r[10] + 0xFFFFD4D4u;
|
|
/* 02066AB4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]);
|
|
/* 02066AB4 */ cpu->r[10] = _t6;
|
|
/* 02066AB8 */ cpu->r[11] = 0x10000000u;
|
|
/* 02066ABC */ _t7 = cpu->r[12] + 0x00000004u;
|
|
/* 02066ABC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[13]);
|
|
/* 02066AC0 */ _t8 = cpu->r[11] + 0x00007258u;
|
|
/* 02066AC0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02066AC4 */ _t9 = cpu->r[10] + 0x00000004u;
|
|
/* 02066AC4 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[0]);
|
|
/* 02066AC8 */ _t10 = cpu->r[12] + 0x00000000u;
|
|
/* 02066AC8 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[13]);
|
|
/* 02066ACC */ return;
|
|
}
|
|
|
|
// fn_02066AD0 @ 0x2066ad0
|
|
void Gambit_fn_02066AD0(CPUState* cpu) {
|
|
L_02066AD0: ; // 0x2066ad0
|
|
/* 02066AD0 */ return;
|
|
}
|
|
|
|
// fn_02066AD4 @ 0x2066ad4
|
|
void Gambit_fn_02066AD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02066AD4: ; // 0x2066ad4
|
|
/* 02066AD4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFECu;
|
|
/* 02066AD8 */ goto L_02067F60;
|
|
L_02067F60: ; // 0x2067f60
|
|
/* 02067F60 */ cpu->r[0] = cpu->lr;
|
|
/* 02067F64 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02067F64 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067F64 */ cpu->r[1] = _t0;
|
|
/* 02067F68 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067F68 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02067F6C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02067F6C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02067F70 */ cpu->r[30] = cpu->r[3];
|
|
/* 02067F70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02067F74 */ cpu->r[31] = cpu->r[4];
|
|
/* 02067F78 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02067F78 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02067F7C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067F7C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02067F7C */ if (_t5) goto L_02067FC0; else goto L_02067F80;
|
|
L_02067F80: ; // 0x2067f80
|
|
/* 02067F80 */ cpu->r[0] = 0x10000000u;
|
|
/* 02067F84 */ cpu->r[3] = cpu->r[30] + 0x0000010Cu;
|
|
/* 02067F88 */ cpu->r[0] = cpu->r[0] + 0x000072C4u;
|
|
/* 02067F8C */ cpu->r[4] = 0x00000002u;
|
|
/* 02067F90 */ _t6 = cpu->r[30] + 0x00000020u;
|
|
/* 02067F90 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02067F94 */ Gambit_fn_02928E8C(cpu);
|
|
/* 02067F98 */ cpu->r[3] = cpu->r[30] + 0x000000C8u;
|
|
/* 02067F9C */ cpu->r[4] = 0x00000002u;
|
|
/* 02067FA0 */ Gambit_fn_02928E8C(cpu);
|
|
/* 02067FA4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02067FA8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02067FAC */ Gambit_fn_028136EC(cpu);
|
|
/* 02067FB0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02067FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02067FB4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067FB4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02067FB4 */ if (_t8) goto L_02067FC0; else goto L_02067FB8;
|
|
L_02067FB8: ; // 0x2067fb8
|
|
/* 02067FB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02067FBC */ Gambit_fn_02801BB0(cpu);
|
|
L_02067FC0: ; // 0x2067fc0
|
|
/* 02067FC0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02067FC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02067FC4 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02067FC4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02067FC8 */ cpu->lr = cpu->r[0];
|
|
/* 02067FCC */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067FCC */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02067FD0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02067FD4 */ return;
|
|
}
|
|
|
|
// fn_02066ADC @ 0x2066adc
|
|
void Gambit_fn_02066ADC(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_02066ADC: ; // 0x2066adc
|
|
/* 02066ADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02066AE0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066AE0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02066AE0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02066AE0 */ goto L_02066AE4;
|
|
L_02066AE4: ; // 0x2066ae4
|
|
/* 02066AE4 */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 02066AE4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02066AE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02066AEC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066AEC */ _t4 = _t3 & 0x00000001u;
|
|
/* 02066AEC */ if (_t4) goto L_02066AFC; else goto L_02066AF0;
|
|
L_02066AF0: ; // 0x2066af0
|
|
/* 02066AF0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02066AF4 */ cpu->r[10] = 0x00000000u;
|
|
/* 02066AF8 */ _t5 = cpu->r[12] + 0x000033F4u;
|
|
/* 02066AF8 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]);
|
|
L_02066AFC: ; // 0x2066afc
|
|
/* 02066AFC */ cpu->r[11] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02066AFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02066B00 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066B00 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02066B00 */ if (_t7) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02066B00 */ goto L_02066B04;
|
|
L_02066B04: ; // 0x2066b04
|
|
/* 02066B04 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t8 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t8, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t8;
|
|
/* 02801B38 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02801B48 */ _t11 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B50 */ if (_t13) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02801B60 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 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 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02801B74 */ if (_t17) 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 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02801B84 */ if (_t19) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t20 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02801B8C */ _t21 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02801BA0 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02066B08 @ 0x2066b08
|
|
void Gambit_fn_02066B08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02066B08: ; // 0x2066b08
|
|
/* 02066B08 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFECu;
|
|
/* 02066B0C */ goto L_02067FD8;
|
|
L_02067FD8: ; // 0x2067fd8
|
|
/* 02067FD8 */ cpu->r[0] = cpu->lr;
|
|
/* 02067FDC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02067FDC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067FDC */ cpu->r[1] = _t0;
|
|
/* 02067FE0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067FE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02067FE4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02067FE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02067FE8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02067FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02067FEC */ cpu->r[31] = cpu->r[4];
|
|
/* 02067FF0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02067FF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02067FF4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067FF4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02067FF4 */ if (_t5) goto L_02068064; else goto L_02067FF8;
|
|
L_02067FF8: ; // 0x2067ff8
|
|
/* 02067FF8 */ cpu->r[12] = 0x10000000u;
|
|
/* 02067FFC */ cpu->r[3] = cpu->r[30] + 0x00000158u;
|
|
/* 02068000 */ cpu->r[12] = cpu->r[12] + 0x000074E0u;
|
|
/* 02068004 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068008 */ _t6 = cpu->r[30] + 0x00000020u;
|
|
/* 02068008 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 0206800C */ cpu->r[0] = cpu->r[0] + 0x000074F0u;
|
|
/* 02068010 */ cpu->r[4] = 0x00000002u;
|
|
/* 02068014 */ _t7 = cpu->r[30] + 0x00000154u;
|
|
/* 02068014 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02068018 */ Gambit_fn_02066ADC(cpu);
|
|
/* 0206801C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02068020 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068020 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02068020 */ if (_t9) goto L_02068054; else goto L_02068024;
|
|
L_02068024: ; // 0x2068024
|
|
/* 02068024 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068028 */ cpu->r[3] = cpu->r[30] + 0x0000010Cu;
|
|
/* 0206802C */ cpu->r[0] = cpu->r[0] + 0x000072C4u;
|
|
/* 02068030 */ cpu->r[4] = 0x00000002u;
|
|
/* 02068034 */ _t10 = cpu->r[30] + 0x00000020u;
|
|
/* 02068034 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02068038 */ Gambit_fn_02928E8C(cpu);
|
|
/* 0206803C */ cpu->r[3] = cpu->r[30] + 0x000000C8u;
|
|
/* 02068040 */ cpu->r[4] = 0x00000002u;
|
|
/* 02068044 */ Gambit_fn_02928E8C(cpu);
|
|
/* 02068048 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206804C */ cpu->r[4] = 0x00000000u;
|
|
/* 02068050 */ Gambit_fn_028136EC(cpu);
|
|
L_02068054: ; // 0x2068054
|
|
/* 02068054 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02068054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02068058 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068058 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02068058 */ if (_t12) goto L_02068064; else goto L_0206805C;
|
|
L_0206805C: ; // 0x206805c
|
|
/* 0206805C */ cpu->r[3] = cpu->r[30];
|
|
/* 02068060 */ Gambit_fn_02801BB0(cpu);
|
|
L_02068064: ; // 0x2068064
|
|
/* 02068064 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02068064 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02068068 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02068068 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206806C */ cpu->lr = cpu->r[0];
|
|
/* 02068070 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068070 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02068074 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02068078 */ return;
|
|
}
|
|
|
|
// fn_02066B30 @ 0x2066b30
|
|
void Gambit_fn_02066B30(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_02066B30: ; // 0x2066b30
|
|
/* 02066B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02066B34 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02066B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02066B34 */ cpu->r[1] = _t0;
|
|
/* 02066B38 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02066B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02066B3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02066B3C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02066B40 */ cpu->r[31] = cpu->r[3];
|
|
/* 02066B40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02066B44 */ cpu->r[30] = cpu->r[4];
|
|
/* 02066B48 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066B48 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02066B4C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02066B4C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02066B50 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066B50 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02066B50 */ if (_t6) goto L_02066B54; else goto L_02066B64;
|
|
L_02066B54: ; // 0x2066b54
|
|
/* 02066B54 */ cpu->r[3] = 0x000001A0u;
|
|
/* 02066B58 */ Gambit_fn_02801A78(cpu);
|
|
/* 02066B5C */ cpu->r[31] = cpu->r[3];
|
|
/* 02066B5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02066B60 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066B60 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02066B60 */ if (_t8) goto L_02066C18; else goto L_02066B64;
|
|
L_02066B64: ; // 0x2066b64
|
|
/* 02066B64 */ cpu->r[5] = 0x10000000u;
|
|
/* 02066B68 */ cpu->r[4] = cpu->r[30];
|
|
/* 02066B6C */ cpu->r[5] = cpu->r[5] + 0x00007314u;
|
|
/* 02066B70 */ cpu->r[3] = cpu->r[31];
|
|
/* 02066B74 */ Gambit_fn_02798BA4(cpu);
|
|
/* 02066B78 */ cpu->r[3] = cpu->r[31] + 0x00000150u;
|
|
/* 02066B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02066B7C */ cpu->r[30] = 0x00000000u;
|
|
/* 02066B80 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066B80 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02066B80 */ if (_t10) goto L_02066B84; else goto L_02066B94;
|
|
L_02066B84: ; // 0x2066b84
|
|
/* 02066B84 */ cpu->r[3] = 0x00000008u;
|
|
/* 02066B88 */ Gambit_fn_02801A78(cpu);
|
|
/* 02066B8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02066B90 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066B90 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02066B90 */ if (_t12) goto L_02066BA4; else goto L_02066B94;
|
|
L_02066B94: ; // 0x2066b94
|
|
/* 02066B94 */ cpu->r[9] = 0x10000000u;
|
|
/* 02066B98 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 02066B98 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 02066B9C */ cpu->r[9] = cpu->r[9] + 0x000072B4u;
|
|
/* 02066BA0 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 02066BA0 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
L_02066BA4: ; // 0x2066ba4
|
|
/* 02066BA4 */ cpu->r[10] = 0x10000000u;
|
|
/* 02066BA8 */ cpu->r[11] = 0x10000000u;
|
|
/* 02066BAC */ _t15 = cpu->r[31] + 0x00000158u;
|
|
/* 02066BAC */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[30]);
|
|
/* 02066BB0 */ cpu->r[10] = cpu->r[10] + 0x00007418u;
|
|
/* 02066BB4 */ cpu->r[0] = 0x10000000u;
|
|
/* 02066BB8 */ cpu->r[11] = cpu->r[11] + 0x000074E0u;
|
|
/* 02066BBC */ _t16 = cpu->r[31] + 0x00000070u;
|
|
/* 02066BBC */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 02066BC0 */ cpu->r[29] = cpu->r[31] + 0x0000015Cu;
|
|
/* 02066BC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02066BC4 */ cpu->r[0] = cpu->r[0] + 0x000074F0u;
|
|
/* 02066BC8 */ _t17 = cpu->r[31] + 0x00000020u;
|
|
/* 02066BC8 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 02066BCC */ _t18 = cpu->r[31] + 0x00000154u;
|
|
/* 02066BCC */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02066BD0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066BD0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02066BD0 */ if (_t20) goto L_02066BD4; else goto L_02066BE4;
|
|
L_02066BD4: ; // 0x2066bd4
|
|
/* 02066BD4 */ cpu->r[3] = 0x00000038u;
|
|
/* 02066BD8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02066BDC */ cpu->r[29] = cpu->r[3];
|
|
/* 02066BDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02066BE0 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066BE0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02066BE0 */ if (_t22) goto L_02066C14; else goto L_02066BE4;
|
|
L_02066BE4: ; // 0x2066be4
|
|
/* 02066BE4 */ cpu->r[3] = cpu->r[29];
|
|
/* 02066BE8 */ Gambit_fn_027FC29C(cpu);
|
|
/* 02066BEC */ cpu->r[0] = 0x10000000u;
|
|
/* 02066BF0 */ _t23 = cpu->r[29] + 0x00000030u;
|
|
/* 02066BF0 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
/* 02066BF4 */ cpu->r[0] = cpu->r[0] + 0x00007500u;
|
|
/* 02066BF8 */ _t24 = cpu->r[29] + 0x00000034u;
|
|
/* 02066BF8 */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
/* 02066BFC */ _t25 = cpu->r[29] + 0x00000004u;
|
|
/* 02066BFC */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02066C00 */ _t26 = cpu->r[29] + 0x00000024u;
|
|
/* 02066C00 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 02066C04 */ _t27 = cpu->r[29] + 0x00000028u;
|
|
/* 02066C04 */ rbrew_write32(cpu->mem, _t27, cpu->r[30]);
|
|
/* 02066C08 */ _t28 = cpu->r[29] + 0x0000002Cu;
|
|
/* 02066C08 */ rbrew_write32(cpu->mem, _t28, cpu->r[30]);
|
|
/* 02066C0C */ _t29 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02066C0C */ rbrew_write32(cpu->mem, _t29, cpu->r[30]);
|
|
/* 02066C10 */ _t30 = cpu->r[29] + 0x00000020u;
|
|
/* 02066C10 */ rbrew_write32(cpu->mem, _t30, cpu->r[30]);
|
|
L_02066C14: ; // 0x2066c14
|
|
/* 02066C14 */ _t31 = cpu->r[31] + 0x00000194u;
|
|
/* 02066C14 */ rbrew_write32(cpu->mem, _t31, cpu->r[30]);
|
|
L_02066C18: ; // 0x2066c18
|
|
/* 02066C18 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066C18 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02066C1C */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02066C1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02066C20 */ cpu->r[3] = cpu->r[31];
|
|
/* 02066C24 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 02066C24 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02066C28 */ cpu->lr = cpu->r[0];
|
|
/* 02066C2C */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 02066C2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02066C30 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02066C34 */ return;
|
|
}
|
|
|
|
// fn_02066B34 @ 0x2066b34
|
|
void Gambit_fn_02066B34(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_02066B34: ; // 0x2066b34
|
|
/* 02066B34 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02066B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02066B34 */ cpu->r[1] = _t0;
|
|
/* 02066B38 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02066B38 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02066B3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02066B3C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02066B40 */ cpu->r[31] = cpu->r[3];
|
|
/* 02066B40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02066B44 */ cpu->r[30] = cpu->r[4];
|
|
/* 02066B48 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066B48 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02066B4C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02066B4C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02066B50 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066B50 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02066B50 */ if (_t6) goto L_02066B54; else goto L_02066B64;
|
|
L_02066B54: ; // 0x2066b54
|
|
/* 02066B54 */ cpu->r[3] = 0x000001A0u;
|
|
/* 02066B58 */ Gambit_fn_02801A78(cpu);
|
|
/* 02066B5C */ cpu->r[31] = cpu->r[3];
|
|
/* 02066B5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02066B60 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066B60 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02066B60 */ if (_t8) goto L_02066C18; else goto L_02066B64;
|
|
L_02066B64: ; // 0x2066b64
|
|
/* 02066B64 */ cpu->r[5] = 0x10000000u;
|
|
/* 02066B68 */ cpu->r[4] = cpu->r[30];
|
|
/* 02066B6C */ cpu->r[5] = cpu->r[5] + 0x00007314u;
|
|
/* 02066B70 */ cpu->r[3] = cpu->r[31];
|
|
/* 02066B74 */ Gambit_fn_02798BA4(cpu);
|
|
/* 02066B78 */ cpu->r[3] = cpu->r[31] + 0x00000150u;
|
|
/* 02066B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02066B7C */ cpu->r[30] = 0x00000000u;
|
|
/* 02066B80 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066B80 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02066B80 */ if (_t10) goto L_02066B84; else goto L_02066B94;
|
|
L_02066B84: ; // 0x2066b84
|
|
/* 02066B84 */ cpu->r[3] = 0x00000008u;
|
|
/* 02066B88 */ Gambit_fn_02801A78(cpu);
|
|
/* 02066B8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02066B90 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066B90 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02066B90 */ if (_t12) goto L_02066BA4; else goto L_02066B94;
|
|
L_02066B94: ; // 0x2066b94
|
|
/* 02066B94 */ cpu->r[9] = 0x10000000u;
|
|
/* 02066B98 */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 02066B98 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 02066B9C */ cpu->r[9] = cpu->r[9] + 0x000072B4u;
|
|
/* 02066BA0 */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 02066BA0 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
L_02066BA4: ; // 0x2066ba4
|
|
/* 02066BA4 */ cpu->r[10] = 0x10000000u;
|
|
/* 02066BA8 */ cpu->r[11] = 0x10000000u;
|
|
/* 02066BAC */ _t15 = cpu->r[31] + 0x00000158u;
|
|
/* 02066BAC */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[30]);
|
|
/* 02066BB0 */ cpu->r[10] = cpu->r[10] + 0x00007418u;
|
|
/* 02066BB4 */ cpu->r[0] = 0x10000000u;
|
|
/* 02066BB8 */ cpu->r[11] = cpu->r[11] + 0x000074E0u;
|
|
/* 02066BBC */ _t16 = cpu->r[31] + 0x00000070u;
|
|
/* 02066BBC */ rbrew_write32(cpu->mem, _t16, cpu->r[10]);
|
|
/* 02066BC0 */ cpu->r[29] = cpu->r[31] + 0x0000015Cu;
|
|
/* 02066BC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02066BC4 */ cpu->r[0] = cpu->r[0] + 0x000074F0u;
|
|
/* 02066BC8 */ _t17 = cpu->r[31] + 0x00000020u;
|
|
/* 02066BC8 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 02066BCC */ _t18 = cpu->r[31] + 0x00000154u;
|
|
/* 02066BCC */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02066BD0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066BD0 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02066BD0 */ if (_t20) goto L_02066BD4; else goto L_02066BE4;
|
|
L_02066BD4: ; // 0x2066bd4
|
|
/* 02066BD4 */ cpu->r[3] = 0x00000038u;
|
|
/* 02066BD8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02066BDC */ cpu->r[29] = cpu->r[3];
|
|
/* 02066BDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02066BE0 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066BE0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02066BE0 */ if (_t22) goto L_02066C14; else goto L_02066BE4;
|
|
L_02066BE4: ; // 0x2066be4
|
|
/* 02066BE4 */ cpu->r[3] = cpu->r[29];
|
|
/* 02066BE8 */ Gambit_fn_027FC29C(cpu);
|
|
/* 02066BEC */ cpu->r[0] = 0x10000000u;
|
|
/* 02066BF0 */ _t23 = cpu->r[29] + 0x00000030u;
|
|
/* 02066BF0 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
/* 02066BF4 */ cpu->r[0] = cpu->r[0] + 0x00007500u;
|
|
/* 02066BF8 */ _t24 = cpu->r[29] + 0x00000034u;
|
|
/* 02066BF8 */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
/* 02066BFC */ _t25 = cpu->r[29] + 0x00000004u;
|
|
/* 02066BFC */ rbrew_write32(cpu->mem, _t25, cpu->r[0]);
|
|
/* 02066C00 */ _t26 = cpu->r[29] + 0x00000024u;
|
|
/* 02066C00 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 02066C04 */ _t27 = cpu->r[29] + 0x00000028u;
|
|
/* 02066C04 */ rbrew_write32(cpu->mem, _t27, cpu->r[30]);
|
|
/* 02066C08 */ _t28 = cpu->r[29] + 0x0000002Cu;
|
|
/* 02066C08 */ rbrew_write32(cpu->mem, _t28, cpu->r[30]);
|
|
/* 02066C0C */ _t29 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02066C0C */ rbrew_write32(cpu->mem, _t29, cpu->r[30]);
|
|
/* 02066C10 */ _t30 = cpu->r[29] + 0x00000020u;
|
|
/* 02066C10 */ rbrew_write32(cpu->mem, _t30, cpu->r[30]);
|
|
L_02066C14: ; // 0x2066c14
|
|
/* 02066C14 */ _t31 = cpu->r[31] + 0x00000194u;
|
|
/* 02066C14 */ rbrew_write32(cpu->mem, _t31, cpu->r[30]);
|
|
L_02066C18: ; // 0x2066c18
|
|
/* 02066C18 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066C18 */ cpu->r[29] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02066C1C */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02066C1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02066C20 */ cpu->r[3] = cpu->r[31];
|
|
/* 02066C24 */ _t34 = cpu->r[1] + 0x00000010u;
|
|
/* 02066C24 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02066C28 */ cpu->lr = cpu->r[0];
|
|
/* 02066C2C */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 02066C2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02066C30 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02066C34 */ return;
|
|
}
|
|
|
|
// fn_02066C38 @ 0x2066c38
|
|
void Gambit_fn_02066C38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02066C38: ; // 0x2066c38
|
|
/* 02066C38 */ cpu->r[3] = cpu->r[3] + 0x0000015Cu;
|
|
/* 02066C3C */ cpu->r[4] = 0x00000000u;
|
|
/* 02066C40 */ goto L_020682F0;
|
|
L_020682F0: ; // 0x20682f0
|
|
/* 020682F0 */ cpu->r[0] = cpu->lr;
|
|
/* 020682F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020682F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020682F4 */ cpu->r[1] = _t0;
|
|
/* 020682F8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 020682F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 020682FC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020682FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02068300 */ cpu->r[30] = cpu->r[3];
|
|
/* 02068304 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02068304 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02068308 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02068308 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206830C */ /* nop */
|
|
/* 02068310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02068314 */ cpu->r[31] = cpu->r[4];
|
|
/* 02068318 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068318 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02068318 */ if (_t6) goto L_0206831C; else goto L_02068330;
|
|
L_0206831C: ; // 0x206831c
|
|
/* 0206831C */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206831C */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02068320 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02068320 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02068324 */ cpu->ctr = cpu->r[0];
|
|
/* 02068328 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206832C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02068330: ; // 0x2068330
|
|
/* 02068330 */ cpu->r[3] = cpu->r[30];
|
|
/* 02068334 */ cpu->r[4] = cpu->r[31];
|
|
/* 02068338 */ Gambit_fn_020681E0(cpu);
|
|
/* 0206833C */ cpu->r[3] = cpu->r[30];
|
|
/* 02068340 */ /* nop */
|
|
/* 02068344 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02068348 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206834C */ Gambit_fn_02068268(cpu);
|
|
/* 02068350 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02068350 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02068354 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02068354 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02068358 */ cpu->lr = cpu->r[0];
|
|
/* 0206835C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206835C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02068360 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02068364 */ return;
|
|
}
|
|
|
|
// fn_02066C44 @ 0x2066c44
|
|
void Gambit_fn_02066C44(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246;
|
|
|
|
L_02066C44: ; // 0x2066c44
|
|
/* 02066C44 */ _t0 = cpu->r[1] + 0xFFFFFF80u;
|
|
/* 02066C44 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02066C44 */ cpu->r[1] = _t0;
|
|
/* 02066C48 */ cpu->r[0] = cpu->lr;
|
|
/* 02066C4C */ /* nop */
|
|
/* 02066C50 */ _t1 = cpu->r[1] + 0x00000084u;
|
|
/* 02066C50 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02066C54 */ Gambit_fn_027FAD20(cpu);
|
|
/* 02066C58 */ cpu->r[30] = 0x10000000u;
|
|
/* 02066C5C */ cpu->r[11] = 0x10000000u;
|
|
/* 02066C60 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02066C60 */ rbrew_write32(cpu->mem, _t2, cpu->r[3]);
|
|
/* 02066C64 */ cpu->r[30] = cpu->r[30] + 0x00007274u;
|
|
/* 02066C68 */ cpu->r[11] = cpu->r[11] + 0x00007330u;
|
|
/* 02066C6C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066C6C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02066C70 */ cpu->r[0] = 0x00000000u;
|
|
/* 02066C74 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 02066C74 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 02066C78 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02066C7C */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02066C7C */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02066C80 */ cpu->r[29] = 0x00000001u;
|
|
/* 02066C84 */ Gambit_fn_0206807C(cpu);
|
|
/* 02066C88 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066C88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02066C8C */ _t7 = cpu->r[12] + 0x00000014u;
|
|
/* 02066C8C */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02066C90 */ cpu->ctr = cpu->r[4];
|
|
/* 02066C94 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02066C98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066C9C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02066C9C */ cpu->r[5] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02066CA0 */ _t9 = cpu->r[5] + 0x00000014u;
|
|
/* 02066CA0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02066CA4 */ cpu->ctr = cpu->r[6];
|
|
/* 02066CA8 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02066CA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02066CAC */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02066CB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066CB4 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 02066CB4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02066CB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[7]);
|
|
/* 02066CBC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066CBC */ _t13 = _t12 & 0x00000001u;
|
|
/* 02066CBC */ if (_t13) goto L_0206727C; else goto L_02066CC0;
|
|
L_02066CC0: ; // 0x2066cc0
|
|
/* 02066CC0 */ cpu->r[28] = 0x00080000u;
|
|
/* 02066CC4 */ cpu->r[31] = 0x10110000u;
|
|
/* 02066CC8 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 02066CC8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02066CCC */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 02066CD0 */ _t15 = cpu->r[31] + 0x00007399u;
|
|
/* 02066CD0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t15);
|
|
/* 02066CD4 */ cpu->ctr = cpu->r[28];
|
|
/* 02066CD8 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02066CD8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02066CDC */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02066CE0: ; // 0x2066ce0
|
|
/* 02066CE0 */ _t17 = cpu->r[9] + 0x00000000u;
|
|
/* 02066CE0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t17);
|
|
/* 02066CE4 */ _t18 = cpu->r[10] + 0x00000001u;
|
|
/* 02066CE4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t18);
|
|
/* 02066CE4 */ cpu->r[10] = _t18;
|
|
/* 02066CE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[8]);
|
|
/* 02066CEC */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066CEC */ _t20 = _t19 & 0x00000001u;
|
|
/* 02066CEC */ if (_t20) goto L_02066CF0; else goto L_02066D00;
|
|
L_02066CF0: ; // 0x2066cf0
|
|
/* 02066CF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 02066CF4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066CF4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02066CF4 */ if (_t22) goto L_0206727C; else goto L_02066CF8;
|
|
L_02066CF8: ; // 0x2066cf8
|
|
/* 02066CF8 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02066CFC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02066CFC */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02066CFC */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 02066CFC */ _t25 = _t24 & 0x00000001u;
|
|
/* 02066CFC */ if (_t25) goto L_02066CE0; else goto L_02066D00;
|
|
L_02066D00: ; // 0x2066d00
|
|
/* 02066D00 */ cpu->r[0] = 0x10000000u;
|
|
/* 02066D04 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02066D04 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 02066D08 */ cpu->r[0] = cpu->r[0] + 0x00007350u;
|
|
/* 02066D0C */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066D0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02066D10 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 02066D10 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 02066D14 */ _t29 = cpu->r[12] + 0x00000014u;
|
|
/* 02066D14 */ cpu->r[4] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02066D18 */ cpu->ctr = cpu->r[4];
|
|
/* 02066D1C */ cpu->r[0] = 0x00000001u;
|
|
/* 02066D20 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02066D24 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066D28 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066D28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02066D2C */ _t31 = cpu->r[5] + 0x00000014u;
|
|
/* 02066D2C */ cpu->r[6] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02066D30 */ cpu->ctr = cpu->r[6];
|
|
/* 02066D34 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02066D38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066D3C */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02066D3C */ cpu->r[7] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02066D40 */ _t33 = cpu->r[7] + 0x00000014u;
|
|
/* 02066D40 */ cpu->r[8] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02066D44 */ cpu->ctr = cpu->r[8];
|
|
/* 02066D48 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 02066D48 */ cpu->r[27] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02066D4C */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02066D50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066D54 */ _t35 = cpu->r[1] + 0x00000018u;
|
|
/* 02066D54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02066D58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[11]);
|
|
/* 02066D5C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066D5C */ _t37 = _t36 & 0x00000001u;
|
|
/* 02066D5C */ if (_t37) goto L_0206727C; else goto L_02066D60;
|
|
L_02066D60: ; // 0x2066d60
|
|
/* 02066D60 */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 02066D60 */ cpu->r[7] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02066D64 */ cpu->ctr = cpu->r[28];
|
|
/* 02066D68 */ cpu->r[8] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_02066D6C: ; // 0x2066d6c
|
|
/* 02066D6C */ _t39 = cpu->r[7] + 0x00000000u;
|
|
/* 02066D6C */ cpu->r[0] = rbrew_read8(cpu->mem, _t39);
|
|
/* 02066D70 */ _t40 = cpu->r[8] + 0x00000001u;
|
|
/* 02066D70 */ cpu->r[9] = rbrew_read8(cpu->mem, _t40);
|
|
/* 02066D70 */ cpu->r[8] = _t40;
|
|
/* 02066D74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]);
|
|
/* 02066D78 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066D78 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02066D78 */ if (_t42) goto L_02066D7C; else goto L_02066D8C;
|
|
L_02066D7C: ; // 0x2066d7c
|
|
/* 02066D7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02066D80 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066D80 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02066D80 */ if (_t44) goto L_0206727C; else goto L_02066D84;
|
|
L_02066D84: ; // 0x2066d84
|
|
/* 02066D84 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02066D88 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02066D88 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02066D88 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 02066D88 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02066D88 */ if (_t47) goto L_02066D6C; else goto L_02066D8C;
|
|
L_02066D8C: ; // 0x2066d8c
|
|
/* 02066D8C */ cpu->r[0] = 0x10000000u;
|
|
/* 02066D90 */ _t48 = cpu->r[1] + 0x00000024u;
|
|
/* 02066D90 */ rbrew_write32(cpu->mem, _t48, cpu->r[30]);
|
|
/* 02066D94 */ cpu->r[0] = cpu->r[0] + 0x00007368u;
|
|
/* 02066D98 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066D98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02066D9C */ _t50 = cpu->r[1] + 0x00000020u;
|
|
/* 02066D9C */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 02066DA0 */ _t51 = cpu->r[11] + 0x00000014u;
|
|
/* 02066DA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02066DA4 */ cpu->ctr = cpu->r[12];
|
|
/* 02066DA8 */ cpu->r[0] = 0x00000001u;
|
|
/* 02066DAC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02066DB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066DB4 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066DB4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02066DB8 */ _t53 = cpu->r[4] + 0x00000014u;
|
|
/* 02066DB8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02066DBC */ cpu->ctr = cpu->r[5];
|
|
/* 02066DC0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02066DC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066DC8 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 02066DC8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02066DCC */ _t55 = cpu->r[6] + 0x00000014u;
|
|
/* 02066DCC */ cpu->r[7] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02066DD0 */ cpu->ctr = cpu->r[7];
|
|
/* 02066DD4 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 02066DD4 */ cpu->r[27] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02066DD8 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 02066DDC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066DE0 */ _t57 = cpu->r[1] + 0x00000020u;
|
|
/* 02066DE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02066DE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[12]);
|
|
/* 02066DE8 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066DE8 */ _t59 = _t58 & 0x00000001u;
|
|
/* 02066DE8 */ if (_t59) goto L_0206727C; else goto L_02066DEC;
|
|
L_02066DEC: ; // 0x2066dec
|
|
/* 02066DEC */ _t60 = cpu->r[1] + 0x00000008u;
|
|
/* 02066DEC */ cpu->r[5] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02066DF0 */ cpu->ctr = cpu->r[28];
|
|
/* 02066DF4 */ cpu->r[6] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02066DF8: ; // 0x2066df8
|
|
/* 02066DF8 */ _t61 = cpu->r[5] + 0x00000000u;
|
|
/* 02066DF8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t61);
|
|
/* 02066DFC */ _t62 = cpu->r[6] + 0x00000001u;
|
|
/* 02066DFC */ cpu->r[8] = rbrew_read8(cpu->mem, _t62);
|
|
/* 02066DFC */ cpu->r[6] = _t62;
|
|
/* 02066E00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[8]);
|
|
/* 02066E04 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066E04 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02066E04 */ if (_t64) goto L_02066E08; else goto L_02066E18;
|
|
L_02066E08: ; // 0x2066e08
|
|
/* 02066E08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 02066E0C */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066E0C */ _t66 = _t65 & 0x00000001u;
|
|
/* 02066E0C */ if (_t66) goto L_0206727C; else goto L_02066E10;
|
|
L_02066E10: ; // 0x2066e10
|
|
/* 02066E10 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02066E14 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02066E14 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02066E14 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 02066E14 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02066E14 */ if (_t69) goto L_02066DF8; else goto L_02066E18;
|
|
L_02066E18: ; // 0x2066e18
|
|
/* 02066E18 */ cpu->r[0] = 0x10000000u;
|
|
/* 02066E1C */ _t70 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02066E1C */ rbrew_write32(cpu->mem, _t70, cpu->r[30]);
|
|
/* 02066E20 */ cpu->r[0] = cpu->r[0] + 0x00007340u;
|
|
/* 02066E24 */ _t71 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066E24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02066E28 */ _t72 = cpu->r[1] + 0x00000028u;
|
|
/* 02066E28 */ rbrew_write32(cpu->mem, _t72, cpu->r[0]);
|
|
/* 02066E2C */ _t73 = cpu->r[10] + 0x00000014u;
|
|
/* 02066E2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02066E30 */ cpu->ctr = cpu->r[11];
|
|
/* 02066E34 */ cpu->r[0] = 0x00000001u;
|
|
/* 02066E38 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02066E3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066E40 */ _t74 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066E40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02066E44 */ _t75 = cpu->r[12] + 0x00000014u;
|
|
/* 02066E44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02066E48 */ cpu->ctr = cpu->r[0];
|
|
/* 02066E4C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02066E50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066E54 */ _t76 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02066E54 */ cpu->r[4] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02066E58 */ _t77 = cpu->r[4] + 0x00000014u;
|
|
/* 02066E58 */ cpu->r[5] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02066E5C */ cpu->ctr = cpu->r[5];
|
|
/* 02066E60 */ _t78 = cpu->r[1] + 0x00000008u;
|
|
/* 02066E60 */ cpu->r[27] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02066E64 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02066E68 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066E6C */ _t79 = cpu->r[1] + 0x00000028u;
|
|
/* 02066E6C */ cpu->r[4] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02066E70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[4]);
|
|
/* 02066E74 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066E74 */ _t81 = _t80 & 0x00000001u;
|
|
/* 02066E74 */ if (_t81) goto L_0206727C; else goto L_02066E78;
|
|
L_02066E78: ; // 0x2066e78
|
|
/* 02066E78 */ _t82 = cpu->r[1] + 0x00000008u;
|
|
/* 02066E78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02066E7C */ cpu->ctr = cpu->r[28];
|
|
/* 02066E80 */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_02066E84: ; // 0x2066e84
|
|
/* 02066E84 */ _t83 = cpu->r[12] + 0x00000000u;
|
|
/* 02066E84 */ cpu->r[5] = rbrew_read8(cpu->mem, _t83);
|
|
/* 02066E88 */ _t84 = cpu->r[4] + 0x00000001u;
|
|
/* 02066E88 */ cpu->r[6] = rbrew_read8(cpu->mem, _t84);
|
|
/* 02066E88 */ cpu->r[4] = _t84;
|
|
/* 02066E8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 02066E90 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066E90 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02066E90 */ if (_t86) goto L_02066E94; else goto L_02066EA4;
|
|
L_02066E94: ; // 0x2066e94
|
|
/* 02066E94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02066E98 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066E98 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02066E98 */ if (_t88) goto L_0206727C; else goto L_02066E9C;
|
|
L_02066E9C: ; // 0x2066e9c
|
|
/* 02066E9C */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02066EA0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02066EA0 */ _t89 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02066EA0 */ _t90 = _t89 >> (0x00000002u & 31u);
|
|
/* 02066EA0 */ _t91 = _t90 & 0x00000001u;
|
|
/* 02066EA0 */ if (_t91) goto L_02066E84; else goto L_02066EA4;
|
|
L_02066EA4: ; // 0x2066ea4
|
|
/* 02066EA4 */ cpu->r[0] = 0x10000000u;
|
|
/* 02066EA8 */ _t92 = cpu->r[1] + 0x00000034u;
|
|
/* 02066EA8 */ rbrew_write32(cpu->mem, _t92, cpu->r[30]);
|
|
/* 02066EAC */ cpu->r[0] = cpu->r[0] + 0x00007328u;
|
|
/* 02066EB0 */ _t93 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066EB0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02066EB4 */ _t94 = cpu->r[1] + 0x00000030u;
|
|
/* 02066EB4 */ rbrew_write32(cpu->mem, _t94, cpu->r[0]);
|
|
/* 02066EB8 */ _t95 = cpu->r[8] + 0x00000014u;
|
|
/* 02066EB8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02066EBC */ cpu->ctr = cpu->r[9];
|
|
/* 02066EC0 */ cpu->r[0] = 0x00000001u;
|
|
/* 02066EC4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02066EC8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066ECC */ _t96 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066ECC */ cpu->r[10] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02066ED0 */ _t97 = cpu->r[10] + 0x00000014u;
|
|
/* 02066ED0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02066ED4 */ cpu->ctr = cpu->r[0];
|
|
/* 02066ED8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02066EDC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066EE0 */ _t98 = cpu->r[1] + 0x00000034u;
|
|
/* 02066EE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02066EE4 */ _t99 = cpu->r[12] + 0x00000014u;
|
|
/* 02066EE4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02066EE8 */ cpu->ctr = cpu->r[4];
|
|
/* 02066EEC */ _t100 = cpu->r[1] + 0x00000008u;
|
|
/* 02066EEC */ cpu->r[27] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02066EF0 */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 02066EF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066EF8 */ _t101 = cpu->r[1] + 0x00000030u;
|
|
/* 02066EF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02066EFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[5]);
|
|
/* 02066F00 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066F00 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02066F00 */ if (_t103) goto L_0206727C; else goto L_02066F04;
|
|
L_02066F04: ; // 0x2066f04
|
|
/* 02066F04 */ _t104 = cpu->r[1] + 0x00000008u;
|
|
/* 02066F04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02066F08 */ cpu->ctr = cpu->r[28];
|
|
/* 02066F0C */ cpu->r[11] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02066F10: ; // 0x2066f10
|
|
/* 02066F10 */ _t105 = cpu->r[10] + 0x00000000u;
|
|
/* 02066F10 */ cpu->r[6] = rbrew_read8(cpu->mem, _t105);
|
|
/* 02066F14 */ _t106 = cpu->r[11] + 0x00000001u;
|
|
/* 02066F14 */ cpu->r[5] = rbrew_read8(cpu->mem, _t106);
|
|
/* 02066F14 */ cpu->r[11] = _t106;
|
|
/* 02066F18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[5]);
|
|
/* 02066F1C */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066F1C */ _t108 = _t107 & 0x00000001u;
|
|
/* 02066F1C */ if (_t108) goto L_02066F20; else goto L_02066F30;
|
|
L_02066F20: ; // 0x2066f20
|
|
/* 02066F20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 02066F24 */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066F24 */ _t110 = _t109 & 0x00000001u;
|
|
/* 02066F24 */ if (_t110) goto L_0206727C; else goto L_02066F28;
|
|
L_02066F28: ; // 0x2066f28
|
|
/* 02066F28 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02066F2C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02066F2C */ _t111 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02066F2C */ _t112 = _t111 >> (0x00000002u & 31u);
|
|
/* 02066F2C */ _t113 = _t112 & 0x00000001u;
|
|
/* 02066F2C */ if (_t113) goto L_02066F10; else goto L_02066F30;
|
|
L_02066F30: ; // 0x2066f30
|
|
/* 02066F30 */ cpu->r[0] = 0x10000000u;
|
|
/* 02066F34 */ _t114 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02066F34 */ rbrew_write32(cpu->mem, _t114, cpu->r[30]);
|
|
/* 02066F38 */ cpu->r[0] = cpu->r[0] + 0x00007338u;
|
|
/* 02066F3C */ _t115 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066F3C */ cpu->r[8] = rbrew_read32(cpu->mem, _t115);
|
|
/* 02066F40 */ _t116 = cpu->r[1] + 0x00000038u;
|
|
/* 02066F40 */ rbrew_write32(cpu->mem, _t116, cpu->r[0]);
|
|
/* 02066F44 */ _t117 = cpu->r[8] + 0x00000014u;
|
|
/* 02066F44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t117);
|
|
/* 02066F48 */ cpu->ctr = cpu->r[9];
|
|
/* 02066F4C */ cpu->r[0] = 0x00000001u;
|
|
/* 02066F50 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02066F54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066F58 */ _t118 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066F58 */ cpu->r[10] = rbrew_read32(cpu->mem, _t118);
|
|
/* 02066F5C */ _t119 = cpu->r[10] + 0x00000014u;
|
|
/* 02066F5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t119);
|
|
/* 02066F60 */ cpu->ctr = cpu->r[11];
|
|
/* 02066F64 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02066F68 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066F6C */ _t120 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02066F6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t120);
|
|
/* 02066F70 */ _t121 = cpu->r[12] + 0x00000014u;
|
|
/* 02066F70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t121);
|
|
/* 02066F74 */ cpu->ctr = cpu->r[0];
|
|
/* 02066F78 */ _t122 = cpu->r[1] + 0x00000008u;
|
|
/* 02066F78 */ cpu->r[27] = rbrew_read32(cpu->mem, _t122);
|
|
/* 02066F7C */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02066F80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066F84 */ _t123 = cpu->r[1] + 0x00000038u;
|
|
/* 02066F84 */ cpu->r[6] = rbrew_read32(cpu->mem, _t123);
|
|
/* 02066F88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[6]);
|
|
/* 02066F8C */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066F8C */ _t125 = _t124 & 0x00000001u;
|
|
/* 02066F8C */ if (_t125) goto L_0206727C; else goto L_02066F90;
|
|
L_02066F90: ; // 0x2066f90
|
|
/* 02066F90 */ _t126 = cpu->r[1] + 0x00000008u;
|
|
/* 02066F90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02066F94 */ cpu->ctr = cpu->r[28];
|
|
/* 02066F98 */ cpu->r[9] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_02066F9C: ; // 0x2066f9c
|
|
/* 02066F9C */ _t127 = cpu->r[8] + 0x00000000u;
|
|
/* 02066F9C */ cpu->r[7] = rbrew_read8(cpu->mem, _t127);
|
|
/* 02066FA0 */ _t128 = cpu->r[9] + 0x00000001u;
|
|
/* 02066FA0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t128);
|
|
/* 02066FA0 */ cpu->r[9] = _t128;
|
|
/* 02066FA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[4]);
|
|
/* 02066FA8 */ _t129 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066FA8 */ _t130 = _t129 & 0x00000001u;
|
|
/* 02066FA8 */ if (_t130) goto L_02066FAC; else goto L_02066FBC;
|
|
L_02066FAC: ; // 0x2066fac
|
|
/* 02066FAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 02066FB0 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02066FB0 */ _t132 = _t131 & 0x00000001u;
|
|
/* 02066FB0 */ if (_t132) goto L_0206727C; else goto L_02066FB4;
|
|
L_02066FB4: ; // 0x2066fb4
|
|
/* 02066FB4 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02066FB8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02066FB8 */ _t133 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02066FB8 */ _t134 = _t133 >> (0x00000002u & 31u);
|
|
/* 02066FB8 */ _t135 = _t134 & 0x00000001u;
|
|
/* 02066FB8 */ if (_t135) goto L_02066F9C; else goto L_02066FBC;
|
|
L_02066FBC: ; // 0x2066fbc
|
|
/* 02066FBC */ cpu->r[0] = 0x10000000u;
|
|
/* 02066FC0 */ _t136 = cpu->r[1] + 0x00000044u;
|
|
/* 02066FC0 */ rbrew_write32(cpu->mem, _t136, cpu->r[30]);
|
|
/* 02066FC4 */ cpu->r[0] = cpu->r[0] + 0x00007348u;
|
|
/* 02066FC8 */ _t137 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066FC8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t137);
|
|
/* 02066FCC */ _t138 = cpu->r[1] + 0x00000040u;
|
|
/* 02066FCC */ rbrew_write32(cpu->mem, _t138, cpu->r[0]);
|
|
/* 02066FD0 */ _t139 = cpu->r[6] + 0x00000014u;
|
|
/* 02066FD0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t139);
|
|
/* 02066FD4 */ cpu->ctr = cpu->r[7];
|
|
/* 02066FD8 */ cpu->r[0] = 0x00000001u;
|
|
/* 02066FDC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02066FE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066FE4 */ _t140 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02066FE4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t140);
|
|
/* 02066FE8 */ _t141 = cpu->r[8] + 0x00000014u;
|
|
/* 02066FE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t141);
|
|
/* 02066FEC */ cpu->ctr = cpu->r[9];
|
|
/* 02066FF0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02066FF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02066FF8 */ _t142 = cpu->r[1] + 0x00000044u;
|
|
/* 02066FF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t142);
|
|
/* 02066FFC */ _t143 = cpu->r[10] + 0x00000014u;
|
|
/* 02066FFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02067000 */ cpu->ctr = cpu->r[11];
|
|
/* 02067004 */ _t144 = cpu->r[1] + 0x00000008u;
|
|
/* 02067004 */ cpu->r[27] = rbrew_read32(cpu->mem, _t144);
|
|
/* 02067008 */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 0206700C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067010 */ _t145 = cpu->r[1] + 0x00000040u;
|
|
/* 02067010 */ cpu->r[7] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02067014 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[7]);
|
|
/* 02067018 */ _t146 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067018 */ _t147 = _t146 & 0x00000001u;
|
|
/* 02067018 */ if (_t147) goto L_0206727C; else goto L_0206701C;
|
|
L_0206701C: ; // 0x206701c
|
|
/* 0206701C */ _t148 = cpu->r[1] + 0x00000008u;
|
|
/* 0206701C */ cpu->r[6] = rbrew_read32(cpu->mem, _t148);
|
|
/* 02067020 */ cpu->ctr = cpu->r[28];
|
|
/* 02067024 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_02067028: ; // 0x2067028
|
|
/* 02067028 */ _t149 = cpu->r[6] + 0x00000000u;
|
|
/* 02067028 */ cpu->r[8] = rbrew_read8(cpu->mem, _t149);
|
|
/* 0206702C */ _t150 = cpu->r[7] + 0x00000001u;
|
|
/* 0206702C */ cpu->r[12] = rbrew_read8(cpu->mem, _t150);
|
|
/* 0206702C */ cpu->r[7] = _t150;
|
|
/* 02067030 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 02067034 */ _t151 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067034 */ _t152 = _t151 & 0x00000001u;
|
|
/* 02067034 */ if (_t152) goto L_02067038; else goto L_02067048;
|
|
L_02067038: ; // 0x2067038
|
|
/* 02067038 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 0206703C */ _t153 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206703C */ _t154 = _t153 & 0x00000001u;
|
|
/* 0206703C */ if (_t154) goto L_0206727C; else goto L_02067040;
|
|
L_02067040: ; // 0x2067040
|
|
/* 02067040 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02067044 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02067044 */ _t155 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02067044 */ _t156 = _t155 >> (0x00000002u & 31u);
|
|
/* 02067044 */ _t157 = _t156 & 0x00000001u;
|
|
/* 02067044 */ if (_t157) goto L_02067028; else goto L_02067048;
|
|
L_02067048: ; // 0x2067048
|
|
/* 02067048 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206704C */ _t158 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0206704C */ rbrew_write32(cpu->mem, _t158, cpu->r[30]);
|
|
/* 02067050 */ cpu->r[0] = cpu->r[0] + 0x00007378u;
|
|
/* 02067054 */ _t159 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067054 */ cpu->r[4] = rbrew_read32(cpu->mem, _t159);
|
|
/* 02067058 */ _t160 = cpu->r[1] + 0x00000048u;
|
|
/* 02067058 */ rbrew_write32(cpu->mem, _t160, cpu->r[0]);
|
|
/* 0206705C */ _t161 = cpu->r[4] + 0x00000014u;
|
|
/* 0206705C */ cpu->r[5] = rbrew_read32(cpu->mem, _t161);
|
|
/* 02067060 */ cpu->ctr = cpu->r[5];
|
|
/* 02067064 */ cpu->r[0] = 0x00000001u;
|
|
/* 02067068 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206706C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067070 */ _t162 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067070 */ cpu->r[6] = rbrew_read32(cpu->mem, _t162);
|
|
/* 02067074 */ _t163 = cpu->r[6] + 0x00000014u;
|
|
/* 02067074 */ cpu->r[7] = rbrew_read32(cpu->mem, _t163);
|
|
/* 02067078 */ cpu->ctr = cpu->r[7];
|
|
/* 0206707C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02067080 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067084 */ _t164 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02067084 */ cpu->r[8] = rbrew_read32(cpu->mem, _t164);
|
|
/* 02067088 */ _t165 = cpu->r[8] + 0x00000014u;
|
|
/* 02067088 */ cpu->r[9] = rbrew_read32(cpu->mem, _t165);
|
|
/* 0206708C */ cpu->ctr = cpu->r[9];
|
|
/* 02067090 */ _t166 = cpu->r[1] + 0x00000008u;
|
|
/* 02067090 */ cpu->r[27] = rbrew_read32(cpu->mem, _t166);
|
|
/* 02067094 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02067098 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206709C */ _t167 = cpu->r[1] + 0x00000048u;
|
|
/* 0206709C */ cpu->r[8] = rbrew_read32(cpu->mem, _t167);
|
|
/* 020670A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[8]);
|
|
/* 020670A4 */ _t168 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020670A4 */ _t169 = _t168 & 0x00000001u;
|
|
/* 020670A4 */ if (_t169) goto L_0206727C; else goto L_020670A8;
|
|
L_020670A8: ; // 0x20670a8
|
|
/* 020670A8 */ _t170 = cpu->r[1] + 0x00000008u;
|
|
/* 020670A8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t170);
|
|
/* 020670AC */ cpu->ctr = cpu->r[28];
|
|
/* 020670B0 */ cpu->r[5] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_020670B4: ; // 0x20670b4
|
|
/* 020670B4 */ _t171 = cpu->r[4] + 0x00000000u;
|
|
/* 020670B4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t171);
|
|
/* 020670B8 */ _t172 = cpu->r[5] + 0x00000001u;
|
|
/* 020670B8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t172);
|
|
/* 020670B8 */ cpu->r[5] = _t172;
|
|
/* 020670BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]);
|
|
/* 020670C0 */ _t173 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020670C0 */ _t174 = _t173 & 0x00000001u;
|
|
/* 020670C0 */ if (_t174) goto L_020670C4; else goto L_020670D4;
|
|
L_020670C4: ; // 0x20670c4
|
|
/* 020670C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 020670C8 */ _t175 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020670C8 */ _t176 = _t175 & 0x00000001u;
|
|
/* 020670C8 */ if (_t176) goto L_0206727C; else goto L_020670CC;
|
|
L_020670CC: ; // 0x20670cc
|
|
/* 020670CC */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 020670D0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020670D0 */ _t177 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020670D0 */ _t178 = _t177 >> (0x00000002u & 31u);
|
|
/* 020670D0 */ _t179 = _t178 & 0x00000001u;
|
|
/* 020670D0 */ if (_t179) goto L_020670B4; else goto L_020670D4;
|
|
L_020670D4: ; // 0x20670d4
|
|
/* 020670D4 */ cpu->r[0] = 0x10000000u;
|
|
/* 020670D8 */ _t180 = cpu->r[1] + 0x00000054u;
|
|
/* 020670D8 */ rbrew_write32(cpu->mem, _t180, cpu->r[30]);
|
|
/* 020670DC */ cpu->r[0] = cpu->r[0] + 0x0000735Cu;
|
|
/* 020670E0 */ _t181 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020670E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t181);
|
|
/* 020670E4 */ _t182 = cpu->r[1] + 0x00000050u;
|
|
/* 020670E4 */ rbrew_write32(cpu->mem, _t182, cpu->r[0]);
|
|
/* 020670E8 */ _t183 = cpu->r[12] + 0x00000014u;
|
|
/* 020670E8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t183);
|
|
/* 020670EC */ cpu->ctr = cpu->r[4];
|
|
/* 020670F0 */ cpu->r[0] = 0x00000001u;
|
|
/* 020670F4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020670F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020670FC */ _t184 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020670FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t184);
|
|
/* 02067100 */ _t185 = cpu->r[5] + 0x00000014u;
|
|
/* 02067100 */ cpu->r[6] = rbrew_read32(cpu->mem, _t185);
|
|
/* 02067104 */ cpu->ctr = cpu->r[6];
|
|
/* 02067108 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206710C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067110 */ _t186 = cpu->r[1] + 0x00000054u;
|
|
/* 02067110 */ cpu->r[7] = rbrew_read32(cpu->mem, _t186);
|
|
/* 02067114 */ _t187 = cpu->r[7] + 0x00000014u;
|
|
/* 02067114 */ cpu->r[8] = rbrew_read32(cpu->mem, _t187);
|
|
/* 02067118 */ cpu->ctr = cpu->r[8];
|
|
/* 0206711C */ _t188 = cpu->r[1] + 0x00000008u;
|
|
/* 0206711C */ cpu->r[27] = rbrew_read32(cpu->mem, _t188);
|
|
/* 02067120 */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02067124 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067128 */ _t189 = cpu->r[1] + 0x00000050u;
|
|
/* 02067128 */ cpu->r[9] = rbrew_read32(cpu->mem, _t189);
|
|
/* 0206712C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[9]);
|
|
/* 02067130 */ _t190 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067130 */ _t191 = _t190 & 0x00000001u;
|
|
/* 02067130 */ if (_t191) goto L_0206727C; else goto L_02067134;
|
|
L_02067134: ; // 0x2067134
|
|
/* 02067134 */ _t192 = cpu->r[1] + 0x00000008u;
|
|
/* 02067134 */ cpu->r[11] = rbrew_read32(cpu->mem, _t192);
|
|
/* 02067138 */ cpu->ctr = cpu->r[28];
|
|
/* 0206713C */ cpu->r[12] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_02067140: ; // 0x2067140
|
|
/* 02067140 */ _t193 = cpu->r[11] + 0x00000000u;
|
|
/* 02067140 */ cpu->r[10] = rbrew_read8(cpu->mem, _t193);
|
|
/* 02067144 */ _t194 = cpu->r[12] + 0x00000001u;
|
|
/* 02067144 */ cpu->r[9] = rbrew_read8(cpu->mem, _t194);
|
|
/* 02067144 */ cpu->r[12] = _t194;
|
|
/* 02067148 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[9]);
|
|
/* 0206714C */ _t195 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206714C */ _t196 = _t195 & 0x00000001u;
|
|
/* 0206714C */ if (_t196) goto L_02067150; else goto L_02067160;
|
|
L_02067150: ; // 0x2067150
|
|
/* 02067150 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02067154 */ _t197 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067154 */ _t198 = _t197 & 0x00000001u;
|
|
/* 02067154 */ if (_t198) goto L_0206727C; else goto L_02067158;
|
|
L_02067158: ; // 0x2067158
|
|
/* 02067158 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 0206715C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0206715C */ _t199 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0206715C */ _t200 = _t199 >> (0x00000002u & 31u);
|
|
/* 0206715C */ _t201 = _t200 & 0x00000001u;
|
|
/* 0206715C */ if (_t201) goto L_02067140; else goto L_02067160;
|
|
L_02067160: ; // 0x2067160
|
|
/* 02067160 */ cpu->r[0] = 0x10000000u;
|
|
/* 02067164 */ _t202 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02067164 */ rbrew_write32(cpu->mem, _t202, cpu->r[30]);
|
|
/* 02067168 */ cpu->r[0] = cpu->r[0] + 0x00007384u;
|
|
/* 0206716C */ _t203 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206716C */ cpu->r[11] = rbrew_read32(cpu->mem, _t203);
|
|
/* 02067170 */ _t204 = cpu->r[1] + 0x00000058u;
|
|
/* 02067170 */ rbrew_write32(cpu->mem, _t204, cpu->r[0]);
|
|
/* 02067174 */ _t205 = cpu->r[11] + 0x00000014u;
|
|
/* 02067174 */ cpu->r[12] = rbrew_read32(cpu->mem, _t205);
|
|
/* 02067178 */ cpu->ctr = cpu->r[12];
|
|
/* 0206717C */ cpu->r[0] = 0x00000001u;
|
|
/* 02067180 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02067184 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067188 */ _t206 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067188 */ cpu->r[4] = rbrew_read32(cpu->mem, _t206);
|
|
/* 0206718C */ _t207 = cpu->r[4] + 0x00000014u;
|
|
/* 0206718C */ cpu->r[5] = rbrew_read32(cpu->mem, _t207);
|
|
/* 02067190 */ cpu->ctr = cpu->r[5];
|
|
/* 02067194 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02067198 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206719C */ _t208 = cpu->r[1] + 0x0000005Cu;
|
|
/* 0206719C */ cpu->r[6] = rbrew_read32(cpu->mem, _t208);
|
|
/* 020671A0 */ _t209 = cpu->r[6] + 0x00000014u;
|
|
/* 020671A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t209);
|
|
/* 020671A4 */ cpu->ctr = cpu->r[7];
|
|
/* 020671A8 */ _t210 = cpu->r[1] + 0x00000008u;
|
|
/* 020671A8 */ cpu->r[27] = rbrew_read32(cpu->mem, _t210);
|
|
/* 020671AC */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 020671B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020671B4 */ _t211 = cpu->r[1] + 0x00000058u;
|
|
/* 020671B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t211);
|
|
/* 020671B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[10]);
|
|
/* 020671BC */ _t212 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020671BC */ _t213 = _t212 & 0x00000001u;
|
|
/* 020671BC */ if (_t213) goto L_0206727C; else goto L_020671C0;
|
|
L_020671C0: ; // 0x20671c0
|
|
/* 020671C0 */ _t214 = cpu->r[1] + 0x00000008u;
|
|
/* 020671C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t214);
|
|
/* 020671C4 */ cpu->ctr = cpu->r[28];
|
|
/* 020671C8 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_020671CC: ; // 0x20671cc
|
|
/* 020671CC */ _t215 = cpu->r[9] + 0x00000000u;
|
|
/* 020671CC */ cpu->r[11] = rbrew_read8(cpu->mem, _t215);
|
|
/* 020671D0 */ _t216 = cpu->r[10] + 0x00000001u;
|
|
/* 020671D0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t216);
|
|
/* 020671D0 */ cpu->r[10] = _t216;
|
|
/* 020671D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[8]);
|
|
/* 020671D8 */ _t217 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020671D8 */ _t218 = _t217 & 0x00000001u;
|
|
/* 020671D8 */ if (_t218) goto L_020671DC; else goto L_020671EC;
|
|
L_020671DC: ; // 0x20671dc
|
|
/* 020671DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 020671E0 */ _t219 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020671E0 */ _t220 = _t219 & 0x00000001u;
|
|
/* 020671E0 */ if (_t220) goto L_0206727C; else goto L_020671E4;
|
|
L_020671E4: ; // 0x20671e4
|
|
/* 020671E4 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 020671E8 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020671E8 */ _t221 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020671E8 */ _t222 = _t221 >> (0x00000002u & 31u);
|
|
/* 020671E8 */ _t223 = _t222 & 0x00000001u;
|
|
/* 020671E8 */ if (_t223) goto L_020671CC; else goto L_020671EC;
|
|
L_020671EC: ; // 0x20671ec
|
|
/* 020671EC */ cpu->r[0] = 0x10000000u;
|
|
/* 020671F0 */ _t224 = cpu->r[1] + 0x00000064u;
|
|
/* 020671F0 */ rbrew_write32(cpu->mem, _t224, cpu->r[30]);
|
|
/* 020671F4 */ cpu->r[0] = cpu->r[0] + 0x00007390u;
|
|
/* 020671F8 */ _t225 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020671F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t225);
|
|
/* 020671FC */ _t226 = cpu->r[1] + 0x00000060u;
|
|
/* 020671FC */ rbrew_write32(cpu->mem, _t226, cpu->r[0]);
|
|
/* 02067200 */ _t227 = cpu->r[10] + 0x00000014u;
|
|
/* 02067200 */ cpu->r[11] = rbrew_read32(cpu->mem, _t227);
|
|
/* 02067204 */ cpu->ctr = cpu->r[11];
|
|
/* 02067208 */ cpu->r[0] = 0x00000001u;
|
|
/* 0206720C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02067210 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067214 */ _t228 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067214 */ cpu->r[12] = rbrew_read32(cpu->mem, _t228);
|
|
/* 02067218 */ _t229 = cpu->r[12] + 0x00000014u;
|
|
/* 02067218 */ cpu->r[0] = rbrew_read32(cpu->mem, _t229);
|
|
/* 0206721C */ cpu->ctr = cpu->r[0];
|
|
/* 02067220 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02067224 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067228 */ _t230 = cpu->r[1] + 0x00000064u;
|
|
/* 02067228 */ cpu->r[4] = rbrew_read32(cpu->mem, _t230);
|
|
/* 0206722C */ _t231 = cpu->r[4] + 0x00000014u;
|
|
/* 0206722C */ cpu->r[0] = rbrew_read32(cpu->mem, _t231);
|
|
/* 02067230 */ cpu->ctr = cpu->r[0];
|
|
/* 02067234 */ _t232 = cpu->r[1] + 0x00000008u;
|
|
/* 02067234 */ cpu->r[30] = rbrew_read32(cpu->mem, _t232);
|
|
/* 02067238 */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 0206723C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067240 */ _t233 = cpu->r[1] + 0x00000060u;
|
|
/* 02067240 */ cpu->r[11] = rbrew_read32(cpu->mem, _t233);
|
|
/* 02067244 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]);
|
|
/* 02067248 */ _t234 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067248 */ _t235 = _t234 & 0x00000001u;
|
|
/* 02067248 */ if (_t235) goto L_0206727C; else goto L_0206724C;
|
|
L_0206724C: ; // 0x206724c
|
|
/* 0206724C */ _t236 = cpu->r[1] + 0x00000008u;
|
|
/* 0206724C */ cpu->r[7] = rbrew_read32(cpu->mem, _t236);
|
|
/* 02067250 */ cpu->ctr = cpu->r[28];
|
|
/* 02067254 */ cpu->r[8] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_02067258: ; // 0x2067258
|
|
/* 02067258 */ _t237 = cpu->r[7] + 0x00000000u;
|
|
/* 02067258 */ cpu->r[0] = rbrew_read8(cpu->mem, _t237);
|
|
/* 0206725C */ _t238 = cpu->r[8] + 0x00000001u;
|
|
/* 0206725C */ cpu->r[6] = rbrew_read8(cpu->mem, _t238);
|
|
/* 0206725C */ cpu->r[8] = _t238;
|
|
/* 02067260 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 02067264 */ _t239 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067264 */ _t240 = _t239 & 0x00000001u;
|
|
/* 02067264 */ if (_t240) goto L_02067268; else goto L_02067278;
|
|
L_02067268: ; // 0x2067268
|
|
/* 02067268 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0206726C */ _t241 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206726C */ _t242 = _t241 & 0x00000001u;
|
|
/* 0206726C */ if (_t242) goto L_0206727C; else goto L_02067270;
|
|
L_02067270: ; // 0x2067270
|
|
/* 02067270 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02067274 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02067274 */ _t243 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02067274 */ _t244 = _t243 >> (0x00000002u & 31u);
|
|
/* 02067274 */ _t245 = _t244 & 0x00000001u;
|
|
/* 02067274 */ if (_t245) goto L_02067258; else goto L_02067278;
|
|
L_02067278: ; // 0x2067278
|
|
/* 02067278 */ cpu->r[29] = 0x00000000u;
|
|
L_0206727C: ; // 0x206727c
|
|
/* 0206727C */ cpu->r[3] = rbrew_rlwinm(cpu->r[29], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02067280 */ /* nop */
|
|
/* 02067284 */ _t246 = cpu->r[1] + 0x00000084u;
|
|
/* 02067284 */ cpu->r[0] = rbrew_read32(cpu->mem, _t246);
|
|
/* 02067288 */ cpu->lr = cpu->r[0];
|
|
/* 0206728C */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 02067290 */ return;
|
|
}
|
|
|
|
// fn_02067294 @ 0x2067294
|
|
void Gambit_fn_02067294(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_02067294: ; // 0x2067294
|
|
/* 02067294 */ _t0 = cpu->r[1] + 0xFFFFFFC0u;
|
|
/* 02067294 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067294 */ cpu->r[1] = _t0;
|
|
/* 02067298 */ /* nop */
|
|
/* 0206729C */ cpu->r[0] = cpu->lr;
|
|
/* 020672A0 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 020672A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 020672A4 */ cpu->r[29] = 0x00000000u;
|
|
/* 020672A8 */ cpu->r[30] = cpu->r[3];
|
|
/* 020672AC */ _t2 = cpu->r[30] + 0x00000194u;
|
|
/* 020672AC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 020672B0 */ _t3 = cpu->r[30] + 0x00000198u;
|
|
/* 020672B0 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[29]);
|
|
/* 020672B4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 020672B8 */ _t4 = cpu->r[12] + 0x00001358u;
|
|
/* 020672B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 020672BC */ _t5 = cpu->r[12] + 0x0000025Cu;
|
|
/* 020672BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020672C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000002u);
|
|
/* 020672C4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020672C4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 020672C4 */ if (_t7) goto L_020672C8; else goto L_02067430;
|
|
L_020672C8: ; // 0x20672c8
|
|
/* 020672C8 */ Gambit_fn_027FAD20(cpu);
|
|
/* 020672CC */ cpu->r[27] = 0x10000000u;
|
|
/* 020672D0 */ cpu->r[28] = 0x02070000u;
|
|
/* 020672D4 */ cpu->r[27] = cpu->r[27] + 0x00007274u;
|
|
/* 020672D8 */ cpu->r[28] = cpu->r[28] + 0xFFFF807Cu;
|
|
/* 020672DC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020672DC */ rbrew_write32(cpu->mem, _t8, cpu->r[27]);
|
|
/* 020672E0 */ cpu->ctr = cpu->r[28];
|
|
/* 020672E4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020672E4 */ rbrew_write32(cpu->mem, _t9, cpu->r[27]);
|
|
/* 020672E8 */ cpu->r[5] = 0x10000000u;
|
|
/* 020672EC */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 020672EC */ rbrew_write32(cpu->mem, _t10, cpu->r[3]);
|
|
/* 020672F0 */ cpu->r[5] = cpu->r[5] + 0x000073A4u;
|
|
/* 020672F4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020672F8 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 020672F8 */ rbrew_write32(cpu->mem, _t11, cpu->r[5]);
|
|
/* 020672FC */ cpu->r[0] = 0x00000001u;
|
|
/* 02067300 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067304 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067304 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02067308 */ _t13 = cpu->r[6] + 0x00000014u;
|
|
/* 02067308 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206730C */ cpu->ctr = cpu->r[7];
|
|
/* 02067310 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02067314 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067318 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02067318 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206731C */ _t15 = cpu->r[8] + 0x00000014u;
|
|
/* 0206731C */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02067320 */ cpu->ctr = cpu->r[9];
|
|
/* 02067324 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02067324 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02067328 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0206732C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067330 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 02067330 */ cpu->r[5] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02067334 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[5]);
|
|
/* 02067338 */ cpu->r[31] = 0x10110000u;
|
|
/* 0206733C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206733C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0206733C */ if (_t19) goto L_02067384; else goto L_02067340;
|
|
L_02067340: ; // 0x2067340
|
|
/* 02067340 */ cpu->r[7] = 0x00080000u;
|
|
/* 02067344 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02067344 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02067348 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 0206734C */ _t21 = cpu->r[31] + 0x00007399u;
|
|
/* 0206734C */ cpu->r[9] = rbrew_read8(cpu->mem, _t21);
|
|
/* 02067350 */ cpu->ctr = cpu->r[7];
|
|
/* 02067354 */ cpu->r[10] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02067358: ; // 0x2067358
|
|
/* 02067358 */ _t22 = cpu->r[8] + 0x00000000u;
|
|
/* 02067358 */ cpu->r[7] = rbrew_read8(cpu->mem, _t22);
|
|
/* 0206735C */ _t23 = cpu->r[10] + 0x00000001u;
|
|
/* 0206735C */ cpu->r[0] = rbrew_read8(cpu->mem, _t23);
|
|
/* 0206735C */ cpu->r[10] = _t23;
|
|
/* 02067360 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]);
|
|
/* 02067364 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067364 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02067364 */ if (_t25) goto L_02067368; else goto L_02067430;
|
|
L_02067368: ; // 0x2067368
|
|
/* 02067368 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[9]);
|
|
/* 0206736C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206736C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0206736C */ if (_t27) goto L_02067384; else goto L_02067370;
|
|
L_02067370: ; // 0x2067370
|
|
/* 02067370 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02067374 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02067374 */ _t28 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02067374 */ _t29 = _t28 >> (0x00000002u & 31u);
|
|
/* 02067374 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02067374 */ if (_t30) goto L_02067358; else goto L_02067378;
|
|
L_02067378: ; // 0x2067378
|
|
/* 02067378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0206737C */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206737C */ _t32 = _t31 & 0x00000001u;
|
|
/* 0206737C */ if (_t32) goto L_02067448; else goto L_02067380;
|
|
L_02067380: ; // 0x2067380
|
|
/* 02067380 */ goto L_02067438;
|
|
L_02067384: ; // 0x2067384
|
|
/* 02067384 */ Gambit_fn_027FAD44(cpu);
|
|
/* 02067388 */ cpu->ctr = cpu->r[28];
|
|
/* 0206738C */ _t33 = cpu->r[1] + 0x00000024u;
|
|
/* 0206738C */ rbrew_write32(cpu->mem, _t33, cpu->r[27]);
|
|
/* 02067390 */ cpu->r[11] = 0x10000000u;
|
|
/* 02067394 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 02067394 */ rbrew_write32(cpu->mem, _t34, cpu->r[27]);
|
|
/* 02067398 */ cpu->r[11] = cpu->r[11] + 0x0000739Cu;
|
|
/* 0206739C */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 0206739C */ rbrew_write32(cpu->mem, _t35, cpu->r[3]);
|
|
/* 020673A0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 020673A4 */ cpu->r[0] = 0x00000001u;
|
|
/* 020673A8 */ _t36 = cpu->r[1] + 0x00000020u;
|
|
/* 020673A8 */ rbrew_write32(cpu->mem, _t36, cpu->r[11]);
|
|
/* 020673AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020673B0 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 020673B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t37);
|
|
/* 020673B4 */ _t38 = cpu->r[12] + 0x00000014u;
|
|
/* 020673B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 020673B8 */ cpu->ctr = cpu->r[0];
|
|
/* 020673BC */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 020673C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020673C4 */ _t39 = cpu->r[1] + 0x00000024u;
|
|
/* 020673C4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t39);
|
|
/* 020673C8 */ _t40 = cpu->r[6] + 0x00000014u;
|
|
/* 020673C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 020673CC */ cpu->ctr = cpu->r[0];
|
|
/* 020673D0 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 020673D0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t41);
|
|
/* 020673D4 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 020673D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020673DC */ _t42 = cpu->r[1] + 0x00000020u;
|
|
/* 020673DC */ cpu->r[6] = rbrew_read32(cpu->mem, _t42);
|
|
/* 020673E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[6]);
|
|
/* 020673E4 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020673E4 */ _t44 = _t43 & 0x00000001u;
|
|
/* 020673E4 */ if (_t44) goto L_0206742C; else goto L_020673E8;
|
|
L_020673E8: ; // 0x20673e8
|
|
/* 020673E8 */ cpu->r[12] = 0x00080000u;
|
|
/* 020673EC */ cpu->r[7] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 020673F0 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 020673F4 */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 020673F4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t45);
|
|
/* 020673F8 */ cpu->ctr = cpu->r[12];
|
|
/* 020673FC */ _t46 = cpu->r[31] + 0x00007399u;
|
|
/* 020673FC */ cpu->r[6] = rbrew_read8(cpu->mem, _t46);
|
|
L_02067400: ; // 0x2067400
|
|
/* 02067400 */ _t47 = cpu->r[5] + 0x00000000u;
|
|
/* 02067400 */ cpu->r[11] = rbrew_read8(cpu->mem, _t47);
|
|
/* 02067404 */ _t48 = cpu->r[7] + 0x00000001u;
|
|
/* 02067404 */ cpu->r[0] = rbrew_read8(cpu->mem, _t48);
|
|
/* 02067404 */ cpu->r[7] = _t48;
|
|
/* 02067408 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 0206740C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206740C */ _t50 = _t49 & 0x00000001u;
|
|
/* 0206740C */ if (_t50) goto L_02067410; else goto L_02067430;
|
|
L_02067410: ; // 0x2067410
|
|
/* 02067410 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[6]);
|
|
/* 02067414 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067414 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02067414 */ if (_t52) goto L_0206742C; else goto L_02067418;
|
|
L_02067418: ; // 0x2067418
|
|
/* 02067418 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 0206741C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0206741C */ _t53 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0206741C */ _t54 = _t53 >> (0x00000002u & 31u);
|
|
/* 0206741C */ _t55 = _t54 & 0x00000001u;
|
|
/* 0206741C */ if (_t55) goto L_02067400; else goto L_02067420;
|
|
L_02067420: ; // 0x2067420
|
|
/* 02067420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02067424 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067424 */ _t57 = _t56 & 0x00000001u;
|
|
/* 02067424 */ if (_t57) goto L_02067448; else goto L_02067428;
|
|
L_02067428: ; // 0x2067428
|
|
/* 02067428 */ goto L_02067438;
|
|
L_0206742C: ; // 0x206742c
|
|
/* 0206742C */ cpu->r[29] = 0x00000001u;
|
|
L_02067430: ; // 0x2067430
|
|
/* 02067430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02067434 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067434 */ _t59 = _t58 & 0x00000001u;
|
|
/* 02067434 */ if (_t59) goto L_02067448; else goto L_02067438;
|
|
L_02067438: ; // 0x2067438
|
|
/* 02067438 */ cpu->r[3] = cpu->r[30] + 0x0000015Cu;
|
|
/* 0206743C */ cpu->r[4] = 0x00000002u;
|
|
/* 02067440 */ Gambit_fn_020682F0(cpu);
|
|
/* 02067444 */ goto L_02067468;
|
|
L_02067448: ; // 0x2067448
|
|
/* 02067448 */ cpu->r[31] = 0x00000000u;
|
|
/* 0206744C */ Gambit_fn_02066C44(cpu);
|
|
/* 02067450 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067454 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067454 */ _t61 = _t60 & 0x00000001u;
|
|
/* 02067454 */ if (_t61) goto L_0206745C; else goto L_02067458;
|
|
L_02067458: ; // 0x2067458
|
|
/* 02067458 */ cpu->r[31] = 0x00000001u;
|
|
L_0206745C: ; // 0x206745c
|
|
/* 0206745C */ cpu->r[3] = cpu->r[30] + 0x0000015Cu;
|
|
/* 02067460 */ cpu->r[4] = cpu->r[31];
|
|
/* 02067464 */ Gambit_fn_020682F0(cpu);
|
|
L_02067468: ; // 0x2067468
|
|
/* 02067468 */ /* nop */
|
|
/* 0206746C */ _t62 = cpu->r[1] + 0x00000044u;
|
|
/* 0206746C */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02067470 */ cpu->lr = cpu->r[0];
|
|
/* 02067474 */ cpu->r[1] = cpu->r[1] + 0x00000040u;
|
|
/* 02067478 */ return;
|
|
}
|
|
|
|
// fn_0206747C @ 0x206747c
|
|
void Gambit_fn_0206747C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206747C: ; // 0x206747c
|
|
/* 0206747C */ cpu->r[0] = 0x00000001u;
|
|
/* 02067480 */ _t0 = cpu->r[3] + 0x00000198u;
|
|
/* 02067480 */ rbrew_write8(cpu->mem, _t0, (uint8_t)cpu->r[0]);
|
|
/* 02067484 */ return;
|
|
}
|
|
|
|
// fn_02067488 @ 0x2067488
|
|
void Gambit_fn_02067488(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02067488: ; // 0x2067488
|
|
/* 02067488 */ _t0 = cpu->r[3] + 0x00000168u;
|
|
/* 02067488 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206748C */ /* nop */
|
|
/* 02067490 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02067494 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02067498 */ return;
|
|
}
|
|
|
|
// fn_0206749C @ 0x206749c
|
|
void Gambit_fn_0206749C(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;
|
|
|
|
L_0206749C: ; // 0x206749c
|
|
/* 0206749C */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 0206749C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206749C */ cpu->r[1] = _t0;
|
|
/* 020674A0 */ /* nop */
|
|
/* 020674A4 */ cpu->r[0] = cpu->lr;
|
|
/* 020674A8 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 020674A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 020674AC */ cpu->r[29] = cpu->r[3];
|
|
/* 020674B0 */ cpu->r[12] = 0x00000003u;
|
|
/* 020674B4 */ cpu->r[28] = 0x00000000u;
|
|
/* 020674B8 */ cpu->r[4] = cpu->r[29];
|
|
/* 020674BC */ cpu->r[3] = cpu->r[29] + 0x0000015Cu;
|
|
/* 020674C0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 020674C0 */ rbrew_write8(cpu->mem, _t2, (uint8_t)cpu->r[12]);
|
|
/* 020674C4 */ cpu->r[6] = cpu->r[28];
|
|
/* 020674C8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 020674CC */ Gambit_fn_02068368(cpu);
|
|
/* 020674D0 */ cpu->r[25] = 0x10000000u;
|
|
/* 020674D4 */ cpu->r[26] = 0x02070000u;
|
|
/* 020674D8 */ cpu->r[25] = cpu->r[25] + 0x00007274u;
|
|
/* 020674DC */ cpu->r[26] = cpu->r[26] + 0xFFFF807Cu;
|
|
/* 020674E0 */ cpu->r[0] = 0x10000000u;
|
|
/* 020674E4 */ cpu->ctr = cpu->r[26];
|
|
/* 020674E8 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 020674E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[25]);
|
|
/* 020674EC */ cpu->r[0] = cpu->r[0] + 0x000073C0u;
|
|
/* 020674F0 */ _t4 = cpu->r[29] + 0x00000174u;
|
|
/* 020674F0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t4);
|
|
/* 020674F4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020674F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 020674F8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 020674FC */ _t6 = cpu->r[24] + 0x00000000u;
|
|
/* 020674FC */ cpu->r[27] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02067500 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067504 */ cpu->r[31] = 0x10110000u;
|
|
/* 02067508 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067508 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206750C */ _t8 = cpu->r[31] + 0x00007399u;
|
|
/* 0206750C */ cpu->r[31] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02067510 */ _t9 = cpu->r[8] + 0x00000000u;
|
|
/* 02067510 */ cpu->r[5] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02067514 */ cpu->r[30] = cpu->r[28];
|
|
/* 02067518 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 0206751C */ cpu->r[0] = 0x00080000u;
|
|
/* 02067520 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067520 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02067520 */ if (_t11) goto L_02067548; else goto L_02067524;
|
|
L_02067524: ; // 0x2067524
|
|
/* 02067524 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02067528 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]);
|
|
/* 0206752C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02067530 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02067530 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02067530 */ if (_t13) goto L_02067544; else goto L_02067534;
|
|
L_02067534: ; // 0x2067534
|
|
/* 02067534 */ _t14 = cpu->r[8] + 0x00000000u;
|
|
/* 02067534 */ cpu->r[6] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02067538 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 0206753C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206753C */ _t16 = _t15 & 0x00000001u;
|
|
/* 0206753C */ if (_t16) goto L_02067540; else goto L_02067524;
|
|
L_02067540: ; // 0x2067540
|
|
/* 02067540 */ goto L_02067548;
|
|
L_02067544: ; // 0x2067544
|
|
/* 02067544 */ cpu->r[30] = 0x00000000u;
|
|
L_02067548: ; // 0x2067548
|
|
/* 02067548 */ _t17 = cpu->r[24] + 0x00000008u;
|
|
/* 02067548 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0206754C */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 0206754C */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02067550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 02067554 */ _t19 = cpu->r[7] + 0x00000014u;
|
|
/* 02067554 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02067558 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02067558 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02067558 */ if (_t21) goto L_02067560; else goto L_0206755C;
|
|
L_0206755C: ; // 0x206755c
|
|
/* 0206755C */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02067560: ; // 0x2067560
|
|
/* 02067560 */ cpu->ctr = cpu->r[8];
|
|
/* 02067564 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067568 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206756C */ _t22 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206756C */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02067570 */ cpu->r[6] = 0x00000000u;
|
|
/* 02067574 */ cpu->r[5] = cpu->r[30];
|
|
/* 02067578 */ cpu->r[3] = cpu->r[27];
|
|
/* 0206757C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02067580 */ _t23 = cpu->r[27] + cpu->r[30];
|
|
/* 02067580 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[31]);
|
|
/* 02067584 */ cpu->r[0] = 0x02070000u;
|
|
/* 02067588 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02067588 */ rbrew_write16(cpu->mem, _t24, (uint16_t)cpu->r[28]);
|
|
/* 0206758C */ cpu->r[0] = cpu->r[0] + 0xFFFF81DCu;
|
|
/* 02067590 */ _t25 = cpu->r[1] + 0x00000016u;
|
|
/* 02067590 */ rbrew_write16(cpu->mem, _t25, (uint16_t)cpu->r[28]);
|
|
/* 02067594 */ cpu->r[11] = 0x00000000u;
|
|
/* 02067598 */ _t26 = cpu->r[1] + 0x00000020u;
|
|
/* 02067598 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 0206759C */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 020675A0 */ _t27 = cpu->r[1] + 0x00000024u;
|
|
/* 020675A0 */ rbrew_write16(cpu->mem, _t27, (uint16_t)cpu->r[28]);
|
|
/* 020675A4 */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 020675A4 */ rbrew_write32(cpu->mem, _t28, cpu->r[28]);
|
|
/* 020675A8 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 020675AC */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 020675AC */ rbrew_write16(cpu->mem, _t29, (uint16_t)cpu->r[28]);
|
|
/* 020675B0 */ cpu->r[3] = cpu->r[29] + 0x0000015Cu;
|
|
/* 020675B4 */ _t30 = cpu->r[1] + 0x00000028u;
|
|
/* 020675B4 */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 020675B8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 020675BC */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 020675BC */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[11]);
|
|
/* 020675C0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 020675C4 */ _t32 = cpu->r[1] + 0x0000001Eu;
|
|
/* 020675C4 */ rbrew_write16(cpu->mem, _t32, (uint16_t)cpu->r[0]);
|
|
/* 020675C8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 020675CC */ _t33 = cpu->r[1] + 0x00000026u;
|
|
/* 020675CC */ rbrew_write16(cpu->mem, _t33, (uint16_t)cpu->r[28]);
|
|
/* 020675D0 */ Gambit_fn_02068618(cpu);
|
|
/* 020675D4 */ cpu->r[10] = 0x10000000u;
|
|
/* 020675D8 */ _t34 = cpu->r[29] + 0x00000170u;
|
|
/* 020675D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t34);
|
|
/* 020675DC */ cpu->r[10] = cpu->r[10] + 0x000073ACu;
|
|
/* 020675E0 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 020675E0 */ rbrew_write32(cpu->mem, _t35, cpu->r[25]);
|
|
/* 020675E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000001u);
|
|
/* 020675E8 */ _t36 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020675E8 */ rbrew_write32(cpu->mem, _t36, cpu->r[10]);
|
|
/* 020675EC */ _t37 = cpu->r[29] + 0x00000174u;
|
|
/* 020675EC */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 020675F0 */ _t38 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020675F0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 020675F0 */ if (_t39) goto L_020675F4; else goto L_020675F8;
|
|
L_020675F4: ; // 0x20675f4
|
|
/* 020675F4 */ cpu->r[30] = cpu->r[30] + 0x00000024u;
|
|
L_020675F8: ; // 0x20675f8
|
|
/* 020675F8 */ cpu->ctr = cpu->r[26];
|
|
/* 020675FC */ _t40 = cpu->r[30] + 0x00000000u;
|
|
/* 020675FC */ cpu->r[24] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02067600 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067604 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067608 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067608 */ cpu->r[6] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0206760C */ _t42 = cpu->r[6] + 0x00000000u;
|
|
/* 0206760C */ cpu->r[12] = rbrew_read8(cpu->mem, _t42);
|
|
/* 02067610 */ cpu->r[27] = 0x00000000u;
|
|
/* 02067614 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 02067618 */ cpu->r[7] = 0x00080000u;
|
|
/* 0206761C */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206761C */ _t44 = _t43 & 0x00000001u;
|
|
/* 0206761C */ if (_t44) goto L_02067644; else goto L_02067620;
|
|
L_02067620: ; // 0x2067620
|
|
/* 02067620 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02067624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[7]);
|
|
/* 02067628 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0206762C */ _t45 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0206762C */ _t46 = _t45 & 0x00000001u;
|
|
/* 0206762C */ if (_t46) goto L_02067640; else goto L_02067630;
|
|
L_02067630: ; // 0x2067630
|
|
/* 02067630 */ _t47 = cpu->r[6] + 0x00000000u;
|
|
/* 02067630 */ cpu->r[0] = rbrew_read8(cpu->mem, _t47);
|
|
/* 02067634 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02067638 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067638 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02067638 */ if (_t49) goto L_0206763C; else goto L_02067620;
|
|
L_0206763C: ; // 0x206763c
|
|
/* 0206763C */ goto L_02067644;
|
|
L_02067640: ; // 0x2067640
|
|
/* 02067640 */ cpu->r[27] = 0x00000000u;
|
|
L_02067644: ; // 0x2067644
|
|
/* 02067644 */ _t50 = cpu->r[30] + 0x00000008u;
|
|
/* 02067644 */ cpu->r[11] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02067648 */ _t51 = cpu->r[1] + 0x00000010u;
|
|
/* 02067648 */ cpu->r[5] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0206764C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[11]);
|
|
/* 02067650 */ _t52 = cpu->r[5] + 0x00000014u;
|
|
/* 02067650 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02067654 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02067654 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02067654 */ if (_t54) goto L_0206765C; else goto L_02067658;
|
|
L_02067658: ; // 0x2067658
|
|
/* 02067658 */ cpu->r[27] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_0206765C: ; // 0x206765c
|
|
/* 0206765C */ cpu->ctr = cpu->r[6];
|
|
/* 02067660 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067664 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067668 */ _t55 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067668 */ cpu->r[4] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0206766C */ cpu->r[3] = cpu->r[24];
|
|
/* 02067670 */ cpu->r[5] = cpu->r[27];
|
|
/* 02067674 */ cpu->r[6] = 0x00000000u;
|
|
/* 02067678 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0206767C */ _t56 = cpu->r[24] + cpu->r[27];
|
|
/* 0206767C */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[31]);
|
|
/* 02067680 */ cpu->r[11] = 0x00000001u;
|
|
/* 02067684 */ _t57 = cpu->r[1] + 0x00000014u;
|
|
/* 02067684 */ rbrew_write16(cpu->mem, _t57, (uint16_t)cpu->r[28]);
|
|
/* 02067688 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 0206768C */ _t58 = cpu->r[1] + 0x00000008u;
|
|
/* 0206768C */ rbrew_write8(cpu->mem, _t58, (uint8_t)cpu->r[11]);
|
|
/* 02067690 */ cpu->r[7] = 0x02060000u;
|
|
/* 02067694 */ _t59 = cpu->r[1] + 0x00000028u;
|
|
/* 02067694 */ rbrew_write32(cpu->mem, _t59, cpu->r[28]);
|
|
/* 02067698 */ cpu->r[7] = cpu->r[7] + 0x00007CECu;
|
|
/* 0206769C */ _t60 = cpu->r[1] + 0x00000024u;
|
|
/* 0206769C */ rbrew_write16(cpu->mem, _t60, (uint16_t)cpu->r[28]);
|
|
/* 020676A0 */ _t61 = cpu->r[1] + 0x00000018u;
|
|
/* 020676A0 */ rbrew_write32(cpu->mem, _t61, cpu->r[7]);
|
|
/* 020676A4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 020676A8 */ _t62 = cpu->r[1] + 0x00000026u;
|
|
/* 020676A8 */ rbrew_write16(cpu->mem, _t62, (uint16_t)cpu->r[28]);
|
|
/* 020676AC */ cpu->r[3] = cpu->r[29] + 0x0000015Cu;
|
|
/* 020676B0 */ _t63 = cpu->r[1] + 0x00000020u;
|
|
/* 020676B0 */ rbrew_write32(cpu->mem, _t63, cpu->r[28]);
|
|
/* 020676B4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 020676B8 */ _t64 = cpu->r[1] + 0x0000001Eu;
|
|
/* 020676B8 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[28]);
|
|
/* 020676BC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 020676C0 */ _t65 = cpu->r[1] + 0x00000016u;
|
|
/* 020676C0 */ rbrew_write16(cpu->mem, _t65, (uint16_t)cpu->r[8]);
|
|
/* 020676C4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 020676C8 */ _t66 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020676C8 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[28]);
|
|
/* 020676CC */ Gambit_fn_02068618(cpu);
|
|
/* 020676D0 */ cpu->r[0] = 0x10000000u;
|
|
/* 020676D4 */ _t67 = cpu->r[29] + 0x00000170u;
|
|
/* 020676D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t67);
|
|
/* 020676D8 */ cpu->r[0] = cpu->r[0] + 0x000073D0u;
|
|
/* 020676DC */ _t68 = cpu->r[1] + 0x00000010u;
|
|
/* 020676DC */ rbrew_write32(cpu->mem, _t68, cpu->r[25]);
|
|
/* 020676E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x00000002u);
|
|
/* 020676E4 */ _t69 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020676E4 */ rbrew_write32(cpu->mem, _t69, cpu->r[0]);
|
|
/* 020676E8 */ _t70 = cpu->r[29] + 0x00000174u;
|
|
/* 020676E8 */ cpu->r[27] = rbrew_read32(cpu->mem, _t70);
|
|
/* 020676EC */ _t71 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020676EC */ _t72 = _t71 & 0x00000001u;
|
|
/* 020676EC */ if (_t72) goto L_020676F0; else goto L_020676F4;
|
|
L_020676F0: ; // 0x20676f0
|
|
/* 020676F0 */ cpu->r[27] = cpu->r[27] + 0x00000048u;
|
|
L_020676F4: ; // 0x20676f4
|
|
/* 020676F4 */ cpu->ctr = cpu->r[26];
|
|
/* 020676F8 */ _t73 = cpu->r[27] + 0x00000000u;
|
|
/* 020676F8 */ cpu->r[25] = rbrew_read32(cpu->mem, _t73);
|
|
/* 020676FC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067700 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067704 */ _t74 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067704 */ cpu->r[11] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02067708 */ _t75 = cpu->r[11] + 0x00000000u;
|
|
/* 02067708 */ cpu->r[12] = rbrew_read8(cpu->mem, _t75);
|
|
/* 0206770C */ cpu->r[30] = 0x00000000u;
|
|
/* 02067710 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 02067714 */ cpu->r[5] = 0x00080000u;
|
|
/* 02067718 */ _t76 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067718 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02067718 */ if (_t77) goto L_02067740; else goto L_0206771C;
|
|
L_0206771C: ; // 0x206771c
|
|
/* 0206771C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02067720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02067724 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02067728 */ _t78 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02067728 */ _t79 = _t78 & 0x00000001u;
|
|
/* 02067728 */ if (_t79) goto L_0206773C; else goto L_0206772C;
|
|
L_0206772C: ; // 0x206772c
|
|
/* 0206772C */ _t80 = cpu->r[11] + 0x00000000u;
|
|
/* 0206772C */ cpu->r[0] = rbrew_read8(cpu->mem, _t80);
|
|
/* 02067730 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02067734 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067734 */ _t82 = _t81 & 0x00000001u;
|
|
/* 02067734 */ if (_t82) goto L_02067738; else goto L_0206771C;
|
|
L_02067738: ; // 0x2067738
|
|
/* 02067738 */ goto L_02067740;
|
|
L_0206773C: ; // 0x206773c
|
|
/* 0206773C */ cpu->r[30] = 0x00000000u;
|
|
L_02067740: ; // 0x2067740
|
|
/* 02067740 */ _t83 = cpu->r[27] + 0x00000008u;
|
|
/* 02067740 */ cpu->r[12] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02067744 */ _t84 = cpu->r[1] + 0x00000010u;
|
|
/* 02067744 */ cpu->r[5] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02067748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 0206774C */ _t85 = cpu->r[5] + 0x00000014u;
|
|
/* 0206774C */ cpu->r[6] = rbrew_read32(cpu->mem, _t85);
|
|
/* 02067750 */ _t86 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02067750 */ _t87 = _t86 & 0x00000001u;
|
|
/* 02067750 */ if (_t87) goto L_02067758; else goto L_02067754;
|
|
L_02067754: ; // 0x2067754
|
|
/* 02067754 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02067758: ; // 0x2067758
|
|
/* 02067758 */ cpu->ctr = cpu->r[6];
|
|
/* 0206775C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067760 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067764 */ _t88 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067764 */ cpu->r[4] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02067768 */ cpu->r[3] = cpu->r[25];
|
|
/* 0206776C */ cpu->r[5] = cpu->r[30];
|
|
/* 02067770 */ cpu->r[6] = 0x00000000u;
|
|
/* 02067774 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02067778 */ _t89 = cpu->r[25] + cpu->r[30];
|
|
/* 02067778 */ rbrew_write8(cpu->mem, _t89, (uint8_t)cpu->r[31]);
|
|
/* 0206777C */ cpu->r[9] = 0x00000002u;
|
|
/* 02067780 */ _t90 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02067780 */ rbrew_write16(cpu->mem, _t90, (uint16_t)cpu->r[28]);
|
|
/* 02067784 */ cpu->r[10] = 0xFFFFFFFFu;
|
|
/* 02067788 */ _t91 = cpu->r[1] + 0x00000024u;
|
|
/* 02067788 */ rbrew_write16(cpu->mem, _t91, (uint16_t)cpu->r[28]);
|
|
/* 0206778C */ cpu->r[0] = 0x02060000u;
|
|
/* 02067790 */ _t92 = cpu->r[1] + 0x00000016u;
|
|
/* 02067790 */ rbrew_write16(cpu->mem, _t92, (uint16_t)cpu->r[10]);
|
|
/* 02067794 */ cpu->r[0] = cpu->r[0] + 0x00007E50u;
|
|
/* 02067798 */ _t93 = cpu->r[1] + 0x00000020u;
|
|
/* 02067798 */ rbrew_write32(cpu->mem, _t93, cpu->r[28]);
|
|
/* 0206779C */ _t94 = cpu->r[1] + 0x00000014u;
|
|
/* 0206779C */ rbrew_write16(cpu->mem, _t94, (uint16_t)cpu->r[28]);
|
|
/* 020677A0 */ cpu->r[3] = cpu->r[29] + 0x0000015Cu;
|
|
/* 020677A4 */ _t95 = cpu->r[1] + 0x00000008u;
|
|
/* 020677A4 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[9]);
|
|
/* 020677A8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 020677AC */ _t96 = cpu->r[1] + 0x00000028u;
|
|
/* 020677AC */ rbrew_write32(cpu->mem, _t96, cpu->r[28]);
|
|
/* 020677B0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 020677B4 */ _t97 = cpu->r[1] + 0x00000026u;
|
|
/* 020677B4 */ rbrew_write16(cpu->mem, _t97, (uint16_t)cpu->r[28]);
|
|
/* 020677B8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 020677BC */ _t98 = cpu->r[1] + 0x00000018u;
|
|
/* 020677BC */ rbrew_write32(cpu->mem, _t98, cpu->r[0]);
|
|
/* 020677C0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 020677C4 */ _t99 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020677C4 */ rbrew_write16(cpu->mem, _t99, (uint16_t)cpu->r[28]);
|
|
/* 020677C8 */ Gambit_fn_02068618(cpu);
|
|
/* 020677CC */ _t100 = cpu->r[29] + 0x0000016Au;
|
|
/* 020677CC */ cpu->r[4] = rbrew_read8(cpu->mem, _t100);
|
|
/* 020677D0 */ cpu->r[3] = cpu->r[29] + 0x0000015Cu;
|
|
/* 020677D4 */ /* nop */
|
|
/* 020677D8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 020677DC */ cpu->r[3] = cpu->r[29] + 0x0000015Cu;
|
|
/* 020677E0 */ Gambit_fn_02068268(cpu);
|
|
/* 020677E4 */ _t101 = cpu->r[29] + 0x0000019Cu;
|
|
/* 020677E4 */ rbrew_write32(cpu->mem, _t101, cpu->r[28]);
|
|
/* 020677E8 */ /* nop */
|
|
/* 020677EC */ _t102 = cpu->r[1] + 0x00000054u;
|
|
/* 020677EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 020677F0 */ cpu->lr = cpu->r[0];
|
|
/* 020677F4 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 020677F8 */ return;
|
|
}
|
|
|
|
// fn_020677FC @ 0x20677fc
|
|
void Gambit_fn_020677FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_020677FC: ; // 0x20677fc
|
|
/* 020677FC */ cpu->r[0] = cpu->lr;
|
|
/* 02067800 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02067800 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067800 */ cpu->r[1] = _t0;
|
|
/* 02067804 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067804 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02067808 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206780C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206780C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02067810 */ _t3 = cpu->r[31] + 0x0000019Cu;
|
|
/* 02067810 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02067814 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067818 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067818 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02067818 */ if (_t5) goto L_02067820; else goto L_0206781C;
|
|
L_0206781C: ; // 0x206781c
|
|
/* 0206781C */ Gambit_fn_02066AD0(cpu);
|
|
L_02067820: ; // 0x2067820
|
|
/* 02067820 */ cpu->r[3] = cpu->r[31] + 0x0000015Cu;
|
|
/* 02067824 */ Gambit_fn_02068728(cpu);
|
|
/* 02067828 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02067828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206782C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206782C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02067830 */ cpu->lr = cpu->r[0];
|
|
/* 02067834 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02067838 */ return;
|
|
}
|
|
|
|
// fn_02067800 @ 0x2067800
|
|
void Gambit_fn_02067800(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02067800: ; // 0x2067800
|
|
/* 02067800 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02067800 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067800 */ cpu->r[1] = _t0;
|
|
/* 02067804 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067804 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02067808 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206780C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206780C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02067810 */ _t3 = cpu->r[31] + 0x0000019Cu;
|
|
/* 02067810 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02067814 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067818 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067818 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02067818 */ if (_t5) goto L_02067820; else goto L_0206781C;
|
|
L_0206781C: ; // 0x206781c
|
|
/* 0206781C */ Gambit_fn_02066AD0(cpu);
|
|
L_02067820: ; // 0x2067820
|
|
/* 02067820 */ cpu->r[3] = cpu->r[31] + 0x0000015Cu;
|
|
/* 02067824 */ Gambit_fn_02068728(cpu);
|
|
/* 02067828 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02067828 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206782C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206782C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02067830 */ cpu->lr = cpu->r[0];
|
|
/* 02067834 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02067838 */ return;
|
|
}
|
|
|
|
// fn_0206783C @ 0x206783c
|
|
void Gambit_fn_0206783C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0206783C: ; // 0x206783c
|
|
/* 0206783C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02067840 */ _t0 = cpu->r[12] + 0x00001350u;
|
|
/* 02067840 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02067844 */ cpu->r[3] = 0x00000000u;
|
|
/* 02067848 */ _t1 = cpu->r[12] + 0x00000010u;
|
|
/* 02067848 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206784C */ return;
|
|
}
|
|
|
|
// fn_02067850 @ 0x2067850
|
|
void Gambit_fn_02067850(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;
|
|
|
|
L_02067850: ; // 0x2067850
|
|
/* 02067850 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02067850 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067850 */ cpu->r[1] = _t0;
|
|
/* 02067854 */ cpu->r[0] = cpu->lr;
|
|
/* 02067858 */ /* nop */
|
|
/* 0206785C */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 0206785C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02067860 */ Gambit_fn_027FAD20(cpu);
|
|
/* 02067864 */ cpu->r[30] = 0x10000000u;
|
|
/* 02067868 */ cpu->r[30] = cpu->r[30] + 0x00007274u;
|
|
/* 0206786C */ cpu->r[8] = 0x10000000u;
|
|
/* 02067870 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02067870 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02067874 */ cpu->r[0] = 0x00000000u;
|
|
/* 02067878 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067878 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0206787C */ cpu->r[29] = 0x00000001u;
|
|
/* 02067880 */ cpu->r[8] = cpu->r[8] + 0x000073FCu;
|
|
/* 02067884 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02067884 */ rbrew_write32(cpu->mem, _t4, cpu->r[3]);
|
|
/* 02067888 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206788C */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 0206788C */ rbrew_write32(cpu->mem, _t5, cpu->r[8]);
|
|
/* 02067890 */ Gambit_fn_0206807C(cpu);
|
|
/* 02067894 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067894 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02067898 */ _t7 = cpu->r[9] + 0x00000014u;
|
|
/* 02067898 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206789C */ cpu->ctr = cpu->r[10];
|
|
/* 020678A0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020678A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020678A8 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 020678A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 020678AC */ _t9 = cpu->r[11] + 0x00000014u;
|
|
/* 020678AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 020678B0 */ cpu->ctr = cpu->r[12];
|
|
/* 020678B4 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 020678B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020678B8 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 020678BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020678C0 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 020678C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020678C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 020678C8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020678C8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 020678C8 */ if (_t13) goto L_02067B40; else goto L_020678CC;
|
|
L_020678CC: ; // 0x20678cc
|
|
/* 020678CC */ cpu->r[28] = 0x00080000u;
|
|
/* 020678D0 */ cpu->r[31] = 0x10110000u;
|
|
/* 020678D4 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 020678D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 020678D8 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 020678DC */ _t15 = cpu->r[31] + 0x00007399u;
|
|
/* 020678DC */ cpu->r[31] = rbrew_read8(cpu->mem, _t15);
|
|
/* 020678E0 */ cpu->ctr = cpu->r[28];
|
|
/* 020678E4 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 020678E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t16);
|
|
/* 020678E8 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_020678EC: ; // 0x20678ec
|
|
/* 020678EC */ _t17 = cpu->r[6] + 0x00000000u;
|
|
/* 020678EC */ cpu->r[12] = rbrew_read8(cpu->mem, _t17);
|
|
/* 020678F0 */ _t18 = cpu->r[7] + 0x00000001u;
|
|
/* 020678F0 */ cpu->r[5] = rbrew_read8(cpu->mem, _t18);
|
|
/* 020678F0 */ cpu->r[7] = _t18;
|
|
/* 020678F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[5]);
|
|
/* 020678F8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020678F8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 020678F8 */ if (_t20) goto L_020678FC; else goto L_0206790C;
|
|
L_020678FC: ; // 0x20678fc
|
|
/* 020678FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 02067900 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067900 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02067900 */ if (_t22) goto L_02067B40; else goto L_02067904;
|
|
L_02067904: ; // 0x2067904
|
|
/* 02067904 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02067908 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02067908 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02067908 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 02067908 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02067908 */ if (_t25) goto L_020678EC; else goto L_0206790C;
|
|
L_0206790C: ; // 0x206790c
|
|
/* 0206790C */ cpu->r[0] = 0x10000000u;
|
|
/* 02067910 */ _t26 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02067910 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 02067914 */ cpu->r[0] = cpu->r[0] + 0x000073ECu;
|
|
/* 02067918 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067918 */ cpu->r[7] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0206791C */ _t28 = cpu->r[1] + 0x00000018u;
|
|
/* 0206791C */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 02067920 */ _t29 = cpu->r[7] + 0x00000014u;
|
|
/* 02067920 */ cpu->r[8] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02067924 */ cpu->ctr = cpu->r[8];
|
|
/* 02067928 */ cpu->r[0] = 0x00000001u;
|
|
/* 0206792C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02067930 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067934 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067934 */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02067938 */ _t31 = cpu->r[9] + 0x00000014u;
|
|
/* 02067938 */ cpu->r[10] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0206793C */ cpu->ctr = cpu->r[10];
|
|
/* 02067940 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02067944 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067948 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02067948 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0206794C */ _t33 = cpu->r[11] + 0x00000014u;
|
|
/* 0206794C */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02067950 */ cpu->ctr = cpu->r[12];
|
|
/* 02067954 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 02067954 */ cpu->r[27] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02067958 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 0206795C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067960 */ _t35 = cpu->r[1] + 0x00000018u;
|
|
/* 02067960 */ cpu->r[8] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02067964 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[8]);
|
|
/* 02067968 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067968 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02067968 */ if (_t37) goto L_02067B40; else goto L_0206796C;
|
|
L_0206796C: ; // 0x206796c
|
|
/* 0206796C */ _t38 = cpu->r[1] + 0x00000008u;
|
|
/* 0206796C */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02067970 */ cpu->ctr = cpu->r[28];
|
|
/* 02067974 */ cpu->r[5] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_02067978: ; // 0x2067978
|
|
/* 02067978 */ _t39 = cpu->r[12] + 0x00000000u;
|
|
/* 02067978 */ cpu->r[0] = rbrew_read8(cpu->mem, _t39);
|
|
/* 0206797C */ _t40 = cpu->r[5] + 0x00000001u;
|
|
/* 0206797C */ cpu->r[11] = rbrew_read8(cpu->mem, _t40);
|
|
/* 0206797C */ cpu->r[5] = _t40;
|
|
/* 02067980 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 02067984 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067984 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02067984 */ if (_t42) goto L_02067988; else goto L_02067998;
|
|
L_02067988: ; // 0x2067988
|
|
/* 02067988 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0206798C */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206798C */ _t44 = _t43 & 0x00000001u;
|
|
/* 0206798C */ if (_t44) goto L_02067B40; else goto L_02067990;
|
|
L_02067990: ; // 0x2067990
|
|
/* 02067990 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02067994 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02067994 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02067994 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 02067994 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02067994 */ if (_t47) goto L_02067978; else goto L_02067998;
|
|
L_02067998: ; // 0x2067998
|
|
/* 02067998 */ cpu->r[5] = 0x10000000u;
|
|
/* 0206799C */ _t48 = cpu->r[1] + 0x00000024u;
|
|
/* 0206799C */ rbrew_write32(cpu->mem, _t48, cpu->r[30]);
|
|
/* 020679A0 */ cpu->r[5] = cpu->r[5] + 0x000073F4u;
|
|
/* 020679A4 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020679A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t49);
|
|
/* 020679A8 */ _t50 = cpu->r[1] + 0x00000020u;
|
|
/* 020679A8 */ rbrew_write32(cpu->mem, _t50, cpu->r[5]);
|
|
/* 020679AC */ _t51 = cpu->r[6] + 0x00000014u;
|
|
/* 020679AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t51);
|
|
/* 020679B0 */ cpu->ctr = cpu->r[7];
|
|
/* 020679B4 */ cpu->r[0] = 0x00000001u;
|
|
/* 020679B8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020679BC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020679C0 */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020679C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t52);
|
|
/* 020679C4 */ _t53 = cpu->r[8] + 0x00000014u;
|
|
/* 020679C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t53);
|
|
/* 020679C8 */ cpu->ctr = cpu->r[9];
|
|
/* 020679CC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020679D0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020679D4 */ _t54 = cpu->r[1] + 0x00000024u;
|
|
/* 020679D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t54);
|
|
/* 020679D8 */ _t55 = cpu->r[10] + 0x00000014u;
|
|
/* 020679D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 020679DC */ cpu->ctr = cpu->r[0];
|
|
/* 020679E0 */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 020679E0 */ cpu->r[27] = rbrew_read32(cpu->mem, _t56);
|
|
/* 020679E4 */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 020679E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020679EC */ _t57 = cpu->r[1] + 0x00000020u;
|
|
/* 020679EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t57);
|
|
/* 020679F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[9]);
|
|
/* 020679F4 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020679F4 */ _t59 = _t58 & 0x00000001u;
|
|
/* 020679F4 */ if (_t59) goto L_02067B40; else goto L_020679F8;
|
|
L_020679F8: ; // 0x20679f8
|
|
/* 020679F8 */ _t60 = cpu->r[1] + 0x00000008u;
|
|
/* 020679F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t60);
|
|
/* 020679FC */ cpu->ctr = cpu->r[28];
|
|
/* 02067A00 */ cpu->r[11] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_02067A04: ; // 0x2067a04
|
|
/* 02067A04 */ _t61 = cpu->r[10] + 0x00000000u;
|
|
/* 02067A04 */ cpu->r[0] = rbrew_read8(cpu->mem, _t61);
|
|
/* 02067A08 */ _t62 = cpu->r[11] + 0x00000001u;
|
|
/* 02067A08 */ cpu->r[12] = rbrew_read8(cpu->mem, _t62);
|
|
/* 02067A08 */ cpu->r[11] = _t62;
|
|
/* 02067A0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 02067A10 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067A10 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02067A10 */ if (_t64) goto L_02067A14; else goto L_02067A24;
|
|
L_02067A14: ; // 0x2067a14
|
|
/* 02067A14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02067A18 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067A18 */ _t66 = _t65 & 0x00000001u;
|
|
/* 02067A18 */ if (_t66) goto L_02067B40; else goto L_02067A1C;
|
|
L_02067A1C: ; // 0x2067a1c
|
|
/* 02067A1C */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02067A20 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02067A20 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02067A20 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 02067A20 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02067A20 */ if (_t69) goto L_02067A04; else goto L_02067A24;
|
|
L_02067A24: ; // 0x2067a24
|
|
/* 02067A24 */ cpu->r[5] = 0x10000000u;
|
|
/* 02067A28 */ _t70 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02067A28 */ rbrew_write32(cpu->mem, _t70, cpu->r[30]);
|
|
/* 02067A2C */ cpu->r[5] = cpu->r[5] + 0x00007404u;
|
|
/* 02067A30 */ _t71 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067A30 */ cpu->r[6] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02067A34 */ _t72 = cpu->r[1] + 0x00000028u;
|
|
/* 02067A34 */ rbrew_write32(cpu->mem, _t72, cpu->r[5]);
|
|
/* 02067A38 */ _t73 = cpu->r[6] + 0x00000014u;
|
|
/* 02067A38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t73);
|
|
/* 02067A3C */ cpu->ctr = cpu->r[7];
|
|
/* 02067A40 */ cpu->r[0] = 0x00000001u;
|
|
/* 02067A44 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02067A48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067A4C */ _t74 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067A4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02067A50 */ _t75 = cpu->r[8] + 0x00000014u;
|
|
/* 02067A50 */ cpu->r[9] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02067A54 */ cpu->ctr = cpu->r[9];
|
|
/* 02067A58 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02067A5C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067A60 */ _t76 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02067A60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02067A64 */ _t77 = cpu->r[10] + 0x00000014u;
|
|
/* 02067A64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02067A68 */ cpu->ctr = cpu->r[11];
|
|
/* 02067A6C */ _t78 = cpu->r[1] + 0x00000008u;
|
|
/* 02067A6C */ cpu->r[27] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02067A70 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 02067A74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067A78 */ _t79 = cpu->r[1] + 0x00000028u;
|
|
/* 02067A78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02067A7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[10]);
|
|
/* 02067A80 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067A80 */ _t81 = _t80 & 0x00000001u;
|
|
/* 02067A80 */ if (_t81) goto L_02067B40; else goto L_02067A84;
|
|
L_02067A84: ; // 0x2067a84
|
|
/* 02067A84 */ _t82 = cpu->r[1] + 0x00000008u;
|
|
/* 02067A84 */ cpu->r[5] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02067A88 */ cpu->ctr = cpu->r[28];
|
|
/* 02067A8C */ cpu->r[9] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02067A90: ; // 0x2067a90
|
|
/* 02067A90 */ _t83 = cpu->r[5] + 0x00000000u;
|
|
/* 02067A90 */ cpu->r[6] = rbrew_read8(cpu->mem, _t83);
|
|
/* 02067A94 */ _t84 = cpu->r[9] + 0x00000001u;
|
|
/* 02067A94 */ cpu->r[12] = rbrew_read8(cpu->mem, _t84);
|
|
/* 02067A94 */ cpu->r[9] = _t84;
|
|
/* 02067A98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[12]);
|
|
/* 02067A9C */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067A9C */ _t86 = _t85 & 0x00000001u;
|
|
/* 02067A9C */ if (_t86) goto L_02067AA0; else goto L_02067AB0;
|
|
L_02067AA0: ; // 0x2067aa0
|
|
/* 02067AA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 02067AA4 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067AA4 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02067AA4 */ if (_t88) goto L_02067B40; else goto L_02067AA8;
|
|
L_02067AA8: ; // 0x2067aa8
|
|
/* 02067AA8 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02067AAC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02067AAC */ _t89 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02067AAC */ _t90 = _t89 >> (0x00000002u & 31u);
|
|
/* 02067AAC */ _t91 = _t90 & 0x00000001u;
|
|
/* 02067AAC */ if (_t91) goto L_02067A90; else goto L_02067AB0;
|
|
L_02067AB0: ; // 0x2067ab0
|
|
/* 02067AB0 */ cpu->r[0] = 0x10000000u;
|
|
/* 02067AB4 */ _t92 = cpu->r[1] + 0x00000034u;
|
|
/* 02067AB4 */ rbrew_write32(cpu->mem, _t92, cpu->r[30]);
|
|
/* 02067AB8 */ cpu->r[0] = cpu->r[0] + 0x0000740Cu;
|
|
/* 02067ABC */ _t93 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067ABC */ cpu->r[5] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02067AC0 */ _t94 = cpu->r[1] + 0x00000030u;
|
|
/* 02067AC0 */ rbrew_write32(cpu->mem, _t94, cpu->r[0]);
|
|
/* 02067AC4 */ _t95 = cpu->r[5] + 0x00000014u;
|
|
/* 02067AC4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t95);
|
|
/* 02067AC8 */ cpu->ctr = cpu->r[6];
|
|
/* 02067ACC */ cpu->r[0] = 0x00000001u;
|
|
/* 02067AD0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02067AD4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067AD8 */ _t96 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067AD8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t96);
|
|
/* 02067ADC */ _t97 = cpu->r[9] + 0x00000014u;
|
|
/* 02067ADC */ cpu->r[0] = rbrew_read32(cpu->mem, _t97);
|
|
/* 02067AE0 */ cpu->ctr = cpu->r[0];
|
|
/* 02067AE4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02067AE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067AEC */ _t98 = cpu->r[1] + 0x00000034u;
|
|
/* 02067AEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02067AF0 */ _t99 = cpu->r[12] + 0x00000014u;
|
|
/* 02067AF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02067AF4 */ cpu->ctr = cpu->r[0];
|
|
/* 02067AF8 */ _t100 = cpu->r[1] + 0x00000008u;
|
|
/* 02067AF8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t100);
|
|
/* 02067AFC */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 02067B00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067B04 */ _t101 = cpu->r[1] + 0x00000030u;
|
|
/* 02067B04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t101);
|
|
/* 02067B08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]);
|
|
/* 02067B0C */ _t102 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067B0C */ _t103 = _t102 & 0x00000001u;
|
|
/* 02067B0C */ if (_t103) goto L_02067B40; else goto L_02067B10;
|
|
L_02067B10: ; // 0x2067b10
|
|
/* 02067B10 */ _t104 = cpu->r[1] + 0x00000008u;
|
|
/* 02067B10 */ cpu->r[7] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02067B14 */ cpu->ctr = cpu->r[28];
|
|
/* 02067B18 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_02067B1C: ; // 0x2067b1c
|
|
/* 02067B1C */ _t105 = cpu->r[7] + 0x00000000u;
|
|
/* 02067B1C */ cpu->r[0] = rbrew_read8(cpu->mem, _t105);
|
|
/* 02067B20 */ _t106 = cpu->r[11] + 0x00000001u;
|
|
/* 02067B20 */ cpu->r[8] = rbrew_read8(cpu->mem, _t106);
|
|
/* 02067B20 */ cpu->r[11] = _t106;
|
|
/* 02067B24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02067B28 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067B28 */ _t108 = _t107 & 0x00000001u;
|
|
/* 02067B28 */ if (_t108) goto L_02067B2C; else goto L_02067B3C;
|
|
L_02067B2C: ; // 0x2067b2c
|
|
/* 02067B2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02067B30 */ _t109 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067B30 */ _t110 = _t109 & 0x00000001u;
|
|
/* 02067B30 */ if (_t110) goto L_02067B40; else goto L_02067B34;
|
|
L_02067B34: ; // 0x2067b34
|
|
/* 02067B34 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02067B38 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02067B38 */ _t111 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02067B38 */ _t112 = _t111 >> (0x00000002u & 31u);
|
|
/* 02067B38 */ _t113 = _t112 & 0x00000001u;
|
|
/* 02067B38 */ if (_t113) goto L_02067B1C; else goto L_02067B3C;
|
|
L_02067B3C: ; // 0x2067b3c
|
|
/* 02067B3C */ cpu->r[29] = 0x00000000u;
|
|
L_02067B40: ; // 0x2067b40
|
|
/* 02067B40 */ cpu->r[3] = rbrew_rlwinm(cpu->r[29], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02067B44 */ /* nop */
|
|
/* 02067B48 */ _t114 = cpu->r[1] + 0x00000054u;
|
|
/* 02067B48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t114);
|
|
/* 02067B4C */ cpu->lr = cpu->r[0];
|
|
/* 02067B50 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02067B54 */ return;
|
|
}
|
|
|
|
// fn_02067B58 @ 0x2067b58
|
|
void Gambit_fn_02067B58(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_02067B58: ; // 0x2067b58
|
|
/* 02067B58 */ cpu->r[0] = cpu->lr;
|
|
/* 02067B5C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02067B5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067B5C */ cpu->r[1] = _t0;
|
|
/* 02067B60 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067B60 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02067B64 */ cpu->r[31] = cpu->r[3];
|
|
/* 02067B68 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02067B68 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02067B6C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02067B6C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02067B70 */ Gambit_fn_02067850(cpu);
|
|
/* 02067B74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067B78 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067B78 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02067B78 */ if (_t5) goto L_02067B7C; else goto L_02067B98;
|
|
L_02067B7C: ; // 0x2067b7c
|
|
/* 02067B7C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02067B7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02067B80 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02067B80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02067B84 */ cpu->lr = cpu->r[0];
|
|
/* 02067B88 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067B88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02067B8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02067B90 */ cpu->r[3] = 0x00000000u;
|
|
/* 02067B94 */ return;
|
|
L_02067B98: ; // 0x2067b98
|
|
/* 02067B98 */ cpu->r[0] = 0x00000000u;
|
|
/* 02067B9C */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 02067B9C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02067BA0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02067BA0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02067BA4 */ Gambit_fn_027DF9A0(cpu);
|
|
/* 02067BA8 */ _t11 = cpu->r[3] + 0x000007D0u;
|
|
/* 02067BA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02067BAC */ _t12 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02067BAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02067BB0 */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02067BB0 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 02067BB4 */ _t14 = cpu->r[12] + 0x00000020u;
|
|
/* 02067BB4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02067BB8 */ cpu->r[11] = 0x101C0000u;
|
|
/* 02067BBC */ _t15 = cpu->r[31] + 0x00000014u;
|
|
/* 02067BBC */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[12]);
|
|
/* 02067BC0 */ _t16 = cpu->r[11] + 0x00001D34u;
|
|
/* 02067BC0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02067BC0 */ cpu->r[11] = _t16;
|
|
/* 02067BC4 */ _t17 = cpu->r[8] + 0x0000018Cu;
|
|
/* 02067BC4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t17);
|
|
/* 02067BC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02067BCC */ cpu->r[30] = cpu->r[31] + 0x0000000Cu;
|
|
/* 02067BD0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067BD0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02067BD0 */ if (_t19) goto L_02067CB8; else goto L_02067BD4;
|
|
L_02067BD4: ; // 0x2067bd4
|
|
/* 02067BD4 */ cpu->r[10] = 0x00000002u;
|
|
/* 02067BD8 */ _t20 = cpu->r[31] + 0x00000000u;
|
|
/* 02067BD8 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 02067BDC */ _t21 = cpu->r[11] + 0x00000000u;
|
|
/* 02067BDC */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02067BE0 */ _t22 = cpu->r[10] + 0x00000178u;
|
|
/* 02067BE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02067BE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02067BE8 */ cpu->r[12] = cpu->r[31] + 0x00000008u;
|
|
/* 02067BEC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067BEC */ _t24 = _t23 & 0x00000001u;
|
|
/* 02067BEC */ if (_t24) goto L_02067C4C; else goto L_02067BF0;
|
|
L_02067BF0: ; // 0x2067bf0
|
|
/* 02067BF0 */ _t25 = cpu->r[10] + 0x00000174u;
|
|
/* 02067BF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02067BF4 */ _t26 = cpu->r[10] + 0x00000170u;
|
|
/* 02067BF4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02067BF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[9]);
|
|
/* 02067BFC */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02067BFC */ _t28 = _t27 & 0x00000001u;
|
|
/* 02067BFC */ if (_t28) goto L_02067C04; else goto L_02067C00;
|
|
L_02067C00: ; // 0x2067c00
|
|
/* 02067C00 */ cpu->r[0] = cpu->r[0] - cpu->r[9];
|
|
L_02067C04: ; // 0x2067c04
|
|
/* 02067C04 */ _t29 = cpu->r[10] + 0x0000016Cu;
|
|
/* 02067C04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02067C08 */ cpu->r[8] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02067C0C */ _t30 = cpu->r[9] + cpu->r[8];
|
|
/* 02067C0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02067C10 */ _t31 = cpu->r[11] + 0x00000084u;
|
|
/* 02067C10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02067C14 */ cpu->r[3] = 0x00000000u;
|
|
/* 02067C18 */ _t32 = cpu->r[12] + 0x00000000u;
|
|
/* 02067C18 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 02067C1C */ Gambit_fn_027DF97C(cpu);
|
|
/* 02067C20 */ _t33 = cpu->r[3] + 0x000006A4u;
|
|
/* 02067C20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02067C24 */ _t34 = cpu->r[9] + 0x00000030u;
|
|
/* 02067C24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02067C28 */ _t35 = cpu->r[30] + 0x00000004u;
|
|
/* 02067C28 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 02067C2C */ _t36 = cpu->r[9] + 0x00000034u;
|
|
/* 02067C2C */ cpu->r[11] = rbrew_read8(cpu->mem, _t36);
|
|
/* 02067C30 */ _t37 = cpu->r[31] + 0x00000015u;
|
|
/* 02067C30 */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[11]);
|
|
/* 02067C34 */ _t38 = cpu->r[30] + 0x00000000u;
|
|
/* 02067C34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02067C38 */ cpu->r[10] = cpu->r[30] + 0x00000004u;
|
|
/* 02067C3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 02067C40 */ cpu->r[12] = 0x00000001u;
|
|
/* 02067C44 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02067C44 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02067C44 */ if (_t40) goto L_02067C8C; else goto L_02067C48;
|
|
L_02067C48: ; // 0x2067c48
|
|
/* 02067C48 */ goto L_02067C9C;
|
|
L_02067C4C: ; // 0x2067c4c
|
|
/* 02067C4C */ _t41 = cpu->r[10] + 0x0000016Cu;
|
|
/* 02067C4C */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02067C50 */ _t42 = cpu->r[11] + 0x00000000u;
|
|
/* 02067C50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02067C54 */ _t43 = cpu->r[11] + 0x00000084u;
|
|
/* 02067C54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02067C58 */ cpu->r[3] = 0x00000000u;
|
|
/* 02067C5C */ _t44 = cpu->r[12] + 0x00000000u;
|
|
/* 02067C5C */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 02067C60 */ Gambit_fn_027DF97C(cpu);
|
|
/* 02067C64 */ _t45 = cpu->r[3] + 0x000006A4u;
|
|
/* 02067C64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02067C68 */ _t46 = cpu->r[9] + 0x00000030u;
|
|
/* 02067C68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02067C6C */ _t47 = cpu->r[30] + 0x00000004u;
|
|
/* 02067C6C */ rbrew_write32(cpu->mem, _t47, cpu->r[10]);
|
|
/* 02067C70 */ _t48 = cpu->r[9] + 0x00000034u;
|
|
/* 02067C70 */ cpu->r[11] = rbrew_read8(cpu->mem, _t48);
|
|
/* 02067C74 */ _t49 = cpu->r[31] + 0x00000015u;
|
|
/* 02067C74 */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[11]);
|
|
/* 02067C78 */ _t50 = cpu->r[30] + 0x00000000u;
|
|
/* 02067C78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02067C7C */ cpu->r[10] = cpu->r[30] + 0x00000004u;
|
|
/* 02067C80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 02067C84 */ cpu->r[12] = 0x00000001u;
|
|
/* 02067C88 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02067C88 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02067C88 */ if (_t52) goto L_02067C8C; else goto L_02067C9C;
|
|
L_02067C8C: ; // 0x2067c8c
|
|
/* 02067C8C */ _t53 = cpu->r[10] + 0x00000000u;
|
|
/* 02067C8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02067C90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02067C94 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02067C94 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02067C94 */ if (_t55) goto L_02067C98; else goto L_02067C9C;
|
|
L_02067C98: ; // 0x2067c98
|
|
/* 02067C98 */ cpu->r[12] = 0x00000000u;
|
|
L_02067C9C: ; // 0x2067c9c
|
|
/* 02067C9C */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 02067C9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02067CA0 */ _t57 = cpu->r[1] + 0x00000008u;
|
|
/* 02067CA0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02067CA4 */ cpu->lr = cpu->r[0];
|
|
/* 02067CA8 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067CA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02067CAC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02067CB0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02067CB4 */ return;
|
|
L_02067CB8: ; // 0x2067cb8
|
|
/* 02067CB8 */ cpu->r[9] = 0x00000001u;
|
|
/* 02067CBC */ _t59 = cpu->r[31] + 0x00000000u;
|
|
/* 02067CBC */ rbrew_write32(cpu->mem, _t59, cpu->r[9]);
|
|
/* 02067CC0 */ _t60 = cpu->r[30] + 0x00000000u;
|
|
/* 02067CC0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02067CC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000001u);
|
|
/* 02067CC8 */ /* nop */
|
|
/* 02067CCC */ _t61 = cpu->r[1] + 0x00000008u;
|
|
/* 02067CCC */ cpu->r[30] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02067CD0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02067CD4 */ _t62 = cpu->r[1] + 0x00000014u;
|
|
/* 02067CD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02067CD8 */ _t63 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067CD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02067CDC */ cpu->lr = cpu->r[0];
|
|
/* 02067CE0 */ cpu->r[3] = cpu->r[3] ^ 0x00000001u;
|
|
/* 02067CE4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02067CE8 */ return;
|
|
}
|
|
|
|
// fn_02067B5C @ 0x2067b5c
|
|
void Gambit_fn_02067B5C(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_02067B5C: ; // 0x2067b5c
|
|
/* 02067B5C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02067B5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067B5C */ cpu->r[1] = _t0;
|
|
/* 02067B60 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067B60 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02067B64 */ cpu->r[31] = cpu->r[3];
|
|
/* 02067B68 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02067B68 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02067B6C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02067B6C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02067B70 */ Gambit_fn_02067850(cpu);
|
|
/* 02067B74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067B78 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067B78 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02067B78 */ if (_t5) goto L_02067B7C; else goto L_02067B98;
|
|
L_02067B7C: ; // 0x2067b7c
|
|
/* 02067B7C */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02067B7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02067B80 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02067B80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02067B84 */ cpu->lr = cpu->r[0];
|
|
/* 02067B88 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067B88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02067B8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02067B90 */ cpu->r[3] = 0x00000000u;
|
|
/* 02067B94 */ return;
|
|
L_02067B98: ; // 0x2067b98
|
|
/* 02067B98 */ cpu->r[0] = 0x00000000u;
|
|
/* 02067B9C */ _t9 = cpu->r[31] + 0x00000004u;
|
|
/* 02067B9C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02067BA0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02067BA0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02067BA4 */ Gambit_fn_027DF9A0(cpu);
|
|
/* 02067BA8 */ _t11 = cpu->r[3] + 0x000007D0u;
|
|
/* 02067BA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02067BAC */ _t12 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02067BAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02067BB0 */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02067BB0 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 02067BB4 */ _t14 = cpu->r[12] + 0x00000020u;
|
|
/* 02067BB4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t14);
|
|
/* 02067BB8 */ cpu->r[11] = 0x101C0000u;
|
|
/* 02067BBC */ _t15 = cpu->r[31] + 0x00000014u;
|
|
/* 02067BBC */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[12]);
|
|
/* 02067BC0 */ _t16 = cpu->r[11] + 0x00001D34u;
|
|
/* 02067BC0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02067BC0 */ cpu->r[11] = _t16;
|
|
/* 02067BC4 */ _t17 = cpu->r[8] + 0x0000018Cu;
|
|
/* 02067BC4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t17);
|
|
/* 02067BC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02067BCC */ cpu->r[30] = cpu->r[31] + 0x0000000Cu;
|
|
/* 02067BD0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067BD0 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02067BD0 */ if (_t19) goto L_02067CB8; else goto L_02067BD4;
|
|
L_02067BD4: ; // 0x2067bd4
|
|
/* 02067BD4 */ cpu->r[10] = 0x00000002u;
|
|
/* 02067BD8 */ _t20 = cpu->r[31] + 0x00000000u;
|
|
/* 02067BD8 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 02067BDC */ _t21 = cpu->r[11] + 0x00000000u;
|
|
/* 02067BDC */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02067BE0 */ _t22 = cpu->r[10] + 0x00000178u;
|
|
/* 02067BE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02067BE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02067BE8 */ cpu->r[12] = cpu->r[31] + 0x00000008u;
|
|
/* 02067BEC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067BEC */ _t24 = _t23 & 0x00000001u;
|
|
/* 02067BEC */ if (_t24) goto L_02067C4C; else goto L_02067BF0;
|
|
L_02067BF0: ; // 0x2067bf0
|
|
/* 02067BF0 */ _t25 = cpu->r[10] + 0x00000174u;
|
|
/* 02067BF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02067BF4 */ _t26 = cpu->r[10] + 0x00000170u;
|
|
/* 02067BF4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02067BF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[9]);
|
|
/* 02067BFC */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02067BFC */ _t28 = _t27 & 0x00000001u;
|
|
/* 02067BFC */ if (_t28) goto L_02067C04; else goto L_02067C00;
|
|
L_02067C00: ; // 0x2067c00
|
|
/* 02067C00 */ cpu->r[0] = cpu->r[0] - cpu->r[9];
|
|
L_02067C04: ; // 0x2067c04
|
|
/* 02067C04 */ _t29 = cpu->r[10] + 0x0000016Cu;
|
|
/* 02067C04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02067C08 */ cpu->r[8] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02067C0C */ _t30 = cpu->r[9] + cpu->r[8];
|
|
/* 02067C0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02067C10 */ _t31 = cpu->r[11] + 0x00000084u;
|
|
/* 02067C10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02067C14 */ cpu->r[3] = 0x00000000u;
|
|
/* 02067C18 */ _t32 = cpu->r[12] + 0x00000000u;
|
|
/* 02067C18 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 02067C1C */ Gambit_fn_027DF97C(cpu);
|
|
/* 02067C20 */ _t33 = cpu->r[3] + 0x000006A4u;
|
|
/* 02067C20 */ cpu->r[9] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02067C24 */ _t34 = cpu->r[9] + 0x00000030u;
|
|
/* 02067C24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02067C28 */ _t35 = cpu->r[30] + 0x00000004u;
|
|
/* 02067C28 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]);
|
|
/* 02067C2C */ _t36 = cpu->r[9] + 0x00000034u;
|
|
/* 02067C2C */ cpu->r[11] = rbrew_read8(cpu->mem, _t36);
|
|
/* 02067C30 */ _t37 = cpu->r[31] + 0x00000015u;
|
|
/* 02067C30 */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[11]);
|
|
/* 02067C34 */ _t38 = cpu->r[30] + 0x00000000u;
|
|
/* 02067C34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02067C38 */ cpu->r[10] = cpu->r[30] + 0x00000004u;
|
|
/* 02067C3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 02067C40 */ cpu->r[12] = 0x00000001u;
|
|
/* 02067C44 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02067C44 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02067C44 */ if (_t40) goto L_02067C8C; else goto L_02067C48;
|
|
L_02067C48: ; // 0x2067c48
|
|
/* 02067C48 */ goto L_02067C9C;
|
|
L_02067C4C: ; // 0x2067c4c
|
|
/* 02067C4C */ _t41 = cpu->r[10] + 0x0000016Cu;
|
|
/* 02067C4C */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02067C50 */ _t42 = cpu->r[11] + 0x00000000u;
|
|
/* 02067C50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02067C54 */ _t43 = cpu->r[11] + 0x00000084u;
|
|
/* 02067C54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02067C58 */ cpu->r[3] = 0x00000000u;
|
|
/* 02067C5C */ _t44 = cpu->r[12] + 0x00000000u;
|
|
/* 02067C5C */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 02067C60 */ Gambit_fn_027DF97C(cpu);
|
|
/* 02067C64 */ _t45 = cpu->r[3] + 0x000006A4u;
|
|
/* 02067C64 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02067C68 */ _t46 = cpu->r[9] + 0x00000030u;
|
|
/* 02067C68 */ cpu->r[10] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02067C6C */ _t47 = cpu->r[30] + 0x00000004u;
|
|
/* 02067C6C */ rbrew_write32(cpu->mem, _t47, cpu->r[10]);
|
|
/* 02067C70 */ _t48 = cpu->r[9] + 0x00000034u;
|
|
/* 02067C70 */ cpu->r[11] = rbrew_read8(cpu->mem, _t48);
|
|
/* 02067C74 */ _t49 = cpu->r[31] + 0x00000015u;
|
|
/* 02067C74 */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[11]);
|
|
/* 02067C78 */ _t50 = cpu->r[30] + 0x00000000u;
|
|
/* 02067C78 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02067C7C */ cpu->r[10] = cpu->r[30] + 0x00000004u;
|
|
/* 02067C80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 02067C84 */ cpu->r[12] = 0x00000001u;
|
|
/* 02067C88 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02067C88 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02067C88 */ if (_t52) goto L_02067C8C; else goto L_02067C9C;
|
|
L_02067C8C: ; // 0x2067c8c
|
|
/* 02067C8C */ _t53 = cpu->r[10] + 0x00000000u;
|
|
/* 02067C8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02067C90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 02067C94 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02067C94 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02067C94 */ if (_t55) goto L_02067C98; else goto L_02067C9C;
|
|
L_02067C98: ; // 0x2067c98
|
|
/* 02067C98 */ cpu->r[12] = 0x00000000u;
|
|
L_02067C9C: ; // 0x2067c9c
|
|
/* 02067C9C */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 02067C9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02067CA0 */ _t57 = cpu->r[1] + 0x00000008u;
|
|
/* 02067CA0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02067CA4 */ cpu->lr = cpu->r[0];
|
|
/* 02067CA8 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067CA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02067CAC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02067CB0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02067CB4 */ return;
|
|
L_02067CB8: ; // 0x2067cb8
|
|
/* 02067CB8 */ cpu->r[9] = 0x00000001u;
|
|
/* 02067CBC */ _t59 = cpu->r[31] + 0x00000000u;
|
|
/* 02067CBC */ rbrew_write32(cpu->mem, _t59, cpu->r[9]);
|
|
/* 02067CC0 */ _t60 = cpu->r[30] + 0x00000000u;
|
|
/* 02067CC0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02067CC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000001u);
|
|
/* 02067CC8 */ /* nop */
|
|
/* 02067CCC */ _t61 = cpu->r[1] + 0x00000008u;
|
|
/* 02067CCC */ cpu->r[30] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02067CD0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02067CD4 */ _t62 = cpu->r[1] + 0x00000014u;
|
|
/* 02067CD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02067CD8 */ _t63 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067CD8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02067CDC */ cpu->lr = cpu->r[0];
|
|
/* 02067CE0 */ cpu->r[3] = cpu->r[3] ^ 0x00000001u;
|
|
/* 02067CE4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02067CE8 */ return;
|
|
}
|
|
|
|
// fn_02067CF0 @ 0x2067cf0
|
|
void Gambit_fn_02067CF0(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_02067CF0: ; // 0x2067cf0
|
|
/* 02067CF0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02067CF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067CF0 */ cpu->r[1] = _t0;
|
|
/* 02067CF4 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02067CF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02067CF8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02067CFC */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02067CFC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02067D00 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02067D04 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02067D04 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02067D08 */ _t4 = cpu->r[30] + 0x00000164u;
|
|
/* 02067D08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02067D0C */ _t5 = cpu->r[12] + 0x00003630u;
|
|
/* 02067D0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02067D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02067D14 */ _t6 = cpu->r[12] + 0x00000074u;
|
|
/* 02067D14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02067D18 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067D18 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02067D18 */ if (_t8) goto L_02067D1C; else goto L_02067D84;
|
|
L_02067D1C: ; // 0x2067d1c
|
|
/* 02067D1C */ Gambit_fn_0206783C(cpu);
|
|
/* 02067D20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067D24 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067D24 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02067D24 */ if (_t10) goto L_02067D28; else goto L_02067D38;
|
|
L_02067D28: ; // 0x2067d28
|
|
/* 02067D28 */ _t11 = cpu->r[30] + 0x00000194u;
|
|
/* 02067D28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02067D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067D30 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067D30 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02067D30 */ if (_t13) goto L_02067D58; else goto L_02067D34;
|
|
L_02067D34: ; // 0x2067d34
|
|
/* 02067D34 */ goto L_02067D48;
|
|
L_02067D38: ; // 0x2067d38
|
|
/* 02067D38 */ _t14 = cpu->r[30] + 0x0000019Cu;
|
|
/* 02067D38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02067D3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067D40 */ _t15 = cpu->r[30] + 0x00000194u;
|
|
/* 02067D40 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
/* 02067D44 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067D44 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02067D44 */ if (_t17) goto L_02067D58; else goto L_02067D48;
|
|
L_02067D48: ; // 0x2067d48
|
|
/* 02067D48 */ _t18 = cpu->r[3] + 0x00000000u;
|
|
/* 02067D48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02067D4C */ _t19 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02067D4C */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02067D50 */ cpu->ctr = cpu->r[10];
|
|
/* 02067D54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02067D58: ; // 0x2067d58
|
|
/* 02067D58 */ cpu->r[3] = cpu->r[31];
|
|
/* 02067D5C */ Gambit_fn_0206EE0C(cpu);
|
|
/* 02067D60 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02067D64 */ Gambit_fn_0206FF58(cpu);
|
|
/* 02067D68 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02067D6C */ Gambit_fn_02067B58(cpu);
|
|
/* 02067D70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067D74 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067D74 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02067D74 */ if (_t21) goto L_02067D84; else goto L_02067D78;
|
|
L_02067D78: ; // 0x2067d78
|
|
/* 02067D78 */ cpu->r[3] = cpu->r[31];
|
|
/* 02067D7C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02067D80 */ Gambit_fn_0206EEC8(cpu);
|
|
L_02067D84: ; // 0x2067d84
|
|
/* 02067D84 */ _t22 = cpu->r[30] + 0x00000198u;
|
|
/* 02067D84 */ cpu->r[0] = rbrew_read8(cpu->mem, _t22);
|
|
/* 02067D88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02067D8C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067D8C */ _t24 = _t23 & 0x00000001u;
|
|
/* 02067D8C */ if (_t24) goto L_02067DC0; else goto L_02067D90;
|
|
L_02067D90: ; // 0x2067d90
|
|
/* 02067D90 */ cpu->r[3] = cpu->r[31];
|
|
/* 02067D94 */ Gambit_fn_0206EE60(cpu);
|
|
/* 02067D98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067D9C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067D9C */ _t26 = _t25 & 0x00000001u;
|
|
/* 02067D9C */ if (_t26) goto L_02067DA8; else goto L_02067DA0;
|
|
L_02067DA0: ; // 0x2067da0
|
|
/* 02067DA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02067DA4 */ Gambit_fn_0206EE20(cpu);
|
|
L_02067DA8: ; // 0x2067da8
|
|
/* 02067DA8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02067DAC */ Gambit_fn_0206EF38(cpu);
|
|
/* 02067DB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067DB4 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067DB4 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02067DB4 */ if (_t28) goto L_02067DC0; else goto L_02067DB8;
|
|
L_02067DB8: ; // 0x2067db8
|
|
/* 02067DB8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02067DBC */ Gambit_fn_0206EF0C(cpu);
|
|
L_02067DC0: ; // 0x2067dc0
|
|
/* 02067DC0 */ _t29 = cpu->r[30] + 0x00000194u;
|
|
/* 02067DC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02067DC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067DC8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067DC8 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02067DC8 */ if (_t31) goto L_02067E0C; else goto L_02067DCC;
|
|
L_02067DCC: ; // 0x2067dcc
|
|
/* 02067DCC */ _t32 = cpu->r[30] + 0x00000198u;
|
|
/* 02067DCC */ cpu->r[10] = rbrew_read8(cpu->mem, _t32);
|
|
/* 02067DD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02067DD4 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067DD4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02067DD4 */ if (_t34) goto L_02067DF4; else goto L_02067DD8;
|
|
L_02067DD8: ; // 0x2067dd8
|
|
/* 02067DD8 */ _t35 = cpu->r[3] + 0x00000000u;
|
|
/* 02067DD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02067DDC */ _t36 = cpu->r[12] + 0x00000014u;
|
|
/* 02067DDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02067DE0 */ cpu->ctr = cpu->r[0];
|
|
/* 02067DE4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067DE8 */ _t37 = cpu->r[30] + 0x00000194u;
|
|
/* 02067DE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02067DEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067DF0 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067DF0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02067DF0 */ if (_t39) goto L_02067E0C; else goto L_02067DF4;
|
|
L_02067DF4: ; // 0x2067df4
|
|
/* 02067DF4 */ _t40 = cpu->r[3] + 0x00000000u;
|
|
/* 02067DF4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02067DF8 */ _t41 = cpu->r[10] + 0x0000001Cu;
|
|
/* 02067DF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02067DFC */ cpu->ctr = cpu->r[0];
|
|
/* 02067E00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02067E04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067E08 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067E08 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02067E08 */ if (_t43) goto L_02067E38; else goto L_02067E0C;
|
|
L_02067E0C: ; // 0x2067e0c
|
|
/* 02067E0C */ cpu->r[3] = cpu->r[31];
|
|
/* 02067E10 */ Gambit_fn_0206EE48(cpu);
|
|
/* 02067E14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067E18 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067E18 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02067E18 */ if (_t45) goto L_02067E38; else goto L_02067E1C;
|
|
L_02067E1C: ; // 0x2067e1c
|
|
/* 02067E1C */ cpu->r[3] = cpu->r[31];
|
|
/* 02067E20 */ Gambit_fn_0206EF20(cpu);
|
|
/* 02067E24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067E28 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067E28 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02067E28 */ if (_t47) goto L_02067E38; else goto L_02067E2C;
|
|
L_02067E2C: ; // 0x2067e2c
|
|
/* 02067E2C */ cpu->r[3] = cpu->r[30] + 0x0000015Cu;
|
|
/* 02067E30 */ cpu->r[4] = 0x00000000u;
|
|
/* 02067E34 */ Gambit_fn_020682F0(cpu);
|
|
L_02067E38: ; // 0x2067e38
|
|
/* 02067E38 */ _t48 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02067E38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02067E3C */ _t49 = cpu->r[1] + 0x00000020u;
|
|
/* 02067E3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02067E40 */ cpu->lr = cpu->r[0];
|
|
/* 02067E44 */ _t50 = cpu->r[1] + 0x00000024u;
|
|
/* 02067E44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02067E48 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02067E4C */ return;
|
|
}
|
|
|
|
// fn_02067E54 @ 0x2067e54
|
|
void Gambit_fn_02067E54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02067E54: ; // 0x2067e54
|
|
/* 02067E54 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02067E54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067E54 */ cpu->r[1] = _t0;
|
|
/* 02067E58 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02067E58 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02067E5C */ cpu->r[30] = cpu->r[3];
|
|
/* 02067E60 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067E60 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02067E64 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02067E68 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02067E68 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02067E6C */ _t4 = cpu->r[30] + 0x00000164u;
|
|
/* 02067E6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02067E70 */ _t5 = cpu->r[12] + 0x00003630u;
|
|
/* 02067E70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02067E74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02067E78 */ _t6 = cpu->r[12] + 0x00000074u;
|
|
/* 02067E78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02067E7C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067E7C */ _t8 = _t7 & 0x00000001u;
|
|
/* 02067E7C */ if (_t8) goto L_02067E80; else goto L_02067E88;
|
|
L_02067E80: ; // 0x2067e80
|
|
/* 02067E80 */ cpu->r[3] = cpu->r[31];
|
|
/* 02067E84 */ Gambit_fn_0206EE74(cpu);
|
|
L_02067E88: ; // 0x2067e88
|
|
/* 02067E88 */ _t9 = cpu->r[30] + 0x00000198u;
|
|
/* 02067E88 */ cpu->r[0] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02067E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02067E90 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067E90 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02067E90 */ if (_t11) goto L_02067EAC; else goto L_02067E94;
|
|
L_02067E94: ; // 0x2067e94
|
|
/* 02067E94 */ cpu->r[3] = cpu->r[31];
|
|
/* 02067E98 */ Gambit_fn_0206EEB4(cpu);
|
|
/* 02067E9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067EA0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067EA0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02067EA0 */ if (_t13) goto L_02067EAC; else goto L_02067EA4;
|
|
L_02067EA4: ; // 0x2067ea4
|
|
/* 02067EA4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02067EA8 */ Gambit_fn_0206EE88(cpu);
|
|
L_02067EAC: ; // 0x2067eac
|
|
/* 02067EAC */ cpu->r[3] = cpu->r[31];
|
|
/* 02067EB0 */ Gambit_fn_0206EE9C(cpu);
|
|
/* 02067EB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067EB8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067EB8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02067EB8 */ if (_t15) goto L_02067EC8; else goto L_02067EBC;
|
|
L_02067EBC: ; // 0x2067ebc
|
|
/* 02067EBC */ cpu->r[3] = cpu->r[30] + 0x0000015Cu;
|
|
/* 02067EC0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02067EC4 */ Gambit_fn_020682F0(cpu);
|
|
L_02067EC8: ; // 0x2067ec8
|
|
/* 02067EC8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02067EC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02067ECC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02067ECC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02067ED0 */ cpu->lr = cpu->r[0];
|
|
/* 02067ED4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067ED4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02067ED8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02067EDC */ return;
|
|
}
|
|
|
|
// fn_02067EE0 @ 0x2067ee0
|
|
void Gambit_fn_02067EE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02067EE0: ; // 0x2067ee0
|
|
/* 02067EE0 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02067EE4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02067EE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067EE4 */ cpu->r[1] = _t0;
|
|
/* 02067EE8 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02067EEC */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02067EF0 */ _t1 = cpu->r[10] + 0xFFFFD4DCu;
|
|
/* 02067EF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02067EF0 */ cpu->r[10] = _t1;
|
|
/* 02067EF4 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02067EF8 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02067EF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02067EFC */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02067F00 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02067F04 */ _t3 = cpu->r[7] + 0xFFFFD4ECu;
|
|
/* 02067F04 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02067F04 */ cpu->r[7] = _t3;
|
|
/* 02067F08 */ _t4 = cpu->r[8] + 0xFFFFD4E4u;
|
|
/* 02067F08 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02067F08 */ cpu->r[8] = _t4;
|
|
/* 02067F0C */ cpu->r[0] = 0x00000002u;
|
|
/* 02067F10 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02067F10 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02067F14 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02067F18 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02067F18 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02067F1C */ cpu->r[12] = 0x101E0000u;
|
|
/* 02067F20 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02067F20 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02067F24 */ _t8 = cpu->r[8] + 0xFFFFD4FCu;
|
|
/* 02067F24 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02067F24 */ cpu->r[8] = _t8;
|
|
/* 02067F28 */ _t9 = cpu->r[12] + 0xFFFFD4F4u;
|
|
/* 02067F28 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02067F28 */ cpu->r[12] = _t9;
|
|
/* 02067F2C */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02067F2C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02067F30 */ cpu->r[0] = 0x00000004u;
|
|
/* 02067F34 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02067F34 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02067F38 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02067F3C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02067F3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02067F40 */ _t13 = cpu->r[11] + 0xFFFFD504u;
|
|
/* 02067F40 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02067F44 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02067F48 */ return;
|
|
}
|
|
|
|
// fn_02067EE4 @ 0x2067ee4
|
|
void Gambit_fn_02067EE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02067EE4: ; // 0x2067ee4
|
|
/* 02067EE4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02067EE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067EE4 */ cpu->r[1] = _t0;
|
|
/* 02067EE8 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02067EEC */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02067EF0 */ _t1 = cpu->r[10] + 0xFFFFD4DCu;
|
|
/* 02067EF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02067EF0 */ cpu->r[10] = _t1;
|
|
/* 02067EF4 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02067EF8 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02067EF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02067EFC */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02067F00 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02067F04 */ _t3 = cpu->r[7] + 0xFFFFD4ECu;
|
|
/* 02067F04 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02067F04 */ cpu->r[7] = _t3;
|
|
/* 02067F08 */ _t4 = cpu->r[8] + 0xFFFFD4E4u;
|
|
/* 02067F08 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02067F08 */ cpu->r[8] = _t4;
|
|
/* 02067F0C */ cpu->r[0] = 0x00000002u;
|
|
/* 02067F10 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02067F10 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02067F14 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02067F18 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02067F18 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02067F1C */ cpu->r[12] = 0x101E0000u;
|
|
/* 02067F20 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02067F20 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02067F24 */ _t8 = cpu->r[8] + 0xFFFFD4FCu;
|
|
/* 02067F24 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02067F24 */ cpu->r[8] = _t8;
|
|
/* 02067F28 */ _t9 = cpu->r[12] + 0xFFFFD4F4u;
|
|
/* 02067F28 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02067F28 */ cpu->r[12] = _t9;
|
|
/* 02067F2C */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02067F2C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02067F30 */ cpu->r[0] = 0x00000004u;
|
|
/* 02067F34 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02067F34 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02067F38 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02067F3C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02067F3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02067F40 */ _t13 = cpu->r[11] + 0xFFFFD504u;
|
|
/* 02067F40 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02067F44 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02067F48 */ return;
|
|
}
|
|
|
|
// fn_02067F4C @ 0x2067f4c
|
|
void Gambit_fn_02067F4C(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_02067F4C: ; // 0x2067f4c
|
|
/* 02067F4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02067F50 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067F50 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02067F50 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02067F50 */ goto L_02067F54;
|
|
L_02067F54: ; // 0x2067f54
|
|
/* 02067F54 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02067F54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02067F58 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067F58 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02067F58 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02067F58 */ goto L_02067F5C;
|
|
L_02067F5C: ; // 0x2067f5c
|
|
/* 02067F5C */ 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_02067F64 @ 0x2067f64
|
|
void Gambit_fn_02067F64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02067F64: ; // 0x2067f64
|
|
/* 02067F64 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02067F64 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067F64 */ cpu->r[1] = _t0;
|
|
/* 02067F68 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067F68 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02067F6C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02067F6C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02067F70 */ cpu->r[30] = cpu->r[3];
|
|
/* 02067F70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02067F74 */ cpu->r[31] = cpu->r[4];
|
|
/* 02067F78 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02067F78 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02067F7C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067F7C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02067F7C */ if (_t5) goto L_02067FC0; else goto L_02067F80;
|
|
L_02067F80: ; // 0x2067f80
|
|
/* 02067F80 */ cpu->r[0] = 0x10000000u;
|
|
/* 02067F84 */ cpu->r[3] = cpu->r[30] + 0x0000010Cu;
|
|
/* 02067F88 */ cpu->r[0] = cpu->r[0] + 0x000072C4u;
|
|
/* 02067F8C */ cpu->r[4] = 0x00000002u;
|
|
/* 02067F90 */ _t6 = cpu->r[30] + 0x00000020u;
|
|
/* 02067F90 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02067F94 */ Gambit_fn_02928E8C(cpu);
|
|
/* 02067F98 */ cpu->r[3] = cpu->r[30] + 0x000000C8u;
|
|
/* 02067F9C */ cpu->r[4] = 0x00000002u;
|
|
/* 02067FA0 */ Gambit_fn_02928E8C(cpu);
|
|
/* 02067FA4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02067FA8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02067FAC */ Gambit_fn_028136EC(cpu);
|
|
/* 02067FB0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02067FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02067FB4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067FB4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02067FB4 */ if (_t8) goto L_02067FC0; else goto L_02067FB8;
|
|
L_02067FB8: ; // 0x2067fb8
|
|
/* 02067FB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02067FBC */ Gambit_fn_02801BB0(cpu);
|
|
L_02067FC0: ; // 0x2067fc0
|
|
/* 02067FC0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02067FC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02067FC4 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02067FC4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02067FC8 */ cpu->lr = cpu->r[0];
|
|
/* 02067FCC */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067FCC */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02067FD0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02067FD4 */ return;
|
|
}
|
|
|
|
// fn_02067FD8 @ 0x2067fd8
|
|
void Gambit_fn_02067FD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02067FD8: ; // 0x2067fd8
|
|
/* 02067FD8 */ cpu->r[0] = cpu->lr;
|
|
/* 02067FDC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02067FDC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067FDC */ cpu->r[1] = _t0;
|
|
/* 02067FE0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067FE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02067FE4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02067FE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02067FE8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02067FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02067FEC */ cpu->r[31] = cpu->r[4];
|
|
/* 02067FF0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02067FF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02067FF4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067FF4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02067FF4 */ if (_t5) goto L_02068064; else goto L_02067FF8;
|
|
L_02067FF8: ; // 0x2067ff8
|
|
/* 02067FF8 */ cpu->r[12] = 0x10000000u;
|
|
/* 02067FFC */ cpu->r[3] = cpu->r[30] + 0x00000158u;
|
|
/* 02068000 */ cpu->r[12] = cpu->r[12] + 0x000074E0u;
|
|
/* 02068004 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068008 */ _t6 = cpu->r[30] + 0x00000020u;
|
|
/* 02068008 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 0206800C */ cpu->r[0] = cpu->r[0] + 0x000074F0u;
|
|
/* 02068010 */ cpu->r[4] = 0x00000002u;
|
|
/* 02068014 */ _t7 = cpu->r[30] + 0x00000154u;
|
|
/* 02068014 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02068018 */ Gambit_fn_02066ADC(cpu);
|
|
/* 0206801C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02068020 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068020 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02068020 */ if (_t9) goto L_02068054; else goto L_02068024;
|
|
L_02068024: ; // 0x2068024
|
|
/* 02068024 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068028 */ cpu->r[3] = cpu->r[30] + 0x0000010Cu;
|
|
/* 0206802C */ cpu->r[0] = cpu->r[0] + 0x000072C4u;
|
|
/* 02068030 */ cpu->r[4] = 0x00000002u;
|
|
/* 02068034 */ _t10 = cpu->r[30] + 0x00000020u;
|
|
/* 02068034 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02068038 */ Gambit_fn_02928E8C(cpu);
|
|
/* 0206803C */ cpu->r[3] = cpu->r[30] + 0x000000C8u;
|
|
/* 02068040 */ cpu->r[4] = 0x00000002u;
|
|
/* 02068044 */ Gambit_fn_02928E8C(cpu);
|
|
/* 02068048 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206804C */ cpu->r[4] = 0x00000000u;
|
|
/* 02068050 */ Gambit_fn_028136EC(cpu);
|
|
L_02068054: ; // 0x2068054
|
|
/* 02068054 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02068054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02068058 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068058 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02068058 */ if (_t12) goto L_02068064; else goto L_0206805C;
|
|
L_0206805C: ; // 0x206805c
|
|
/* 0206805C */ cpu->r[3] = cpu->r[30];
|
|
/* 02068060 */ Gambit_fn_02801BB0(cpu);
|
|
L_02068064: ; // 0x2068064
|
|
/* 02068064 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02068064 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02068068 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02068068 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206806C */ cpu->lr = cpu->r[0];
|
|
/* 02068070 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068070 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02068074 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02068078 */ return;
|
|
}
|
|
|
|
// fn_02067FDC @ 0x2067fdc
|
|
void Gambit_fn_02067FDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02067FDC: ; // 0x2067fdc
|
|
/* 02067FDC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02067FDC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02067FDC */ cpu->r[1] = _t0;
|
|
/* 02067FE0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02067FE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02067FE4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02067FE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02067FE8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02067FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02067FEC */ cpu->r[31] = cpu->r[4];
|
|
/* 02067FF0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02067FF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02067FF4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02067FF4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02067FF4 */ if (_t5) goto L_02068064; else goto L_02067FF8;
|
|
L_02067FF8: ; // 0x2067ff8
|
|
/* 02067FF8 */ cpu->r[12] = 0x10000000u;
|
|
/* 02067FFC */ cpu->r[3] = cpu->r[30] + 0x00000158u;
|
|
/* 02068000 */ cpu->r[12] = cpu->r[12] + 0x000074E0u;
|
|
/* 02068004 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068008 */ _t6 = cpu->r[30] + 0x00000020u;
|
|
/* 02068008 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 0206800C */ cpu->r[0] = cpu->r[0] + 0x000074F0u;
|
|
/* 02068010 */ cpu->r[4] = 0x00000002u;
|
|
/* 02068014 */ _t7 = cpu->r[30] + 0x00000154u;
|
|
/* 02068014 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02068018 */ Gambit_fn_02066ADC(cpu);
|
|
/* 0206801C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02068020 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068020 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02068020 */ if (_t9) goto L_02068054; else goto L_02068024;
|
|
L_02068024: ; // 0x2068024
|
|
/* 02068024 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068028 */ cpu->r[3] = cpu->r[30] + 0x0000010Cu;
|
|
/* 0206802C */ cpu->r[0] = cpu->r[0] + 0x000072C4u;
|
|
/* 02068030 */ cpu->r[4] = 0x00000002u;
|
|
/* 02068034 */ _t10 = cpu->r[30] + 0x00000020u;
|
|
/* 02068034 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02068038 */ Gambit_fn_02928E8C(cpu);
|
|
/* 0206803C */ cpu->r[3] = cpu->r[30] + 0x000000C8u;
|
|
/* 02068040 */ cpu->r[4] = 0x00000002u;
|
|
/* 02068044 */ Gambit_fn_02928E8C(cpu);
|
|
/* 02068048 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206804C */ cpu->r[4] = 0x00000000u;
|
|
/* 02068050 */ Gambit_fn_028136EC(cpu);
|
|
L_02068054: ; // 0x2068054
|
|
/* 02068054 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02068054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02068058 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068058 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02068058 */ if (_t12) goto L_02068064; else goto L_0206805C;
|
|
L_0206805C: ; // 0x206805c
|
|
/* 0206805C */ cpu->r[3] = cpu->r[30];
|
|
/* 02068060 */ Gambit_fn_02801BB0(cpu);
|
|
L_02068064: ; // 0x2068064
|
|
/* 02068064 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02068064 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02068068 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02068068 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206806C */ cpu->lr = cpu->r[0];
|
|
/* 02068070 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068070 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02068074 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02068078 */ return;
|
|
}
|
|
|
|
// fn_0206807C @ 0x206807c
|
|
void Gambit_fn_0206807C(CPUState* cpu) {
|
|
L_0206807C: ; // 0x206807c
|
|
/* 0206807C */ return;
|
|
}
|
|
|
|
// fn_02068080 @ 0x2068080
|
|
void Gambit_fn_02068080(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_02068080: ; // 0x2068080
|
|
/* 02068080 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02068084 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068084 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02068084 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02068084 */ goto L_02068088;
|
|
L_02068088: ; // 0x2068088
|
|
/* 02068088 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02068088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206808C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206808C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0206808C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206808C */ goto L_02068090;
|
|
L_02068090: ; // 0x2068090
|
|
/* 02068090 */ 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_02068094 @ 0x2068094
|
|
void Gambit_fn_02068094(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068094: ; // 0x2068094
|
|
/* 02068094 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02068094 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068098 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02068098 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206809C */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 020680A0 */ cpu->r[11] = 0x10110000u;
|
|
/* 020680A4 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 020680A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 020680A8 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 020680A8 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 020680AC */ return;
|
|
}
|
|
|
|
// fn_020680B0 @ 0x20680b0
|
|
void Gambit_fn_020680B0(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_020680B0: ; // 0x20680b0
|
|
/* 020680B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020680B4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020680B4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 020680B4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 020680B4 */ goto L_020680B8;
|
|
L_020680B8: ; // 0x20680b8
|
|
/* 020680B8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020680B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020680BC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020680BC */ _t3 = _t2 & 0x00000001u;
|
|
/* 020680BC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 020680BC */ goto L_020680C0;
|
|
L_020680C0: ; // 0x20680c0
|
|
/* 020680C0 */ 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_020680C4 @ 0x20680c4
|
|
void Gambit_fn_020680C4(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_020680C4: ; // 0x20680c4
|
|
/* 020680C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020680C8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020680C8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 020680C8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 020680C8 */ goto L_020680CC;
|
|
L_020680CC: ; // 0x20680cc
|
|
/* 020680CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020680CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020680D0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020680D0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 020680D0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 020680D0 */ goto L_020680D4;
|
|
L_020680D4: ; // 0x20680d4
|
|
/* 020680D4 */ 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_020680D8 @ 0x20680d8
|
|
void Gambit_fn_020680D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_020680D8: ; // 0x20680d8
|
|
/* 020680D8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 020680DC */ _t0 = cpu->r[12] + 0xFFFFDAE4u;
|
|
/* 020680DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 020680E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 020680E4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 020680E8 */ cpu->r[12] = cpu->r[12] + 0xFFFFDD7Cu;
|
|
/* 020680EC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020680EC */ _t2 = _t1 & 0x00000001u;
|
|
/* 020680EC */ if (_t2) goto L_020680F0; else goto L_02068108;
|
|
L_020680F0: ; // 0x20680f0
|
|
/* 020680F0 */ cpu->r[0] = 0x10000000u;
|
|
/* 020680F4 */ cpu->r[9] = 0x00000001u;
|
|
/* 020680F8 */ cpu->r[8] = 0x101D0000u;
|
|
/* 020680FC */ cpu->r[0] = cpu->r[0] + 0x000072D4u;
|
|
/* 02068100 */ _t3 = cpu->r[8] + 0xFFFFDAE4u;
|
|
/* 02068100 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02068104 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02068104 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_02068108: ; // 0x2068108
|
|
/* 02068108 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0206810C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206810C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206810C */ if (_t6) goto L_02068110; else goto L_02068118;
|
|
L_02068110: ; // 0x2068110
|
|
/* 02068110 */ cpu->r[3] = 0x00000001u;
|
|
/* 02068114 */ return;
|
|
L_02068118: ; // 0x2068118
|
|
/* 02068118 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0206811C */ _t7 = cpu->r[11] + 0xFFFFD868u;
|
|
/* 0206811C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206811C */ cpu->r[11] = _t7;
|
|
/* 02068120 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02068124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02068128 */ cpu->r[10] = cpu->r[10] + 0xFFFFDD70u;
|
|
/* 0206812C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206812C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206812C */ if (_t9) goto L_02068130; else goto L_02068144;
|
|
L_02068130: ; // 0x2068130
|
|
/* 02068130 */ cpu->r[12] = 0x10000000u;
|
|
/* 02068134 */ cpu->r[9] = 0x00000001u;
|
|
/* 02068138 */ cpu->r[12] = cpu->r[12] + 0x000072A4u;
|
|
/* 0206813C */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 0206813C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02068140 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 02068140 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_02068144: ; // 0x2068144
|
|
/* 02068144 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02068148 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068148 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02068148 */ if (_t13) goto L_0206814C; else goto L_02068154;
|
|
L_0206814C: ; // 0x206814c
|
|
/* 0206814C */ cpu->r[0] = 0x00000001u;
|
|
/* 02068150 */ goto L_0206818C;
|
|
L_02068154: ; // 0x2068154
|
|
/* 02068154 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02068158 */ _t14 = cpu->r[8] + 0xFFFFD4FCu;
|
|
/* 02068158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02068158 */ cpu->r[8] = _t14;
|
|
/* 0206815C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02068160 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02068164 */ cpu->r[11] = cpu->r[11] + 0xFFFFDD6Cu;
|
|
/* 02068168 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068168 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02068168 */ if (_t16) goto L_0206816C; else goto L_02068180;
|
|
L_0206816C: ; // 0x206816c
|
|
/* 0206816C */ cpu->r[10] = 0x10000000u;
|
|
/* 02068170 */ cpu->r[9] = 0x00000001u;
|
|
/* 02068174 */ cpu->r[10] = cpu->r[10] + 0x00007264u;
|
|
/* 02068178 */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 02068178 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 0206817C */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 0206817C */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_02068180: ; // 0x2068180
|
|
/* 02068180 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02068184 */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 02068188 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_0206818C: ; // 0x206818c
|
|
/* 0206818C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02068190 */ return;
|
|
}
|
|
|
|
// fn_02068194 @ 0x2068194
|
|
void Gambit_fn_02068194(CPUState* cpu) {
|
|
L_02068194: ; // 0x2068194
|
|
/* 02068194 */ return;
|
|
}
|
|
|
|
// fn_02068198 @ 0x2068198
|
|
void Gambit_fn_02068198(CPUState* cpu) {
|
|
L_02068198: ; // 0x2068198
|
|
/* 02068198 */ return;
|
|
}
|
|
|
|
// fn_0206819C @ 0x206819c
|
|
void Gambit_fn_0206819C(CPUState* cpu) {
|
|
L_0206819C: ; // 0x206819c
|
|
/* 0206819C */ return;
|
|
}
|
|
|
|
// fn_020681A0 @ 0x20681a0
|
|
void Gambit_fn_020681A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_020681A0: ; // 0x20681a0
|
|
/* 020681A0 */ cpu->r[0] = cpu->lr;
|
|
/* 020681A4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020681A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020681A4 */ cpu->r[1] = _t0;
|
|
/* 020681A8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020681A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020681AC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 020681AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 020681B0 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 020681B0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 020681B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 020681B8 */ /* nop */
|
|
/* 020681BC */ Gambit_fn_027FC35C(cpu);
|
|
/* 020681C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020681C4 */ Gambit_fn_02068268(cpu);
|
|
/* 020681C8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 020681C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 020681CC */ cpu->lr = cpu->r[0];
|
|
/* 020681D0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020681D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020681D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020681D8 */ return;
|
|
}
|
|
|
|
// fn_020681A4 @ 0x20681a4
|
|
void Gambit_fn_020681A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_020681A4: ; // 0x20681a4
|
|
/* 020681A4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020681A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020681A4 */ cpu->r[1] = _t0;
|
|
/* 020681A8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020681A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020681AC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 020681AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 020681B0 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 020681B0 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 020681B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 020681B8 */ /* nop */
|
|
/* 020681BC */ Gambit_fn_027FC35C(cpu);
|
|
/* 020681C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020681C4 */ Gambit_fn_02068268(cpu);
|
|
/* 020681C8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 020681C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 020681CC */ cpu->lr = cpu->r[0];
|
|
/* 020681D0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020681D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020681D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020681D8 */ return;
|
|
}
|
|
|
|
// fn_020681E0 @ 0x20681e0
|
|
void Gambit_fn_020681E0(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_020681E0: ; // 0x20681e0
|
|
/* 020681E0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 020681E0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 020681E4 */ /* nop */
|
|
/* 020681E8 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 020681E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 020681EC */ cpu->r[7] = cpu->r[0];
|
|
/* 020681F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 020681F4 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 020681F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 020681F8 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020681F8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 020681F8 */ if (_t4) goto L_020681FC; else goto L_02068214;
|
|
L_020681FC: ; // 0x20681fc
|
|
/* 020681FC */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02068200 */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 02068204 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02068204 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02068208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206820C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206820C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206820C */ if (_t7) goto L_02068210; else goto L_02068220;
|
|
L_02068210: ; // 0x2068210
|
|
/* 02068210 */ return;
|
|
L_02068214: ; // 0x2068214
|
|
/* 02068214 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02068214 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 02068218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206821C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206821C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206821C */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206821C */ goto L_02068220;
|
|
L_02068220: ; // 0x2068220
|
|
/* 02068220 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 02068224 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02068224 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02068228 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02068228 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02068228 */ if (_t13) goto L_0206822C; else goto L_02068234;
|
|
L_0206822C: ; // 0x206822c
|
|
/* 0206822C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02068230 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02068234: ; // 0x2068234
|
|
/* 02068234 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02068234 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02068238 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02068238 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206823C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02068240 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02068240 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02068244 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 02068248 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02068248 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02068248 */ if (_t18) goto L_02068260; else goto L_0206824C;
|
|
L_0206824C: ; // 0x206824c
|
|
/* 0206824C */ /* nop */
|
|
/* 02068250 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02068250 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02068254 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02068258 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0206825C */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206825C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02068260: ; // 0x2068260
|
|
/* 02068260 */ cpu->ctr = cpu->r[11];
|
|
/* 02068264 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02068268 @ 0x2068268
|
|
void Gambit_fn_02068268(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_02068268: ; // 0x2068268
|
|
/* 02068268 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02068268 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206826C */ /* nop */
|
|
/* 02068270 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 02068270 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02068274 */ cpu->r[8] = cpu->r[0];
|
|
/* 02068278 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206827C */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0206827C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02068280 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02068280 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02068280 */ if (_t4) goto L_02068284; else goto L_0206829C;
|
|
L_02068284: ; // 0x2068284
|
|
/* 02068284 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02068288 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206828C */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206828C */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 02068290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02068294 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068294 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02068294 */ if (_t7) goto L_02068298; else goto L_020682A8;
|
|
L_02068298: ; // 0x2068298
|
|
/* 02068298 */ return;
|
|
L_0206829C: ; // 0x206829c
|
|
/* 0206829C */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206829C */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 020682A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 020682A4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020682A4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 020682A4 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 020682A4 */ goto L_020682A8;
|
|
L_020682A8: ; // 0x20682a8
|
|
/* 020682A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 020682AC */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 020682AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020682B0 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020682B0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 020682B0 */ if (_t13) goto L_020682B4; else goto L_020682BC;
|
|
L_020682B4: ; // 0x20682b4
|
|
/* 020682B4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020682B8 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_020682BC: ; // 0x20682bc
|
|
/* 020682BC */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 020682BC */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 020682C0 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 020682C0 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 020682C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020682C8 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 020682C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 020682CC */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 020682D0 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020682D0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 020682D0 */ if (_t18) goto L_020682E8; else goto L_020682D4;
|
|
L_020682D4: ; // 0x20682d4
|
|
/* 020682D4 */ /* nop */
|
|
/* 020682D8 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 020682D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 020682DC */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020682E0 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 020682E4 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 020682E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_020682E8: ; // 0x20682e8
|
|
/* 020682E8 */ cpu->ctr = cpu->r[11];
|
|
/* 020682EC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_020682F0 @ 0x20682f0
|
|
void Gambit_fn_020682F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_020682F0: ; // 0x20682f0
|
|
/* 020682F0 */ cpu->r[0] = cpu->lr;
|
|
/* 020682F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020682F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020682F4 */ cpu->r[1] = _t0;
|
|
/* 020682F8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 020682F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 020682FC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020682FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02068300 */ cpu->r[30] = cpu->r[3];
|
|
/* 02068304 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02068304 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02068308 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02068308 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206830C */ /* nop */
|
|
/* 02068310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02068314 */ cpu->r[31] = cpu->r[4];
|
|
/* 02068318 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068318 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02068318 */ if (_t6) goto L_0206831C; else goto L_02068330;
|
|
L_0206831C: ; // 0x206831c
|
|
/* 0206831C */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206831C */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02068320 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02068320 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02068324 */ cpu->ctr = cpu->r[0];
|
|
/* 02068328 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206832C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02068330: ; // 0x2068330
|
|
/* 02068330 */ cpu->r[3] = cpu->r[30];
|
|
/* 02068334 */ cpu->r[4] = cpu->r[31];
|
|
/* 02068338 */ Gambit_fn_020681E0(cpu);
|
|
/* 0206833C */ cpu->r[3] = cpu->r[30];
|
|
/* 02068340 */ /* nop */
|
|
/* 02068344 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02068348 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206834C */ Gambit_fn_02068268(cpu);
|
|
/* 02068350 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02068350 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02068354 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02068354 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02068358 */ cpu->lr = cpu->r[0];
|
|
/* 0206835C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206835C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02068360 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02068364 */ return;
|
|
}
|
|
|
|
// fn_020682F4 @ 0x20682f4
|
|
void Gambit_fn_020682F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_020682F4: ; // 0x20682f4
|
|
/* 020682F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020682F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020682F4 */ cpu->r[1] = _t0;
|
|
/* 020682F8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 020682F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 020682FC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020682FC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02068300 */ cpu->r[30] = cpu->r[3];
|
|
/* 02068304 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02068304 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02068308 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02068308 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206830C */ /* nop */
|
|
/* 02068310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02068314 */ cpu->r[31] = cpu->r[4];
|
|
/* 02068318 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068318 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02068318 */ if (_t6) goto L_0206831C; else goto L_02068330;
|
|
L_0206831C: ; // 0x206831c
|
|
/* 0206831C */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206831C */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02068320 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02068320 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02068324 */ cpu->ctr = cpu->r[0];
|
|
/* 02068328 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206832C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02068330: ; // 0x2068330
|
|
/* 02068330 */ cpu->r[3] = cpu->r[30];
|
|
/* 02068334 */ cpu->r[4] = cpu->r[31];
|
|
/* 02068338 */ Gambit_fn_020681E0(cpu);
|
|
/* 0206833C */ cpu->r[3] = cpu->r[30];
|
|
/* 02068340 */ /* nop */
|
|
/* 02068344 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02068348 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206834C */ Gambit_fn_02068268(cpu);
|
|
/* 02068350 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02068350 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02068354 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02068354 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02068358 */ cpu->lr = cpu->r[0];
|
|
/* 0206835C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206835C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02068360 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02068364 */ return;
|
|
}
|
|
|
|
// fn_02068368 @ 0x2068368
|
|
void Gambit_fn_02068368(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_02068368: ; // 0x2068368
|
|
/* 02068368 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02068368 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068368 */ cpu->r[1] = _t0;
|
|
/* 0206836C */ /* nop */
|
|
/* 02068370 */ cpu->r[0] = cpu->lr;
|
|
/* 02068374 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02068374 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02068378 */ cpu->r[29] = cpu->r[6];
|
|
/* 0206837C */ cpu->r[28] = cpu->r[3];
|
|
/* 02068380 */ cpu->r[30] = cpu->r[5];
|
|
/* 02068384 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 02068384 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02068388 */ cpu->r[31] = 0x101D0000u;
|
|
/* 0206838C */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 0206838C */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 02068390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02068394 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02068394 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 02068398 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068398 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02068398 */ if (_t6) goto L_020683DC; else goto L_0206839C;
|
|
L_0206839C: ; // 0x206839c
|
|
/* 0206839C */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 0206839C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 020683A0 */ Gambit_fn_02826F20(cpu);
|
|
/* 020683A4 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 020683A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 020683A8 */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 020683A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 020683AC */ cpu->ctr = cpu->r[0];
|
|
/* 020683B0 */ cpu->r[5] = 0x00000004u;
|
|
/* 020683B4 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020683B8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020683BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 020683C0 */ cpu->r[0] = cpu->r[27];
|
|
/* 020683C4 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020683C4 */ _t11 = _t10 & 0x00000001u;
|
|
/* 020683C4 */ if (_t11) goto L_020683CC; else goto L_020683C8;
|
|
L_020683C8: ; // 0x20683c8
|
|
/* 020683C8 */ cpu->r[0] = 0x00000001u;
|
|
L_020683CC: ; // 0x20683cc
|
|
/* 020683CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020683D0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020683D0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 020683D0 */ if (_t13) goto L_020683DC; else goto L_020683D4;
|
|
L_020683D4: ; // 0x20683d4
|
|
/* 020683D4 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 020683D4 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 020683D8 */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 020683D8 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_020683DC: ; // 0x20683dc
|
|
/* 020683DC */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 020683DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 020683E0 */ cpu->r[0] = 0x00000000u;
|
|
/* 020683E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 020683E8 */ cpu->r[12] = cpu->r[0];
|
|
/* 020683EC */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020683EC */ _t18 = _t17 & 0x00000001u;
|
|
/* 020683EC */ if (_t18) goto L_020683F0; else goto L_02068414;
|
|
L_020683F0: ; // 0x20683f0
|
|
/* 020683F0 */ cpu->ctr = cpu->r[7];
|
|
/* 020683F4 */ cpu->r[10] = 0x00000000u;
|
|
L_020683F8: ; // 0x20683f8
|
|
/* 020683F8 */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 020683F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 020683FC */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 020683FC */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 02068400 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 02068404 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 02068404 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 02068408 */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 0206840C */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 0206840C */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 02068410 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02068410 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02068410 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 02068410 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02068410 */ if (_t25) goto L_020683F8; else goto L_02068414;
|
|
L_02068414: ; // 0x2068414
|
|
/* 02068414 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02068414 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 02068418 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0206841C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206841C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0206841C */ if (_t28) goto L_02068460; else goto L_02068420;
|
|
L_02068420: ; // 0x2068420
|
|
/* 02068420 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02068420 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02068424 */ Gambit_fn_02826F20(cpu);
|
|
/* 02068428 */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02068428 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0206842C */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 0206842C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02068430 */ cpu->ctr = cpu->r[0];
|
|
/* 02068434 */ cpu->r[5] = 0x00000004u;
|
|
/* 02068438 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206843C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068440 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02068444 */ cpu->r[11] = cpu->r[27];
|
|
/* 02068448 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02068448 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02068448 */ if (_t33) goto L_02068450; else goto L_0206844C;
|
|
L_0206844C: ; // 0x206844c
|
|
/* 0206844C */ cpu->r[11] = 0x00000001u;
|
|
L_02068450: ; // 0x2068450
|
|
/* 02068450 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02068454 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068454 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02068454 */ if (_t35) goto L_02068460; else goto L_02068458;
|
|
L_02068458: ; // 0x2068458
|
|
/* 02068458 */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02068458 */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 0206845C */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 0206845C */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_02068460: ; // 0x2068460
|
|
/* 02068460 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 02068460 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02068464 */ cpu->r[0] = 0x00000000u;
|
|
/* 02068468 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0206846C */ cpu->r[12] = cpu->r[0];
|
|
/* 02068470 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02068470 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02068470 */ if (_t40) goto L_02068474; else goto L_02068498;
|
|
L_02068474: ; // 0x2068474
|
|
/* 02068474 */ cpu->ctr = cpu->r[6];
|
|
/* 02068478 */ cpu->r[9] = 0x00000000u;
|
|
L_0206847C: ; // 0x206847c
|
|
/* 0206847C */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 0206847C */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02068480 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 02068480 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 02068484 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 02068488 */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 02068488 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 0206848C */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 02068490 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 02068490 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 02068494 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02068494 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02068494 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 02068494 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02068494 */ if (_t47) goto L_0206847C; else goto L_02068498;
|
|
L_02068498: ; // 0x2068498
|
|
/* 02068498 */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02068498 */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 0206849C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 020684A0 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020684A0 */ _t50 = _t49 & 0x00000001u;
|
|
/* 020684A0 */ if (_t50) goto L_020684E4; else goto L_020684A4;
|
|
L_020684A4: ; // 0x20684a4
|
|
/* 020684A4 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 020684A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 020684A8 */ Gambit_fn_02826F20(cpu);
|
|
/* 020684AC */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 020684AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 020684B0 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 020684B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 020684B4 */ cpu->ctr = cpu->r[0];
|
|
/* 020684B8 */ cpu->r[5] = 0x00000004u;
|
|
/* 020684BC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020684C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020684C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 020684C8 */ cpu->r[10] = cpu->r[27];
|
|
/* 020684CC */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020684CC */ _t55 = _t54 & 0x00000001u;
|
|
/* 020684CC */ if (_t55) goto L_020684D4; else goto L_020684D0;
|
|
L_020684D0: ; // 0x20684d0
|
|
/* 020684D0 */ cpu->r[10] = 0x00000001u;
|
|
L_020684D4: ; // 0x20684d4
|
|
/* 020684D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020684D8 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020684D8 */ _t57 = _t56 & 0x00000001u;
|
|
/* 020684D8 */ if (_t57) goto L_020684E4; else goto L_020684DC;
|
|
L_020684DC: ; // 0x20684dc
|
|
/* 020684DC */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 020684DC */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 020684E0 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 020684E0 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_020684E4: ; // 0x20684e4
|
|
/* 020684E4 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 020684E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 020684E8 */ cpu->r[0] = 0x00000000u;
|
|
/* 020684EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 020684F0 */ cpu->r[5] = cpu->r[0];
|
|
/* 020684F4 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020684F4 */ _t62 = _t61 & 0x00000001u;
|
|
/* 020684F4 */ if (_t62) goto L_020684F8; else goto L_0206851C;
|
|
L_020684F8: ; // 0x20684f8
|
|
/* 020684F8 */ cpu->ctr = cpu->r[12];
|
|
/* 020684FC */ cpu->r[8] = 0x00000000u;
|
|
L_02068500: ; // 0x2068500
|
|
/* 02068500 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 02068500 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02068504 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 02068504 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 02068508 */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 0206850C */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 0206850C */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 02068510 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 02068514 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 02068514 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 02068518 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02068518 */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02068518 */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 02068518 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02068518 */ if (_t69) goto L_02068500; else goto L_0206851C;
|
|
L_0206851C: ; // 0x206851c
|
|
/* 0206851C */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 0206851C */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 02068520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02068524 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068524 */ _t72 = _t71 & 0x00000001u;
|
|
/* 02068524 */ if (_t72) goto L_02068600; else goto L_02068528;
|
|
L_02068528: ; // 0x2068528
|
|
/* 02068528 */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02068528 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0206852C */ Gambit_fn_02826F20(cpu);
|
|
/* 02068530 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02068530 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02068534 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 02068534 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 02068538 */ cpu->ctr = cpu->r[12];
|
|
/* 0206853C */ cpu->r[5] = 0x00000004u;
|
|
/* 02068540 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 02068544 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068548 */ cpu->r[24] = cpu->r[3];
|
|
/* 0206854C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 02068550 */ cpu->r[30] = cpu->r[25];
|
|
/* 02068554 */ cpu->r[7] = 0x00000000u;
|
|
/* 02068558 */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02068558 */ _t77 = _t76 & 0x00000001u;
|
|
/* 02068558 */ if (_t77) goto L_02068560; else goto L_0206855C;
|
|
L_0206855C: ; // 0x206855c
|
|
/* 0206855C */ cpu->r[30] = 0x00000001u;
|
|
L_02068560: ; // 0x2068560
|
|
/* 02068560 */ cpu->r[31] = 0x10110000u;
|
|
/* 02068564 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 02068568 */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 02068568 */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 0206856C */ cpu->r[23] = 0x00000018u;
|
|
L_02068570: ; // 0x2068570
|
|
/* 02068570 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 02068570 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02068574 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068574 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02068574 */ if (_t80) goto L_020685E4; else goto L_02068578;
|
|
L_02068578: ; // 0x2068578
|
|
/* 02068578 */ cpu->r[26] = cpu->r[27];
|
|
/* 02068578 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0206857C */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206857C */ _t82 = _t81 & 0x00000001u;
|
|
/* 0206857C */ if (_t82) goto L_02068580; else goto L_02068590;
|
|
L_02068580: ; // 0x2068580
|
|
/* 02068580 */ cpu->r[3] = 0x00000024u;
|
|
/* 02068584 */ Gambit_fn_02801A78(cpu);
|
|
/* 02068588 */ cpu->r[26] = cpu->r[3];
|
|
/* 02068588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0206858C */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206858C */ _t84 = _t83 & 0x00000001u;
|
|
/* 0206858C */ if (_t84) goto L_020685D8; else goto L_02068590;
|
|
L_02068590: ; // 0x2068590
|
|
/* 02068590 */ cpu->r[11] = cpu->r[26];
|
|
/* 02068590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02068594 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068594 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02068594 */ if (_t86) goto L_02068598; else goto L_020685A8;
|
|
L_02068598: ; // 0x2068598
|
|
/* 02068598 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0206859C */ Gambit_fn_02801A78(cpu);
|
|
/* 020685A0 */ cpu->r[11] = cpu->r[3];
|
|
/* 020685A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 020685A4 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020685A4 */ _t88 = _t87 & 0x00000001u;
|
|
/* 020685A4 */ if (_t88) goto L_020685C4; else goto L_020685A8;
|
|
L_020685A8: ; // 0x20685a8
|
|
/* 020685A8 */ cpu->r[5] = 0x10000000u;
|
|
/* 020685AC */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 020685AC */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 020685B0 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 020685B4 */ cpu->r[5] = cpu->r[5] + 0x0000728Cu;
|
|
/* 020685B8 */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 020685B8 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 020685BC */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 020685BC */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 020685C0 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 020685C0 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_020685C4: ; // 0x20685c4
|
|
/* 020685C4 */ cpu->r[6] = 0x10000000u;
|
|
/* 020685C8 */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 020685C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 020685CC */ cpu->r[6] = cpu->r[6] + 0x000072E4u;
|
|
/* 020685D0 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 020685D0 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 020685D4 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 020685D4 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_020685D8: ; // 0x20685d8
|
|
/* 020685D8 */ cpu->r[0] = 0x10000000u;
|
|
/* 020685DC */ cpu->r[0] = cpu->r[0] + 0x000072FCu;
|
|
/* 020685E0 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 020685E0 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_020685E4: ; // 0x20685e4
|
|
/* 020685E4 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 020685E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 020685E8 */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 020685EC */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020685EC */ _t98 = _t97 & 0x00000001u;
|
|
/* 020685EC */ if (_t98) goto L_020685F0; else goto L_02068570;
|
|
L_020685F0: ; // 0x20685f0
|
|
/* 020685F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 020685F4 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020685F4 */ _t100 = _t99 & 0x00000001u;
|
|
/* 020685F4 */ if (_t100) goto L_02068600; else goto L_020685F8;
|
|
L_020685F8: ; // 0x20685f8
|
|
/* 020685F8 */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 020685F8 */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 020685FC */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 020685FC */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_02068600: ; // 0x2068600
|
|
/* 02068600 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 02068600 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 02068604 */ /* nop */
|
|
/* 02068608 */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 02068608 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 0206860C */ cpu->lr = cpu->r[0];
|
|
/* 02068610 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02068614 */ return;
|
|
}
|
|
|
|
// fn_02068618 @ 0x2068618
|
|
void Gambit_fn_02068618(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_02068618: ; // 0x2068618
|
|
/* 02068618 */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 02068618 */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206861C */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0206861C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02068620 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 02068620 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02068624 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 02068628 */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 02068628 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206862C */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206862C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206862C */ if (_t5) goto L_02068630; else goto L_02068638;
|
|
L_02068630: ; // 0x2068630
|
|
/* 02068630 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02068634 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_02068638: ; // 0x2068638
|
|
/* 02068638 */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 02068638 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0206863C */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 0206863C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02068640 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 02068640 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 02068644 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 02068644 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02068648 */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 02068648 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206864C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 02068650 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 02068650 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02068654 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02068654 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02068654 */ if (_t13) goto L_02068658; else goto L_02068660;
|
|
L_02068658: ; // 0x2068658
|
|
/* 02068658 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206865C */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_02068660: ; // 0x2068660
|
|
/* 02068660 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 02068660 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02068664 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 02068664 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02068668 */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 02068668 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206866C */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 0206866C */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 02068670 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 02068670 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02068674 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 02068674 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 02068678 */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 02068678 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0206867C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 02068680 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 02068680 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02068684 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02068684 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02068684 */ if (_t23) goto L_02068688; else goto L_02068690;
|
|
L_02068688: ; // 0x2068688
|
|
/* 02068688 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206868C */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_02068690: ; // 0x2068690
|
|
/* 02068690 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 02068690 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 02068694 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 02068694 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02068698 */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 02068698 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 0206869C */ return;
|
|
}
|
|
|
|
// fn_020686A0 @ 0x20686a0
|
|
void Gambit_fn_020686A0(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_020686A0: ; // 0x20686a0
|
|
/* 020686A0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 020686A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 020686A4 */ /* nop */
|
|
/* 020686A8 */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 020686A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 020686AC */ cpu->r[8] = cpu->r[0];
|
|
/* 020686B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 020686B4 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 020686B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 020686B8 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020686B8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 020686B8 */ if (_t4) goto L_020686BC; else goto L_020686D4;
|
|
L_020686BC: ; // 0x20686bc
|
|
/* 020686BC */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020686C0 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 020686C4 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 020686C4 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 020686C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 020686CC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020686CC */ _t7 = _t6 & 0x00000001u;
|
|
/* 020686CC */ if (_t7) goto L_020686D0; else goto L_020686E0;
|
|
L_020686D0: ; // 0x20686d0
|
|
/* 020686D0 */ return;
|
|
L_020686D4: ; // 0x20686d4
|
|
/* 020686D4 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 020686D4 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 020686D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 020686DC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020686DC */ _t10 = _t9 & 0x00000001u;
|
|
/* 020686DC */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 020686DC */ goto L_020686E0;
|
|
L_020686E0: ; // 0x20686e0
|
|
/* 020686E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 020686E4 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 020686E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020686E8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020686E8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 020686E8 */ if (_t13) goto L_020686EC; else goto L_020686F4;
|
|
L_020686EC: ; // 0x20686ec
|
|
/* 020686EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 020686F0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_020686F4: ; // 0x20686f4
|
|
/* 020686F4 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 020686F4 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 020686F8 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 020686F8 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 020686FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02068700 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02068700 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02068704 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 02068708 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02068708 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02068708 */ if (_t18) goto L_02068720; else goto L_0206870C;
|
|
L_0206870C: ; // 0x206870c
|
|
/* 0206870C */ /* nop */
|
|
/* 02068710 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02068710 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02068714 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02068718 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206871C */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206871C */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_02068720: ; // 0x2068720
|
|
/* 02068720 */ cpu->ctr = cpu->r[11];
|
|
/* 02068724 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02068728 @ 0x2068728
|
|
void Gambit_fn_02068728(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02068728: ; // 0x2068728
|
|
/* 02068728 */ cpu->r[0] = cpu->lr;
|
|
/* 0206872C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206872C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206872C */ cpu->r[1] = _t0;
|
|
/* 02068730 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068730 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02068734 */ cpu->r[31] = cpu->r[3];
|
|
/* 02068738 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02068738 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206873C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206873C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02068740 */ cpu->r[12] = 0x00000000u;
|
|
/* 02068744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02068748 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02068748 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206874C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206874C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206874C */ if (_t6) goto L_02068774; else goto L_02068750;
|
|
L_02068750: ; // 0x2068750
|
|
/* 02068750 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02068750 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02068754 */ /* nop */
|
|
/* 02068758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206875C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206875C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206875C */ if (_t9) goto L_02068760; else goto L_02068774;
|
|
L_02068760: ; // 0x2068760
|
|
/* 02068760 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02068760 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02068764 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02068764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02068768 */ cpu->ctr = cpu->r[0];
|
|
/* 0206876C */ cpu->r[3] = cpu->r[31];
|
|
/* 02068770 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02068774: ; // 0x2068774
|
|
/* 02068774 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068778 */ Gambit_fn_020686A0(cpu);
|
|
/* 0206877C */ cpu->r[3] = cpu->r[31];
|
|
/* 02068780 */ Gambit_fn_027FC37C(cpu);
|
|
/* 02068784 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02068784 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02068788 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068788 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206878C */ cpu->lr = cpu->r[0];
|
|
/* 02068790 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02068794 */ return;
|
|
}
|
|
|
|
// fn_0206872C @ 0x206872c
|
|
void Gambit_fn_0206872C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206872C: ; // 0x206872c
|
|
/* 0206872C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206872C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206872C */ cpu->r[1] = _t0;
|
|
/* 02068730 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068730 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02068734 */ cpu->r[31] = cpu->r[3];
|
|
/* 02068738 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02068738 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206873C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206873C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02068740 */ cpu->r[12] = 0x00000000u;
|
|
/* 02068744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02068748 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02068748 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206874C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206874C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206874C */ if (_t6) goto L_02068774; else goto L_02068750;
|
|
L_02068750: ; // 0x2068750
|
|
/* 02068750 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02068750 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02068754 */ /* nop */
|
|
/* 02068758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206875C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206875C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206875C */ if (_t9) goto L_02068760; else goto L_02068774;
|
|
L_02068760: ; // 0x2068760
|
|
/* 02068760 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 02068760 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02068764 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02068764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02068768 */ cpu->ctr = cpu->r[0];
|
|
/* 0206876C */ cpu->r[3] = cpu->r[31];
|
|
/* 02068770 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02068774: ; // 0x2068774
|
|
/* 02068774 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068778 */ Gambit_fn_020686A0(cpu);
|
|
/* 0206877C */ cpu->r[3] = cpu->r[31];
|
|
/* 02068780 */ Gambit_fn_027FC37C(cpu);
|
|
/* 02068784 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02068784 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02068788 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068788 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206878C */ cpu->lr = cpu->r[0];
|
|
/* 02068790 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02068794 */ return;
|
|
}
|
|
|
|
// fn_02068798 @ 0x2068798
|
|
void Gambit_fn_02068798(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02068798: ; // 0x2068798
|
|
/* 02068798 */ cpu->r[0] = cpu->lr;
|
|
/* 0206879C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206879C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206879C */ cpu->r[1] = _t0;
|
|
/* 020687A0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020687A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020687A4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 020687A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020687A8 */ cpu->r[30] = cpu->r[3];
|
|
/* 020687A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 020687AC */ cpu->r[31] = cpu->r[4];
|
|
/* 020687B0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020687B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020687B4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020687B4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 020687B4 */ if (_t5) goto L_020687F8; else goto L_020687B8;
|
|
L_020687B8: ; // 0x20687b8
|
|
/* 020687B8 */ cpu->r[11] = 0x10000000u;
|
|
/* 020687BC */ cpu->r[0] = 0x10000000u;
|
|
/* 020687C0 */ cpu->r[11] = cpu->r[11] + 0x00007804u;
|
|
/* 020687C4 */ cpu->r[0] = cpu->r[0] + 0x000077F4u;
|
|
/* 020687C8 */ cpu->r[3] = cpu->r[30];
|
|
/* 020687CC */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 020687CC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 020687D0 */ cpu->r[0] = 0x10000000u;
|
|
/* 020687D4 */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 020687D4 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 020687D8 */ cpu->r[0] = cpu->r[0] + 0x00007814u;
|
|
/* 020687DC */ cpu->r[4] = 0x00000000u;
|
|
/* 020687E0 */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 020687E0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 020687E4 */ Gambit_fn_026D7084(cpu);
|
|
/* 020687E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020687E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020687EC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020687EC */ _t10 = _t9 & 0x00000001u;
|
|
/* 020687EC */ if (_t10) goto L_020687F8; else goto L_020687F0;
|
|
L_020687F0: ; // 0x20687f0
|
|
/* 020687F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 020687F4 */ Gambit_fn_02801BB0(cpu);
|
|
L_020687F8: ; // 0x20687f8
|
|
/* 020687F8 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 020687F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020687FC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 020687FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02068800 */ cpu->lr = cpu->r[0];
|
|
/* 02068804 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068804 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02068808 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206880C */ return;
|
|
}
|
|
|
|
// fn_0206879C @ 0x206879c
|
|
void Gambit_fn_0206879C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206879C: ; // 0x206879c
|
|
/* 0206879C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206879C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206879C */ cpu->r[1] = _t0;
|
|
/* 020687A0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020687A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020687A4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 020687A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020687A8 */ cpu->r[30] = cpu->r[3];
|
|
/* 020687A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 020687AC */ cpu->r[31] = cpu->r[4];
|
|
/* 020687B0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020687B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020687B4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020687B4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 020687B4 */ if (_t5) goto L_020687F8; else goto L_020687B8;
|
|
L_020687B8: ; // 0x20687b8
|
|
/* 020687B8 */ cpu->r[11] = 0x10000000u;
|
|
/* 020687BC */ cpu->r[0] = 0x10000000u;
|
|
/* 020687C0 */ cpu->r[11] = cpu->r[11] + 0x00007804u;
|
|
/* 020687C4 */ cpu->r[0] = cpu->r[0] + 0x000077F4u;
|
|
/* 020687C8 */ cpu->r[3] = cpu->r[30];
|
|
/* 020687CC */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 020687CC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 020687D0 */ cpu->r[0] = 0x10000000u;
|
|
/* 020687D4 */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 020687D4 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 020687D8 */ cpu->r[0] = cpu->r[0] + 0x00007814u;
|
|
/* 020687DC */ cpu->r[4] = 0x00000000u;
|
|
/* 020687E0 */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 020687E0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 020687E4 */ Gambit_fn_026D7084(cpu);
|
|
/* 020687E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020687E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020687EC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020687EC */ _t10 = _t9 & 0x00000001u;
|
|
/* 020687EC */ if (_t10) goto L_020687F8; else goto L_020687F0;
|
|
L_020687F0: ; // 0x20687f0
|
|
/* 020687F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 020687F4 */ Gambit_fn_02801BB0(cpu);
|
|
L_020687F8: ; // 0x20687f8
|
|
/* 020687F8 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 020687F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020687FC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 020687FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02068800 */ cpu->lr = cpu->r[0];
|
|
/* 02068804 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068804 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02068808 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206880C */ return;
|
|
}
|
|
|
|
// fn_02068810 @ 0x2068810
|
|
void Gambit_fn_02068810(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02068798: ; // 0x2068798
|
|
/* 02068798 */ cpu->r[0] = cpu->lr;
|
|
/* 0206879C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206879C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206879C */ cpu->r[1] = _t0;
|
|
/* 020687A0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020687A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020687A4 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 020687A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020687A8 */ cpu->r[30] = cpu->r[3];
|
|
/* 020687A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 020687AC */ cpu->r[31] = cpu->r[4];
|
|
/* 020687B0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 020687B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020687B4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020687B4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 020687B4 */ if (_t5) goto L_020687F8; else goto L_020687B8;
|
|
L_020687B8: ; // 0x20687b8
|
|
/* 020687B8 */ cpu->r[11] = 0x10000000u;
|
|
/* 020687BC */ cpu->r[0] = 0x10000000u;
|
|
/* 020687C0 */ cpu->r[11] = cpu->r[11] + 0x00007804u;
|
|
/* 020687C4 */ cpu->r[0] = cpu->r[0] + 0x000077F4u;
|
|
/* 020687C8 */ cpu->r[3] = cpu->r[30];
|
|
/* 020687CC */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 020687CC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 020687D0 */ cpu->r[0] = 0x10000000u;
|
|
/* 020687D4 */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 020687D4 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 020687D8 */ cpu->r[0] = cpu->r[0] + 0x00007814u;
|
|
/* 020687DC */ cpu->r[4] = 0x00000000u;
|
|
/* 020687E0 */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 020687E0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 020687E4 */ Gambit_fn_026D7084(cpu);
|
|
/* 020687E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020687E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020687EC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020687EC */ _t10 = _t9 & 0x00000001u;
|
|
/* 020687EC */ if (_t10) goto L_020687F8; else goto L_020687F0;
|
|
L_020687F0: ; // 0x20687f0
|
|
/* 020687F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 020687F4 */ Gambit_fn_02801BB0(cpu);
|
|
L_020687F8: ; // 0x20687f8
|
|
/* 020687F8 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 020687F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020687FC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 020687FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02068800 */ cpu->lr = cpu->r[0];
|
|
/* 02068804 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068804 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02068808 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206880C */ return;
|
|
L_02068810: ; // 0x2068810
|
|
/* 02068810 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02068814 */ goto L_02068798;
|
|
}
|
|
|
|
// fn_02068818 @ 0x2068818
|
|
void Gambit_fn_02068818(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
}
|
|
|
|
// fn_02068848 @ 0x2068848
|
|
void Gambit_fn_02068848(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_02068848: ; // 0x2068848
|
|
/* 02068848 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0206884C */ goto L_02068818;
|
|
}
|
|
|
|
// fn_02068850 @ 0x2068850
|
|
void Gambit_fn_02068850(CPUState* cpu) {
|
|
L_02068850: ; // 0x2068850
|
|
/* 02068850 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02068854 */ goto L_0206A344;
|
|
L_0206A344: ; // 0x206a344
|
|
/* 0206A344 */ return;
|
|
}
|
|
|
|
// fn_02068858 @ 0x2068858
|
|
void Gambit_fn_02068858(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02068858: ; // 0x2068858
|
|
/* 02068858 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0206885C */ goto L_0206A348;
|
|
L_0206A348: ; // 0x206a348
|
|
/* 0206A348 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0206A348 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206A34C */ return;
|
|
}
|
|
|
|
// fn_02068860 @ 0x2068860
|
|
void Gambit_fn_02068860(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_02068860: ; // 0x2068860
|
|
/* 02068860 */ cpu->r[0] = cpu->lr;
|
|
/* 02068864 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02068864 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068864 */ cpu->r[1] = _t0;
|
|
/* 02068868 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02068868 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206886C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0206886C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02068870 */ cpu->r[30] = cpu->r[5];
|
|
/* 02068874 */ cpu->r[31] = cpu->r[3];
|
|
/* 02068874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02068878 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068878 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0206887C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206887C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02068880 */ cpu->r[29] = cpu->r[4];
|
|
/* 02068884 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068884 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02068884 */ if (_t6) goto L_02068888; else goto L_02068898;
|
|
L_02068888: ; // 0x2068888
|
|
/* 02068888 */ cpu->r[3] = 0x000001DCu;
|
|
/* 0206888C */ Gambit_fn_02801A78(cpu);
|
|
/* 02068890 */ cpu->r[31] = cpu->r[3];
|
|
/* 02068890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02068894 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068894 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02068894 */ if (_t8) goto L_02068904; else goto L_02068898;
|
|
L_02068898: ; // 0x2068898
|
|
/* 02068898 */ _t9 = cpu->r[29] + 0x00000004u;
|
|
/* 02068898 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206889C */ _t10 = cpu->r[12] + 0x00000014u;
|
|
/* 0206889C */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020688A0 */ cpu->ctr = cpu->r[10];
|
|
/* 020688A4 */ cpu->r[3] = cpu->r[29];
|
|
/* 020688A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020688AC */ _t11 = cpu->r[29] + 0x00000000u;
|
|
/* 020688AC */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020688B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020688B4 */ Gambit_fn_026D7154(cpu);
|
|
/* 020688B8 */ cpu->r[11] = 0x10000000u;
|
|
/* 020688BC */ cpu->r[12] = 0x10000000u;
|
|
/* 020688C0 */ cpu->r[0] = 0x10000000u;
|
|
/* 020688C4 */ cpu->r[11] = cpu->r[11] + 0x00007694u;
|
|
/* 020688C8 */ cpu->r[12] = cpu->r[12] + 0x000077F4u;
|
|
/* 020688CC */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 020688CC */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 020688D0 */ cpu->r[0] = cpu->r[0] + 0x00007804u;
|
|
/* 020688D4 */ cpu->r[10] = 0x10000000u;
|
|
/* 020688D8 */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 020688D8 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 020688DC */ cpu->r[10] = cpu->r[10] + 0x00007814u;
|
|
/* 020688E0 */ _t14 = cpu->r[31] + 0x0000001Cu;
|
|
/* 020688E0 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 020688E4 */ cpu->r[0] = 0x00000000u;
|
|
/* 020688E8 */ _t15 = cpu->r[31] + 0x000001C8u;
|
|
/* 020688E8 */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 020688EC */ cpu->r[12] = cpu->r[30] + 0x00000002u;
|
|
/* 020688F0 */ _t16 = cpu->r[31] + 0x000001CCu;
|
|
/* 020688F0 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 020688F4 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 020688F8 */ _t17 = cpu->r[31] + 0x000001D0u;
|
|
/* 020688F8 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 020688FC */ _t18 = cpu->r[31] + 0x000001D4u;
|
|
/* 020688FC */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02068900 */ _t19 = cpu->r[31] + 0x000001D8u;
|
|
/* 02068900 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
L_02068904: ; // 0x2068904
|
|
/* 02068904 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068904 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02068908 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068908 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0206890C */ cpu->r[3] = cpu->r[31];
|
|
/* 02068910 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02068910 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02068914 */ cpu->lr = cpu->r[0];
|
|
/* 02068918 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02068918 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0206891C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02068920 */ return;
|
|
}
|
|
|
|
// fn_02068864 @ 0x2068864
|
|
void Gambit_fn_02068864(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_02068864: ; // 0x2068864
|
|
/* 02068864 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02068864 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068864 */ cpu->r[1] = _t0;
|
|
/* 02068868 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02068868 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206886C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 0206886C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02068870 */ cpu->r[30] = cpu->r[5];
|
|
/* 02068874 */ cpu->r[31] = cpu->r[3];
|
|
/* 02068874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02068878 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068878 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0206887C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206887C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02068880 */ cpu->r[29] = cpu->r[4];
|
|
/* 02068884 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068884 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02068884 */ if (_t6) goto L_02068888; else goto L_02068898;
|
|
L_02068888: ; // 0x2068888
|
|
/* 02068888 */ cpu->r[3] = 0x000001DCu;
|
|
/* 0206888C */ Gambit_fn_02801A78(cpu);
|
|
/* 02068890 */ cpu->r[31] = cpu->r[3];
|
|
/* 02068890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02068894 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068894 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02068894 */ if (_t8) goto L_02068904; else goto L_02068898;
|
|
L_02068898: ; // 0x2068898
|
|
/* 02068898 */ _t9 = cpu->r[29] + 0x00000004u;
|
|
/* 02068898 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206889C */ _t10 = cpu->r[12] + 0x00000014u;
|
|
/* 0206889C */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020688A0 */ cpu->ctr = cpu->r[10];
|
|
/* 020688A4 */ cpu->r[3] = cpu->r[29];
|
|
/* 020688A8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020688AC */ _t11 = cpu->r[29] + 0x00000000u;
|
|
/* 020688AC */ cpu->r[4] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020688B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020688B4 */ Gambit_fn_026D7154(cpu);
|
|
/* 020688B8 */ cpu->r[11] = 0x10000000u;
|
|
/* 020688BC */ cpu->r[12] = 0x10000000u;
|
|
/* 020688C0 */ cpu->r[0] = 0x10000000u;
|
|
/* 020688C4 */ cpu->r[11] = cpu->r[11] + 0x00007694u;
|
|
/* 020688C8 */ cpu->r[12] = cpu->r[12] + 0x000077F4u;
|
|
/* 020688CC */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 020688CC */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 020688D0 */ cpu->r[0] = cpu->r[0] + 0x00007804u;
|
|
/* 020688D4 */ cpu->r[10] = 0x10000000u;
|
|
/* 020688D8 */ _t13 = cpu->r[31] + 0x0000000Cu;
|
|
/* 020688D8 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 020688DC */ cpu->r[10] = cpu->r[10] + 0x00007814u;
|
|
/* 020688E0 */ _t14 = cpu->r[31] + 0x0000001Cu;
|
|
/* 020688E0 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 020688E4 */ cpu->r[0] = 0x00000000u;
|
|
/* 020688E8 */ _t15 = cpu->r[31] + 0x000001C8u;
|
|
/* 020688E8 */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 020688EC */ cpu->r[12] = cpu->r[30] + 0x00000002u;
|
|
/* 020688F0 */ _t16 = cpu->r[31] + 0x000001CCu;
|
|
/* 020688F0 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 020688F4 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 020688F8 */ _t17 = cpu->r[31] + 0x000001D0u;
|
|
/* 020688F8 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]);
|
|
/* 020688FC */ _t18 = cpu->r[31] + 0x000001D4u;
|
|
/* 020688FC */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 02068900 */ _t19 = cpu->r[31] + 0x000001D8u;
|
|
/* 02068900 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
L_02068904: ; // 0x2068904
|
|
/* 02068904 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068904 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02068908 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068908 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0206890C */ cpu->r[3] = cpu->r[31];
|
|
/* 02068910 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02068910 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02068914 */ cpu->lr = cpu->r[0];
|
|
/* 02068918 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02068918 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0206891C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02068920 */ return;
|
|
}
|
|
|
|
// fn_02068924 @ 0x2068924
|
|
void Gambit_fn_02068924(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02068924: ; // 0x2068924
|
|
/* 02068924 */ cpu->r[0] = cpu->lr;
|
|
/* 02068928 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02068928 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0206892C */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0206892C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0206892C */ cpu->r[1] = _t1;
|
|
/* 02068930 */ _t2 = cpu->r[3] + 0x000001D4u;
|
|
/* 02068930 */ cpu->r[4] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02068934 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02068938 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02068938 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02068938 */ if (_t4) goto L_02068964; else goto L_0206893C;
|
|
L_0206893C: ; // 0x206893c
|
|
/* 0206893C */ cpu->r[0] = 0x10000000u;
|
|
/* 02068940 */ cpu->r[12] = 0x10000000u;
|
|
/* 02068944 */ cpu->r[11] = 0x10000000u;
|
|
/* 02068948 */ cpu->r[0] = cpu->r[0] + 0x0000756Cu;
|
|
/* 0206894C */ _t5 = cpu->r[12] + 0x00007568u;
|
|
/* 0206894C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02068950 */ cpu->r[11] = cpu->r[11] + 0x00007540u;
|
|
/* 02068954 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02068954 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02068958 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0206895C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206895C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02068960 */ Gambit_fn_027ED2B0(cpu);
|
|
L_02068964: ; // 0x2068964
|
|
/* 02068964 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02068968 */ cpu->lr = cpu->r[0];
|
|
/* 0206896C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02068970 */ return;
|
|
}
|
|
|
|
// fn_0206892C @ 0x206892c
|
|
void Gambit_fn_0206892C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0206892C: ; // 0x206892c
|
|
/* 0206892C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0206892C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206892C */ cpu->r[1] = _t0;
|
|
/* 02068930 */ _t1 = cpu->r[3] + 0x000001D4u;
|
|
/* 02068930 */ cpu->r[4] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02068934 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02068938 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02068938 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068938 */ if (_t3) goto L_02068964; else goto L_0206893C;
|
|
L_0206893C: ; // 0x206893c
|
|
/* 0206893C */ cpu->r[0] = 0x10000000u;
|
|
/* 02068940 */ cpu->r[12] = 0x10000000u;
|
|
/* 02068944 */ cpu->r[11] = 0x10000000u;
|
|
/* 02068948 */ cpu->r[0] = cpu->r[0] + 0x0000756Cu;
|
|
/* 0206894C */ _t4 = cpu->r[12] + 0x00007568u;
|
|
/* 0206894C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02068950 */ cpu->r[11] = cpu->r[11] + 0x00007540u;
|
|
/* 02068954 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02068954 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02068958 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0206895C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206895C */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 02068960 */ Gambit_fn_027ED2B0(cpu);
|
|
L_02068964: ; // 0x2068964
|
|
/* 02068964 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068964 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02068968 */ cpu->lr = cpu->r[0];
|
|
/* 0206896C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02068970 */ return;
|
|
}
|
|
|
|
// fn_02068974 @ 0x2068974
|
|
void Gambit_fn_02068974(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_02068974: ; // 0x2068974
|
|
/* 02068974 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02068974 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068974 */ cpu->r[1] = _t0;
|
|
/* 02068978 */ /* nop */
|
|
/* 0206897C */ cpu->r[0] = cpu->lr;
|
|
/* 02068980 */ cpu->r[31] = cpu->r[3];
|
|
/* 02068984 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02068984 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02068988 */ Gambit_fn_02068924(cpu);
|
|
/* 0206898C */ _t2 = cpu->r[31] + 0x000001A4u;
|
|
/* 0206898C */ cpu->r[29] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02068990 */ _t3 = cpu->r[29] + 0x00000004u;
|
|
/* 02068990 */ cpu->r[30] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02068994 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[29]);
|
|
/* 02068998 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068998 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02068998 */ if (_t5) goto L_02068A10; else goto L_0206899C;
|
|
L_0206899C: ; // 0x206899c
|
|
/* 0206899C */ cpu->r[28] = 0x00000001u;
|
|
/* 020689A0 */ cpu->r[27] = 0x101D0000u;
|
|
/* 020689A4 */ cpu->r[26] = 0x101D0000u;
|
|
L_020689A8: ; // 0x20689a8
|
|
/* 020689A8 */ _t6 = cpu->r[27] + 0xFFFFDBA0u;
|
|
/* 020689A8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 020689AC */ _t7 = cpu->r[30] + 0x00000008u;
|
|
/* 020689AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 020689B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 020689B4 */ _t8 = cpu->r[11] + 0x00000000u;
|
|
/* 020689B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 020689B8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020689B8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 020689B8 */ if (_t10) goto L_020689BC; else goto L_020689CC;
|
|
L_020689BC: ; // 0x20689bc
|
|
/* 020689BC */ cpu->r[9] = 0x10000000u;
|
|
/* 020689C0 */ _t11 = cpu->r[27] + 0xFFFFDBA0u;
|
|
/* 020689C0 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 020689C4 */ cpu->r[9] = cpu->r[9] + 0x00007558u;
|
|
/* 020689C8 */ _t12 = cpu->r[26] + 0xFFFFED90u;
|
|
/* 020689C8 */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
L_020689CC: ; // 0x20689cc
|
|
/* 020689CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 020689D0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020689D0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 020689D0 */ if (_t14) goto L_02068A04; else goto L_020689D4;
|
|
L_020689D4: ; // 0x20689d4
|
|
/* 020689D4 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 020689D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 020689D8 */ _t16 = cpu->r[10] + 0x0000001Cu;
|
|
/* 020689D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 020689DC */ cpu->ctr = cpu->r[12];
|
|
/* 020689E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020689E4 */ cpu->r[4] = cpu->r[26] + 0xFFFFED90u;
|
|
/* 020689E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020689EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020689F0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020689F0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 020689F0 */ if (_t18) goto L_02068A04; else goto L_020689F4;
|
|
L_020689F4: ; // 0x20689f4
|
|
/* 020689F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 020689F8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020689F8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 020689F8 */ if (_t20) goto L_02068A04; else goto L_020689FC;
|
|
L_020689FC: ; // 0x20689fc
|
|
/* 020689FC */ cpu->r[3] = cpu->r[31];
|
|
/* 02068A00 */ Gambit_fn_02068974(cpu);
|
|
L_02068A04: ; // 0x2068a04
|
|
/* 02068A04 */ _t21 = cpu->r[30] + 0x00000004u;
|
|
/* 02068A04 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02068A08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[29]);
|
|
/* 02068A0C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068A0C */ _t23 = _t22 & 0x00000001u;
|
|
/* 02068A0C */ if (_t23) goto L_02068A10; else goto L_020689A8;
|
|
L_02068A10: ; // 0x2068a10
|
|
/* 02068A10 */ /* nop */
|
|
/* 02068A14 */ _t24 = cpu->r[1] + 0x00000024u;
|
|
/* 02068A14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02068A18 */ cpu->lr = cpu->r[0];
|
|
/* 02068A1C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02068A20 */ return;
|
|
}
|
|
|
|
// fn_02068A24 @ 0x2068a24
|
|
void Gambit_fn_02068A24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02068A24: ; // 0x2068a24
|
|
/* 02068A24 */ cpu->r[0] = cpu->lr;
|
|
/* 02068A28 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02068A28 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02068A2C */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02068A2C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02068A2C */ cpu->r[1] = _t1;
|
|
/* 02068A30 */ _t2 = cpu->r[3] + 0x000001D8u;
|
|
/* 02068A30 */ cpu->r[4] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02068A34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02068A38 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02068A38 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02068A38 */ if (_t4) goto L_02068A64; else goto L_02068A3C;
|
|
L_02068A3C: ; // 0x2068a3c
|
|
/* 02068A3C */ cpu->r[12] = 0x10000000u;
|
|
/* 02068A40 */ cpu->r[11] = 0x10000000u;
|
|
/* 02068A44 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068A48 */ cpu->r[12] = cpu->r[12] + 0x00007574u;
|
|
/* 02068A4C */ _t5 = cpu->r[11] + 0x00007568u;
|
|
/* 02068A4C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02068A50 */ cpu->r[0] = cpu->r[0] + 0x00007540u;
|
|
/* 02068A54 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02068A54 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02068A58 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02068A5C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068A5C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02068A60 */ Gambit_fn_027ED2B0(cpu);
|
|
L_02068A64: ; // 0x2068a64
|
|
/* 02068A64 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02068A68 */ cpu->lr = cpu->r[0];
|
|
/* 02068A6C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02068A70 */ return;
|
|
}
|
|
|
|
// fn_02068A2C @ 0x2068a2c
|
|
void Gambit_fn_02068A2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02068A2C: ; // 0x2068a2c
|
|
/* 02068A2C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02068A2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068A2C */ cpu->r[1] = _t0;
|
|
/* 02068A30 */ _t1 = cpu->r[3] + 0x000001D8u;
|
|
/* 02068A30 */ cpu->r[4] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02068A34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02068A38 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02068A38 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068A38 */ if (_t3) goto L_02068A64; else goto L_02068A3C;
|
|
L_02068A3C: ; // 0x2068a3c
|
|
/* 02068A3C */ cpu->r[12] = 0x10000000u;
|
|
/* 02068A40 */ cpu->r[11] = 0x10000000u;
|
|
/* 02068A44 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068A48 */ cpu->r[12] = cpu->r[12] + 0x00007574u;
|
|
/* 02068A4C */ _t4 = cpu->r[11] + 0x00007568u;
|
|
/* 02068A4C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02068A50 */ cpu->r[0] = cpu->r[0] + 0x00007540u;
|
|
/* 02068A54 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02068A54 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02068A58 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02068A5C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068A5C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02068A60 */ Gambit_fn_027ED2B0(cpu);
|
|
L_02068A64: ; // 0x2068a64
|
|
/* 02068A64 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02068A68 */ cpu->lr = cpu->r[0];
|
|
/* 02068A6C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02068A70 */ return;
|
|
}
|
|
|
|
// fn_02068A74 @ 0x2068a74
|
|
void Gambit_fn_02068A74(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_02068A74: ; // 0x2068a74
|
|
/* 02068A74 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02068A74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068A74 */ cpu->r[1] = _t0;
|
|
/* 02068A78 */ /* nop */
|
|
/* 02068A7C */ cpu->r[0] = cpu->lr;
|
|
/* 02068A80 */ cpu->r[31] = cpu->r[3];
|
|
/* 02068A84 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02068A84 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02068A88 */ Gambit_fn_02068A24(cpu);
|
|
/* 02068A8C */ _t2 = cpu->r[31] + 0x000001A4u;
|
|
/* 02068A8C */ cpu->r[29] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02068A90 */ _t3 = cpu->r[29] + 0x00000004u;
|
|
/* 02068A90 */ cpu->r[30] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02068A94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[29]);
|
|
/* 02068A98 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068A98 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02068A98 */ if (_t5) goto L_02068B10; else goto L_02068A9C;
|
|
L_02068A9C: ; // 0x2068a9c
|
|
/* 02068A9C */ cpu->r[28] = 0x00000001u;
|
|
/* 02068AA0 */ cpu->r[27] = 0x101D0000u;
|
|
/* 02068AA4 */ cpu->r[26] = 0x101D0000u;
|
|
L_02068AA8: ; // 0x2068aa8
|
|
/* 02068AA8 */ _t6 = cpu->r[27] + 0xFFFFDBA0u;
|
|
/* 02068AA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02068AAC */ _t7 = cpu->r[30] + 0x00000008u;
|
|
/* 02068AAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02068AB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02068AB4 */ _t8 = cpu->r[11] + 0x00000000u;
|
|
/* 02068AB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02068AB8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068AB8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02068AB8 */ if (_t10) goto L_02068ABC; else goto L_02068ACC;
|
|
L_02068ABC: ; // 0x2068abc
|
|
/* 02068ABC */ cpu->r[9] = 0x10000000u;
|
|
/* 02068AC0 */ _t11 = cpu->r[27] + 0xFFFFDBA0u;
|
|
/* 02068AC0 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 02068AC4 */ cpu->r[9] = cpu->r[9] + 0x00007558u;
|
|
/* 02068AC8 */ _t12 = cpu->r[26] + 0xFFFFED90u;
|
|
/* 02068AC8 */ rbrew_write32(cpu->mem, _t12, cpu->r[9]);
|
|
L_02068ACC: ; // 0x2068acc
|
|
/* 02068ACC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02068AD0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068AD0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02068AD0 */ if (_t14) goto L_02068B04; else goto L_02068AD4;
|
|
L_02068AD4: ; // 0x2068ad4
|
|
/* 02068AD4 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 02068AD4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02068AD8 */ _t16 = cpu->r[10] + 0x0000001Cu;
|
|
/* 02068AD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02068ADC */ cpu->ctr = cpu->r[12];
|
|
/* 02068AE0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068AE4 */ cpu->r[4] = cpu->r[26] + 0xFFFFED90u;
|
|
/* 02068AE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02068AF0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068AF0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02068AF0 */ if (_t18) goto L_02068B04; else goto L_02068AF4;
|
|
L_02068AF4: ; // 0x2068af4
|
|
/* 02068AF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02068AF8 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068AF8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02068AF8 */ if (_t20) goto L_02068B04; else goto L_02068AFC;
|
|
L_02068AFC: ; // 0x2068afc
|
|
/* 02068AFC */ cpu->r[3] = cpu->r[31];
|
|
/* 02068B00 */ Gambit_fn_02068A74(cpu);
|
|
L_02068B04: ; // 0x2068b04
|
|
/* 02068B04 */ _t21 = cpu->r[30] + 0x00000004u;
|
|
/* 02068B04 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02068B08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[29]);
|
|
/* 02068B0C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068B0C */ _t23 = _t22 & 0x00000001u;
|
|
/* 02068B0C */ if (_t23) goto L_02068B10; else goto L_02068AA8;
|
|
L_02068B10: ; // 0x2068b10
|
|
/* 02068B10 */ /* nop */
|
|
/* 02068B14 */ _t24 = cpu->r[1] + 0x00000024u;
|
|
/* 02068B14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02068B18 */ cpu->lr = cpu->r[0];
|
|
/* 02068B1C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02068B20 */ return;
|
|
}
|
|
|
|
// fn_02068B24 @ 0x2068b24
|
|
void Gambit_fn_02068B24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02068B24: ; // 0x2068b24
|
|
/* 02068B24 */ cpu->r[0] = cpu->lr;
|
|
/* 02068B28 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02068B28 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02068B2C */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02068B2C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02068B2C */ cpu->r[1] = _t1;
|
|
/* 02068B30 */ _t2 = cpu->r[3] + 0x000001D8u;
|
|
/* 02068B30 */ cpu->r[4] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02068B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02068B38 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02068B38 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02068B38 */ if (_t4) goto L_02068B5C; else goto L_02068B3C;
|
|
L_02068B3C: ; // 0x2068b3c
|
|
/* 02068B3C */ cpu->r[0] = 0x10000000u;
|
|
/* 02068B40 */ cpu->r[12] = 0x10000000u;
|
|
/* 02068B44 */ cpu->r[0] = cpu->r[0] + 0x00007540u;
|
|
/* 02068B48 */ cpu->r[12] = cpu->r[12] + 0x0000757Cu;
|
|
/* 02068B4C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068B4C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02068B50 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02068B54 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02068B54 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02068B58 */ Gambit_fn_027ED858(cpu);
|
|
L_02068B5C: ; // 0x2068b5c
|
|
/* 02068B5C */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02068B60 */ cpu->lr = cpu->r[0];
|
|
/* 02068B64 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02068B68 */ return;
|
|
}
|
|
|
|
// fn_02068B2C @ 0x2068b2c
|
|
void Gambit_fn_02068B2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02068B2C: ; // 0x2068b2c
|
|
/* 02068B2C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02068B2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068B2C */ cpu->r[1] = _t0;
|
|
/* 02068B30 */ _t1 = cpu->r[3] + 0x000001D8u;
|
|
/* 02068B30 */ cpu->r[4] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02068B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02068B38 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02068B38 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068B38 */ if (_t3) goto L_02068B5C; else goto L_02068B3C;
|
|
L_02068B3C: ; // 0x2068b3c
|
|
/* 02068B3C */ cpu->r[0] = 0x10000000u;
|
|
/* 02068B40 */ cpu->r[12] = 0x10000000u;
|
|
/* 02068B44 */ cpu->r[0] = cpu->r[0] + 0x00007540u;
|
|
/* 02068B48 */ cpu->r[12] = cpu->r[12] + 0x0000757Cu;
|
|
/* 02068B4C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068B4C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02068B50 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02068B54 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02068B54 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02068B58 */ Gambit_fn_027ED858(cpu);
|
|
L_02068B5C: ; // 0x2068b5c
|
|
/* 02068B5C */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02068B60 */ cpu->lr = cpu->r[0];
|
|
/* 02068B64 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02068B68 */ return;
|
|
}
|
|
|
|
// fn_02068B6C @ 0x2068b6c
|
|
void Gambit_fn_02068B6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02068B6C: ; // 0x2068b6c
|
|
/* 02068B6C */ cpu->r[0] = cpu->lr;
|
|
/* 02068B70 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02068B70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068B70 */ cpu->r[1] = _t0;
|
|
/* 02068B74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068B74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02068B78 */ cpu->r[31] = cpu->r[3];
|
|
/* 02068B7C */ cpu->r[3] = 0x00000000u;
|
|
/* 02068B80 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02068B80 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02068B84 */ Gambit_fn_020DAB40(cpu);
|
|
/* 02068B88 */ _t3 = cpu->r[31] + 0x000001CCu;
|
|
/* 02068B88 */ rbrew_write32(cpu->mem, _t3, cpu->r[3]);
|
|
/* 02068B8C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02068B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02068B90 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068B90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02068B94 */ cpu->lr = cpu->r[0];
|
|
/* 02068B98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02068B9C */ return;
|
|
}
|
|
|
|
// fn_02068B70 @ 0x2068b70
|
|
void Gambit_fn_02068B70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02068B70: ; // 0x2068b70
|
|
/* 02068B70 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02068B70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068B70 */ cpu->r[1] = _t0;
|
|
/* 02068B74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068B74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02068B78 */ cpu->r[31] = cpu->r[3];
|
|
/* 02068B7C */ cpu->r[3] = 0x00000000u;
|
|
/* 02068B80 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02068B80 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02068B84 */ Gambit_fn_020DAB40(cpu);
|
|
/* 02068B88 */ _t3 = cpu->r[31] + 0x000001CCu;
|
|
/* 02068B88 */ rbrew_write32(cpu->mem, _t3, cpu->r[3]);
|
|
/* 02068B8C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02068B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02068B90 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068B90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02068B94 */ cpu->lr = cpu->r[0];
|
|
/* 02068B98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02068B9C */ return;
|
|
}
|
|
|
|
// fn_02068BA0 @ 0x2068ba0
|
|
void Gambit_fn_02068BA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02068BA0: ; // 0x2068ba0
|
|
/* 02068BA0 */ cpu->r[0] = cpu->lr;
|
|
/* 02068BA4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02068BA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068BA4 */ cpu->r[1] = _t0;
|
|
/* 02068BA8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02068BA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02068BAC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02068BAC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02068BB0 */ cpu->r[6] = 0x101C0000u;
|
|
/* 02068BB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02068BB8 */ cpu->r[4] = cpu->r[5];
|
|
/* 02068BBC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068BBC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02068BC0 */ _t4 = cpu->r[6] + 0x000033FCu;
|
|
/* 02068BC0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02068BC4 */ cpu->r[5] = 0x101C0000u;
|
|
/* 02068BC8 */ _t5 = cpu->r[31] + 0x000001ACu;
|
|
/* 02068BC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02068BCC */ _t6 = cpu->r[5] + 0x000033F8u;
|
|
/* 02068BCC */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02068BD0 */ Gambit_fn_027B82B4(cpu);
|
|
/* 02068BD4 */ cpu->r[30] = 0x10000000u;
|
|
/* 02068BD8 */ _t7 = cpu->r[31] + 0x000001ACu;
|
|
/* 02068BD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02068BDC */ cpu->r[30] = cpu->r[30] + 0x00007540u;
|
|
/* 02068BE0 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068BE4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068BE4 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02068BE8 */ cpu->r[0] = cpu->r[0] + 0x0000758Cu;
|
|
/* 02068BEC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02068BF0 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02068BF0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02068BF4 */ Gambit_fn_027B8BD0(cpu);
|
|
/* 02068BF8 */ cpu->r[12] = 0x10000000u;
|
|
/* 02068BFC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068BFC */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 02068C00 */ cpu->r[12] = cpu->r[12] + 0x00007584u;
|
|
/* 02068C04 */ _t11 = cpu->r[31] + 0x000001ACu;
|
|
/* 02068C04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02068C08 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02068C0C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02068C0C */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02068C10 */ Gambit_fn_027B8BD0(cpu);
|
|
/* 02068C14 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068C18 */ _t13 = cpu->r[31] + 0x000001ACu;
|
|
/* 02068C18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02068C1C */ cpu->r[0] = cpu->r[0] + 0x00007598u;
|
|
/* 02068C20 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068C20 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 02068C24 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02068C28 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02068C28 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02068C2C */ Gambit_fn_027B8BD0(cpu);
|
|
/* 02068C30 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068C30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02068C34 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02068C34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02068C38 */ cpu->lr = cpu->r[0];
|
|
/* 02068C3C */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 02068C3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02068C40 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02068C44 */ return;
|
|
}
|
|
|
|
// fn_02068BA4 @ 0x2068ba4
|
|
void Gambit_fn_02068BA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02068BA4: ; // 0x2068ba4
|
|
/* 02068BA4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02068BA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068BA4 */ cpu->r[1] = _t0;
|
|
/* 02068BA8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02068BA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02068BAC */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02068BAC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02068BB0 */ cpu->r[6] = 0x101C0000u;
|
|
/* 02068BB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02068BB8 */ cpu->r[4] = cpu->r[5];
|
|
/* 02068BBC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068BBC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02068BC0 */ _t4 = cpu->r[6] + 0x000033FCu;
|
|
/* 02068BC0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02068BC4 */ cpu->r[5] = 0x101C0000u;
|
|
/* 02068BC8 */ _t5 = cpu->r[31] + 0x000001ACu;
|
|
/* 02068BC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02068BCC */ _t6 = cpu->r[5] + 0x000033F8u;
|
|
/* 02068BCC */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02068BD0 */ Gambit_fn_027B82B4(cpu);
|
|
/* 02068BD4 */ cpu->r[30] = 0x10000000u;
|
|
/* 02068BD8 */ _t7 = cpu->r[31] + 0x000001ACu;
|
|
/* 02068BD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02068BDC */ cpu->r[30] = cpu->r[30] + 0x00007540u;
|
|
/* 02068BE0 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068BE4 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068BE4 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02068BE8 */ cpu->r[0] = cpu->r[0] + 0x0000758Cu;
|
|
/* 02068BEC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02068BF0 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02068BF0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02068BF4 */ Gambit_fn_027B8BD0(cpu);
|
|
/* 02068BF8 */ cpu->r[12] = 0x10000000u;
|
|
/* 02068BFC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068BFC */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 02068C00 */ cpu->r[12] = cpu->r[12] + 0x00007584u;
|
|
/* 02068C04 */ _t11 = cpu->r[31] + 0x000001ACu;
|
|
/* 02068C04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02068C08 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02068C0C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02068C0C */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02068C10 */ Gambit_fn_027B8BD0(cpu);
|
|
/* 02068C14 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068C18 */ _t13 = cpu->r[31] + 0x000001ACu;
|
|
/* 02068C18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02068C1C */ cpu->r[0] = cpu->r[0] + 0x00007598u;
|
|
/* 02068C20 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068C20 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 02068C24 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02068C28 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02068C28 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02068C2C */ Gambit_fn_027B8BD0(cpu);
|
|
/* 02068C30 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068C30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02068C34 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02068C34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02068C38 */ cpu->lr = cpu->r[0];
|
|
/* 02068C3C */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 02068C3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02068C40 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02068C44 */ return;
|
|
}
|
|
|
|
// fn_02068C48 @ 0x2068c48
|
|
void Gambit_fn_02068C48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02068C48: ; // 0x2068c48
|
|
/* 02068C48 */ cpu->r[0] = cpu->lr;
|
|
/* 02068C4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02068C4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068C4C */ cpu->r[1] = _t0;
|
|
/* 02068C50 */ cpu->r[4] = cpu->r[5];
|
|
/* 02068C54 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068C54 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02068C58 */ cpu->r[31] = cpu->r[3];
|
|
/* 02068C5C */ cpu->r[5] = 0x00000004u;
|
|
/* 02068C60 */ cpu->r[3] = 0x00000008u;
|
|
/* 02068C64 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02068C64 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02068C68 */ Gambit_fn_02801AC8(cpu);
|
|
/* 02068C6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02068C70 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068C70 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02068C70 */ if (_t4) goto L_02068C94; else goto L_02068C74;
|
|
L_02068C74: ; // 0x2068c74
|
|
/* 02068C74 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068C78 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 02068C78 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02068C7C */ cpu->r[0] = cpu->r[0] + 0x00007228u;
|
|
/* 02068C80 */ cpu->r[4] = cpu->r[3];
|
|
/* 02068C84 */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 02068C84 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02068C88 */ _t7 = cpu->r[31] + 0x000001ACu;
|
|
/* 02068C88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02068C8C */ Gambit_fn_027B8290(cpu);
|
|
/* 02068C90 */ goto L_02068CA0;
|
|
L_02068C94: ; // 0x2068c94
|
|
/* 02068C94 */ _t8 = cpu->r[31] + 0x000001ACu;
|
|
/* 02068C94 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02068C98 */ cpu->r[4] = 0x00000000u;
|
|
/* 02068C9C */ Gambit_fn_027B8290(cpu);
|
|
L_02068CA0: ; // 0x2068ca0
|
|
/* 02068CA0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02068CA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02068CA4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068CA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02068CA8 */ cpu->lr = cpu->r[0];
|
|
/* 02068CAC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02068CB0 */ return;
|
|
}
|
|
|
|
// fn_02068C4C @ 0x2068c4c
|
|
void Gambit_fn_02068C4C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02068C4C: ; // 0x2068c4c
|
|
/* 02068C4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02068C4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068C4C */ cpu->r[1] = _t0;
|
|
/* 02068C50 */ cpu->r[4] = cpu->r[5];
|
|
/* 02068C54 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068C54 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02068C58 */ cpu->r[31] = cpu->r[3];
|
|
/* 02068C5C */ cpu->r[5] = 0x00000004u;
|
|
/* 02068C60 */ cpu->r[3] = 0x00000008u;
|
|
/* 02068C64 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02068C64 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02068C68 */ Gambit_fn_02801AC8(cpu);
|
|
/* 02068C6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02068C70 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068C70 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02068C70 */ if (_t4) goto L_02068C94; else goto L_02068C74;
|
|
L_02068C74: ; // 0x2068c74
|
|
/* 02068C74 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068C78 */ _t5 = cpu->r[3] + 0x00000004u;
|
|
/* 02068C78 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02068C7C */ cpu->r[0] = cpu->r[0] + 0x00007228u;
|
|
/* 02068C80 */ cpu->r[4] = cpu->r[3];
|
|
/* 02068C84 */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 02068C84 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02068C88 */ _t7 = cpu->r[31] + 0x000001ACu;
|
|
/* 02068C88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02068C8C */ Gambit_fn_027B8290(cpu);
|
|
/* 02068C90 */ goto L_02068CA0;
|
|
L_02068C94: ; // 0x2068c94
|
|
/* 02068C94 */ _t8 = cpu->r[31] + 0x000001ACu;
|
|
/* 02068C94 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02068C98 */ cpu->r[4] = 0x00000000u;
|
|
/* 02068C9C */ Gambit_fn_027B8290(cpu);
|
|
L_02068CA0: ; // 0x2068ca0
|
|
/* 02068CA0 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02068CA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02068CA4 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068CA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02068CA8 */ cpu->lr = cpu->r[0];
|
|
/* 02068CAC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02068CB0 */ return;
|
|
}
|
|
|
|
// fn_02068CB4 @ 0x2068cb4
|
|
void Gambit_fn_02068CB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49;
|
|
|
|
L_02068CB4: ; // 0x2068cb4
|
|
/* 02068CB4 */ cpu->r[0] = cpu->lr;
|
|
/* 02068CB8 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02068CB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068CB8 */ cpu->r[1] = _t0;
|
|
/* 02068CBC */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02068CBC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02068CC0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068CC0 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02068CC4 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 02068CC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02068CC8 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02068CC8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02068CCC */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02068CCC */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02068CD0 */ _t6 = cpu->r[11] + 0x0000011Cu;
|
|
/* 02068CD0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02068CD4 */ cpu->ctr = cpu->r[11];
|
|
/* 02068CD8 */ cpu->r[30] = cpu->r[4];
|
|
/* 02068CDC */ cpu->r[31] = cpu->r[3];
|
|
/* 02068CE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068CE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02068CE8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068CE8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02068CE8 */ if (_t8) goto L_02068D10; else goto L_02068CEC;
|
|
L_02068CEC: ; // 0x2068cec
|
|
/* 02068CEC */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 02068CEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02068CF0 */ _t10 = cpu->r[12] + 0x0000011Cu;
|
|
/* 02068CF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02068CF4 */ cpu->ctr = cpu->r[0];
|
|
/* 02068CF8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068CFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068D00 */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 02068D00 */ cpu->r[5] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02068D04 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068D08 */ _t12 = cpu->r[30] + 0x00000000u;
|
|
/* 02068D08 */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02068D0C */ Gambit_fn_026D86C8(cpu);
|
|
L_02068D10: ; // 0x2068d10
|
|
/* 02068D10 */ _t13 = cpu->r[31] + 0x000001D0u;
|
|
/* 02068D10 */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02068D14 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068D18 */ cpu->r[4] = cpu->r[30];
|
|
/* 02068D1C */ Gambit_fn_026D7D18(cpu);
|
|
/* 02068D20 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 02068D20 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02068D24 */ _t15 = cpu->r[7] + 0x000000E4u;
|
|
/* 02068D24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02068D28 */ cpu->ctr = cpu->r[8];
|
|
/* 02068D2C */ cpu->r[3] = cpu->r[31];
|
|
/* 02068D30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068D34 */ _t16 = cpu->r[31] + 0x00000000u;
|
|
/* 02068D34 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02068D38 */ _t17 = cpu->r[9] + 0x0000013Cu;
|
|
/* 02068D38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02068D3C */ cpu->ctr = cpu->r[10];
|
|
/* 02068D40 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068D44 */ cpu->r[4] = cpu->r[30];
|
|
/* 02068D48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068D4C */ cpu->r[29] = 0x10000000u;
|
|
/* 02068D50 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068D54 */ cpu->r[29] = cpu->r[29] + 0x00007540u;
|
|
/* 02068D58 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068D5C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068D5C */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 02068D60 */ cpu->r[0] = cpu->r[0] + 0x000075A4u;
|
|
/* 02068D64 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02068D64 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 02068D68 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02068D6C */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 02068D6C */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02068D70 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02068D74 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02068D74 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02068D78 */ Gambit_fn_027ED060(cpu);
|
|
/* 02068D7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02068D80 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068D80 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02068D80 */ if (_t23) goto L_02068D90; else goto L_02068D84;
|
|
L_02068D84: ; // 0x2068d84
|
|
/* 02068D84 */ _t24 = cpu->r[31] + 0x000001D0u;
|
|
/* 02068D84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02068D88 */ cpu->r[11] = cpu->r[12] + 0xFFFFFFFEu;
|
|
/* 02068D8C */ _t25 = cpu->r[31] + 0x000001D4u;
|
|
/* 02068D8C */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
L_02068D90: ; // 0x2068d90
|
|
/* 02068D90 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 02068D90 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 02068D94 */ cpu->r[7] = 0x10000000u;
|
|
/* 02068D98 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068D98 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 02068D9C */ cpu->r[7] = cpu->r[7] + 0x000075ACu;
|
|
/* 02068DA0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02068DA4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068DA8 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02068DA8 */ rbrew_write32(cpu->mem, _t28, cpu->r[7]);
|
|
/* 02068DAC */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02068DB0 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 02068DB0 */ rbrew_write32(cpu->mem, _t29, cpu->r[7]);
|
|
/* 02068DB4 */ Gambit_fn_027ED060(cpu);
|
|
/* 02068DB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02068DBC */ _t30 = cpu->r[31] + 0x00000000u;
|
|
/* 02068DBC */ cpu->r[7] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02068DC0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068DC0 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02068DC0 */ if (_t32) goto L_02068DD0; else goto L_02068DC4;
|
|
L_02068DC4: ; // 0x2068dc4
|
|
/* 02068DC4 */ _t33 = cpu->r[31] + 0x000001D0u;
|
|
/* 02068DC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02068DC8 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02068DCC */ _t34 = cpu->r[31] + 0x000001D8u;
|
|
/* 02068DCC */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
L_02068DD0: ; // 0x2068dd0
|
|
/* 02068DD0 */ _t35 = cpu->r[7] + 0x00000134u;
|
|
/* 02068DD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02068DD4 */ cpu->ctr = cpu->r[0];
|
|
/* 02068DD8 */ cpu->r[4] = cpu->r[30];
|
|
/* 02068DDC */ cpu->r[3] = cpu->r[31];
|
|
/* 02068DE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068DE4 */ _t36 = cpu->r[31] + 0x00000000u;
|
|
/* 02068DE4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02068DE8 */ _t37 = cpu->r[9] + 0x000000ECu;
|
|
/* 02068DE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02068DEC */ cpu->ctr = cpu->r[10];
|
|
/* 02068DF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068DF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068DF8 */ _t38 = cpu->r[31] + 0x00000000u;
|
|
/* 02068DF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02068DFC */ _t39 = cpu->r[12] + 0x00000144u;
|
|
/* 02068DFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02068E00 */ cpu->ctr = cpu->r[0];
|
|
/* 02068E04 */ cpu->r[4] = cpu->r[30];
|
|
/* 02068E08 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068E0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068E10 */ _t40 = cpu->r[31] + 0x00000000u;
|
|
/* 02068E10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02068E14 */ _t41 = cpu->r[9] + 0x000000F4u;
|
|
/* 02068E14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02068E18 */ cpu->ctr = cpu->r[0];
|
|
/* 02068E1C */ cpu->r[3] = cpu->r[31];
|
|
/* 02068E20 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068E24 */ _t42 = cpu->r[31] + 0x00000000u;
|
|
/* 02068E24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02068E28 */ _t43 = cpu->r[12] + 0x0000014Cu;
|
|
/* 02068E28 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02068E2C */ cpu->ctr = cpu->r[8];
|
|
/* 02068E30 */ cpu->r[4] = cpu->r[30];
|
|
/* 02068E34 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068E38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068E3C */ _t44 = cpu->r[31] + 0x00000000u;
|
|
/* 02068E3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02068E40 */ _t45 = cpu->r[9] + 0x00000094u;
|
|
/* 02068E40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02068E44 */ cpu->ctr = cpu->r[10];
|
|
/* 02068E48 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068E4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068E50 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068E50 */ cpu->r[29] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02068E54 */ _t47 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02068E54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02068E58 */ _t48 = cpu->r[1] + 0x00000020u;
|
|
/* 02068E58 */ cpu->r[30] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02068E5C */ cpu->lr = cpu->r[0];
|
|
/* 02068E60 */ _t49 = cpu->r[1] + 0x00000024u;
|
|
/* 02068E60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02068E64 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02068E68 */ return;
|
|
}
|
|
|
|
// fn_02068CB8 @ 0x2068cb8
|
|
void Gambit_fn_02068CB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49;
|
|
|
|
L_02068CB8: ; // 0x2068cb8
|
|
/* 02068CB8 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02068CB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068CB8 */ cpu->r[1] = _t0;
|
|
/* 02068CBC */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02068CBC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02068CC0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068CC0 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02068CC4 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 02068CC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02068CC8 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02068CC8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02068CCC */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02068CCC */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02068CD0 */ _t6 = cpu->r[11] + 0x0000011Cu;
|
|
/* 02068CD0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02068CD4 */ cpu->ctr = cpu->r[11];
|
|
/* 02068CD8 */ cpu->r[30] = cpu->r[4];
|
|
/* 02068CDC */ cpu->r[31] = cpu->r[3];
|
|
/* 02068CE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068CE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02068CE8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068CE8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02068CE8 */ if (_t8) goto L_02068D10; else goto L_02068CEC;
|
|
L_02068CEC: ; // 0x2068cec
|
|
/* 02068CEC */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 02068CEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02068CF0 */ _t10 = cpu->r[12] + 0x0000011Cu;
|
|
/* 02068CF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02068CF4 */ cpu->ctr = cpu->r[0];
|
|
/* 02068CF8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068CFC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068D00 */ _t11 = cpu->r[3] + 0x00000004u;
|
|
/* 02068D00 */ cpu->r[5] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02068D04 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068D08 */ _t12 = cpu->r[30] + 0x00000000u;
|
|
/* 02068D08 */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02068D0C */ Gambit_fn_026D86C8(cpu);
|
|
L_02068D10: ; // 0x2068d10
|
|
/* 02068D10 */ _t13 = cpu->r[31] + 0x000001D0u;
|
|
/* 02068D10 */ cpu->r[5] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02068D14 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068D18 */ cpu->r[4] = cpu->r[30];
|
|
/* 02068D1C */ Gambit_fn_026D7D18(cpu);
|
|
/* 02068D20 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 02068D20 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02068D24 */ _t15 = cpu->r[7] + 0x000000E4u;
|
|
/* 02068D24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02068D28 */ cpu->ctr = cpu->r[8];
|
|
/* 02068D2C */ cpu->r[3] = cpu->r[31];
|
|
/* 02068D30 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068D34 */ _t16 = cpu->r[31] + 0x00000000u;
|
|
/* 02068D34 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02068D38 */ _t17 = cpu->r[9] + 0x0000013Cu;
|
|
/* 02068D38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02068D3C */ cpu->ctr = cpu->r[10];
|
|
/* 02068D40 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068D44 */ cpu->r[4] = cpu->r[30];
|
|
/* 02068D48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068D4C */ cpu->r[29] = 0x10000000u;
|
|
/* 02068D50 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068D54 */ cpu->r[29] = cpu->r[29] + 0x00007540u;
|
|
/* 02068D58 */ cpu->r[0] = 0x10000000u;
|
|
/* 02068D5C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068D5C */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 02068D60 */ cpu->r[0] = cpu->r[0] + 0x000075A4u;
|
|
/* 02068D64 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02068D64 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 02068D68 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02068D6C */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 02068D6C */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 02068D70 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02068D74 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02068D74 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02068D78 */ Gambit_fn_027ED060(cpu);
|
|
/* 02068D7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02068D80 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068D80 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02068D80 */ if (_t23) goto L_02068D90; else goto L_02068D84;
|
|
L_02068D84: ; // 0x2068d84
|
|
/* 02068D84 */ _t24 = cpu->r[31] + 0x000001D0u;
|
|
/* 02068D84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02068D88 */ cpu->r[11] = cpu->r[12] + 0xFFFFFFFEu;
|
|
/* 02068D8C */ _t25 = cpu->r[31] + 0x000001D4u;
|
|
/* 02068D8C */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
L_02068D90: ; // 0x2068d90
|
|
/* 02068D90 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 02068D90 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 02068D94 */ cpu->r[7] = 0x10000000u;
|
|
/* 02068D98 */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068D98 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 02068D9C */ cpu->r[7] = cpu->r[7] + 0x000075ACu;
|
|
/* 02068DA0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02068DA4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068DA8 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02068DA8 */ rbrew_write32(cpu->mem, _t28, cpu->r[7]);
|
|
/* 02068DAC */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02068DB0 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 02068DB0 */ rbrew_write32(cpu->mem, _t29, cpu->r[7]);
|
|
/* 02068DB4 */ Gambit_fn_027ED060(cpu);
|
|
/* 02068DB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02068DBC */ _t30 = cpu->r[31] + 0x00000000u;
|
|
/* 02068DBC */ cpu->r[7] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02068DC0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068DC0 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02068DC0 */ if (_t32) goto L_02068DD0; else goto L_02068DC4;
|
|
L_02068DC4: ; // 0x2068dc4
|
|
/* 02068DC4 */ _t33 = cpu->r[31] + 0x000001D0u;
|
|
/* 02068DC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02068DC8 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02068DCC */ _t34 = cpu->r[31] + 0x000001D8u;
|
|
/* 02068DCC */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
L_02068DD0: ; // 0x2068dd0
|
|
/* 02068DD0 */ _t35 = cpu->r[7] + 0x00000134u;
|
|
/* 02068DD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02068DD4 */ cpu->ctr = cpu->r[0];
|
|
/* 02068DD8 */ cpu->r[4] = cpu->r[30];
|
|
/* 02068DDC */ cpu->r[3] = cpu->r[31];
|
|
/* 02068DE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068DE4 */ _t36 = cpu->r[31] + 0x00000000u;
|
|
/* 02068DE4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02068DE8 */ _t37 = cpu->r[9] + 0x000000ECu;
|
|
/* 02068DE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02068DEC */ cpu->ctr = cpu->r[10];
|
|
/* 02068DF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068DF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068DF8 */ _t38 = cpu->r[31] + 0x00000000u;
|
|
/* 02068DF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02068DFC */ _t39 = cpu->r[12] + 0x00000144u;
|
|
/* 02068DFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02068E00 */ cpu->ctr = cpu->r[0];
|
|
/* 02068E04 */ cpu->r[4] = cpu->r[30];
|
|
/* 02068E08 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068E0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068E10 */ _t40 = cpu->r[31] + 0x00000000u;
|
|
/* 02068E10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02068E14 */ _t41 = cpu->r[9] + 0x000000F4u;
|
|
/* 02068E14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02068E18 */ cpu->ctr = cpu->r[0];
|
|
/* 02068E1C */ cpu->r[3] = cpu->r[31];
|
|
/* 02068E20 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068E24 */ _t42 = cpu->r[31] + 0x00000000u;
|
|
/* 02068E24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02068E28 */ _t43 = cpu->r[12] + 0x0000014Cu;
|
|
/* 02068E28 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02068E2C */ cpu->ctr = cpu->r[8];
|
|
/* 02068E30 */ cpu->r[4] = cpu->r[30];
|
|
/* 02068E34 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068E38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068E3C */ _t44 = cpu->r[31] + 0x00000000u;
|
|
/* 02068E3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02068E40 */ _t45 = cpu->r[9] + 0x00000094u;
|
|
/* 02068E40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02068E44 */ cpu->ctr = cpu->r[10];
|
|
/* 02068E48 */ cpu->r[3] = cpu->r[31];
|
|
/* 02068E4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068E50 */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068E50 */ cpu->r[29] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02068E54 */ _t47 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02068E54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02068E58 */ _t48 = cpu->r[1] + 0x00000020u;
|
|
/* 02068E58 */ cpu->r[30] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02068E5C */ cpu->lr = cpu->r[0];
|
|
/* 02068E60 */ _t49 = cpu->r[1] + 0x00000024u;
|
|
/* 02068E60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02068E64 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02068E68 */ return;
|
|
}
|
|
|
|
// fn_02068E6C @ 0x2068e6c
|
|
void Gambit_fn_02068E6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345, _t346, _t347, _t348, _t349, _t350, _t351, _t352, _t353, _t354, _t355, _t356, _t357, _t358, _t359, _t360, _t361, _t362, _t363, _t364, _t365, _t366, _t367, _t368, _t369, _t370, _t371, _t372, _t373, _t374, _t375, _t376, _t377, _t378, _t379, _t380, _t381, _t382, _t383, _t384, _t385, _t386, _t387, _t388, _t389, _t390, _t391, _t392, _t393, _t394, _t395, _t396, _t397, _t398, _t399, _t400, _t401, _t402, _t403, _t404, _t405, _t406, _t407, _t408, _t409, _t410, _t411, _t412, _t413, _t414, _t415, _t416, _t417, _t418, _t419, _t420, _t421, _t422, _t423, _t424, _t425, _t426, _t427, _t428, _t429, _t430, _t431, _t432, _t433, _t434, _t435, _t436, _t437, _t438, _t439, _t440, _t441, _t442, _t443, _t444, _t445, _t446, _t447, _t448, _t449, _t450, _t451, _t452, _t453, _t454, _t455, _t456, _t457, _t458, _t459, _t460, _t461, _t462, _t463, _t464, _t465, _t466, _t467, _t468, _t469, _t470, _t471, _t472, _t473, _t474, _t475, _t476, _t477, _t478, _t479, _t480, _t481, _t482, _t483, _t484, _t485, _t486, _t487, _t488, _t489, _t490, _t491, _t492, _t493, _t494, _t495, _t496, _t497, _t498, _t499, _t500, _t501, _t502, _t503, _t504, _t505, _t506, _t507, _t508, _t509, _t510, _t511, _t512, _t513, _t514, _t515, _t516, _t517, _t518, _t519, _t520, _t521, _t522, _t523, _t524, _t525, _t526, _t527, _t528, _t529, _t530, _t531, _t532, _t533, _t534, _t535, _t536, _t537, _t538, _t539, _t540, _t541, _t542, _t543, _t544, _t545, _t546, _t547, _t548, _t549, _t550, _t551, _t552, _t553, _t554, _t555, _t556, _t557, _t558, _t559, _t560, _t561, _t562, _t563, _t564, _t565, _t566, _t567, _t568, _t569, _t570, _t571, _t572, _t573, _t574, _t575, _t576, _t577, _t578, _t579, _t580, _t581, _t582, _t583, _t584, _t585, _t586, _t587, _t588, _t589, _t590, _t591, _t592, _t593, _t594, _t595, _t596, _t597, _t598, _t599, _t600, _t601, _t602, _t603, _t604, _t605, _t606, _t607, _t608, _t609, _t610, _t611, _t612, _t613, _t614, _t615, _t616, _t617, _t618, _t619, _t620, _t621, _t622, _t623, _t624, _t625, _t626, _t627, _t628, _t629, _t630, _t631, _t632, _t633, _t634, _t635;
|
|
|
|
L_02068E6C: ; // 0x2068e6c
|
|
/* 02068E6C */ _t0 = cpu->r[1] + 0xFFFFFF28u;
|
|
/* 02068E6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02068E6C */ cpu->r[1] = _t0;
|
|
/* 02068E70 */ /* nop */
|
|
/* 02068E74 */ cpu->r[0] = cpu->lr;
|
|
/* 02068E78 */ cpu->r[28] = 0x10000000u;
|
|
/* 02068E7C */ _t1 = cpu->r[1] + 0x000000DCu;
|
|
/* 02068E7C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02068E80 */ cpu->r[29] = cpu->r[3];
|
|
/* 02068E84 */ cpu->r[28] = cpu->r[28] + 0x00007540u;
|
|
/* 02068E88 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02068E88 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02068E8C */ cpu->r[30] = cpu->r[4];
|
|
/* 02068E90 */ _t3 = cpu->r[30] + 0x0000008Cu;
|
|
/* 02068E90 */ cpu->r[6] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02068E94 */ _t4 = cpu->r[30] + 0x000000A4u;
|
|
/* 02068E94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02068E98 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02068E98 */ rbrew_write32(cpu->mem, _t5, cpu->r[6]);
|
|
/* 02068E9C */ _t6 = cpu->r[12] + 0x00000000u;
|
|
/* 02068E9C */ cpu->r[5] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02068EA0 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068EA0 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]);
|
|
/* 02068EA4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02068EA8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02068EA8 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02068EAC */ Gambit_fn_0206A358(cpu);
|
|
/* 02068EB0 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02068EB0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02068EB4 */ cpu->r[31] = 0x10110000u;
|
|
/* 02068EB8 */ _t10 = cpu->r[31] + 0x00007399u;
|
|
/* 02068EB8 */ cpu->r[31] = rbrew_read8(cpu->mem, _t10);
|
|
/* 02068EBC */ cpu->r[4] = cpu->r[6];
|
|
/* 02068EC0 */ _t11 = cpu->r[4] + 0x00000000u;
|
|
/* 02068EC0 */ cpu->r[7] = rbrew_read8(cpu->mem, _t11);
|
|
/* 02068EC4 */ cpu->r[12] = 0x00000000u;
|
|
/* 02068EC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 02068ECC */ cpu->r[5] = 0x00080000u;
|
|
/* 02068ED0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068ED0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02068ED0 */ if (_t13) goto L_02068EF0; else goto L_02068ED4;
|
|
L_02068ED4: ; // 0x2068ed4
|
|
/* 02068ED4 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02068ED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[5]);
|
|
/* 02068EDC */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 02068EE0 */ _t14 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02068EE0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02068EE0 */ if (_t15) goto L_02068EF8; else goto L_02068EE4;
|
|
L_02068EE4: ; // 0x2068ee4
|
|
/* 02068EE4 */ _t16 = cpu->r[4] + 0x00000000u;
|
|
/* 02068EE4 */ cpu->r[8] = rbrew_read8(cpu->mem, _t16);
|
|
/* 02068EE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02068EEC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068EEC */ _t18 = _t17 & 0x00000001u;
|
|
/* 02068EEC */ if (_t18) goto L_02068EF0; else goto L_02068ED4;
|
|
L_02068EF0: ; // 0x2068ef0
|
|
/* 02068EF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000003u);
|
|
/* 02068EF4 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02068EF4 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02068EF4 */ if (_t20) goto L_02068EF8; else goto L_02068FDC;
|
|
L_02068EF8: ; // 0x2068ef8
|
|
/* 02068EF8 */ cpu->r[12] = 0x101F0000u;
|
|
/* 02068EFC */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068EFC */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 02068F00 */ _t22 = cpu->r[12] + 0x000066E8u;
|
|
/* 02068F00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02068F04 */ _t23 = cpu->r[29] + 0x00000000u;
|
|
/* 02068F04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02068F08 */ _t24 = cpu->r[1] + 0x00000008u;
|
|
/* 02068F08 */ rbrew_write32(cpu->mem, _t24, cpu->r[12]);
|
|
/* 02068F0C */ _t25 = cpu->r[1] + 0x00000018u;
|
|
/* 02068F0C */ rbrew_write32(cpu->mem, _t25, cpu->r[12]);
|
|
/* 02068F10 */ _t26 = cpu->r[9] + 0x00000104u;
|
|
/* 02068F10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02068F14 */ cpu->ctr = cpu->r[10];
|
|
/* 02068F18 */ cpu->r[4] = cpu->r[30];
|
|
/* 02068F1C */ cpu->r[3] = cpu->r[29];
|
|
/* 02068F20 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068F24 */ cpu->r[11] = 0x10000000u;
|
|
/* 02068F28 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068F28 */ rbrew_write32(cpu->mem, _t27, cpu->r[28]);
|
|
/* 02068F2C */ cpu->r[11] = cpu->r[11] + 0x00007608u;
|
|
/* 02068F30 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068F30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02068F34 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 02068F34 */ rbrew_write32(cpu->mem, _t29, cpu->r[11]);
|
|
/* 02068F38 */ _t30 = cpu->r[12] + 0x00000014u;
|
|
/* 02068F38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02068F3C */ cpu->ctr = cpu->r[0];
|
|
/* 02068F40 */ cpu->r[26] = cpu->r[3];
|
|
/* 02068F44 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02068F48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068F4C */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02068F4C */ cpu->r[4] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02068F50 */ _t32 = cpu->r[4] + 0x00000014u;
|
|
/* 02068F50 */ cpu->r[5] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02068F54 */ cpu->ctr = cpu->r[5];
|
|
/* 02068F58 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02068F5C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068F60 */ _t33 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068F60 */ cpu->r[6] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02068F64 */ _t34 = cpu->r[6] + 0x00000014u;
|
|
/* 02068F64 */ cpu->r[7] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02068F68 */ cpu->ctr = cpu->r[7];
|
|
/* 02068F6C */ _t35 = cpu->r[1] + 0x00000008u;
|
|
/* 02068F6C */ cpu->r[25] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02068F70 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02068F74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068F78 */ _t36 = cpu->r[1] + 0x00000018u;
|
|
/* 02068F78 */ cpu->r[8] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02068F7C */ cpu->r[27] = 0x00080000u;
|
|
/* 02068F80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[8]);
|
|
/* 02068F84 */ cpu->r[25] = 0x10000000u;
|
|
/* 02068F88 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02068F8C */ cpu->r[25] = cpu->r[25] + 0x000075E4u;
|
|
/* 02068F90 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068F90 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02068F90 */ if (_t38) goto L_02068F94; else goto L_02069074;
|
|
L_02068F94: ; // 0x2068f94
|
|
/* 02068F94 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 02068F94 */ cpu->r[10] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02068F98 */ _t40 = cpu->r[10] + 0x00000014u;
|
|
/* 02068F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02068F9C */ cpu->ctr = cpu->r[0];
|
|
/* 02068FA0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02068FA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068FA8 */ _t41 = cpu->r[1] + 0x00000010u;
|
|
/* 02068FA8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02068FAC */ cpu->r[3] = 0x00000000u;
|
|
/* 02068FB0 */ cpu->r[5] = cpu->r[26];
|
|
/* 02068FB4 */ Gambit_fn_020D2970(cpu);
|
|
/* 02068FB8 */ _t42 = cpu->r[3] + 0x00000000u;
|
|
/* 02068FB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02068FBC */ _t43 = cpu->r[11] + 0x00000034u;
|
|
/* 02068FBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02068FC0 */ cpu->ctr = cpu->r[0];
|
|
/* 02068FC4 */ cpu->r[4] = cpu->r[30];
|
|
/* 02068FC8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02068FCC */ _t44 = cpu->r[29] + 0x000001CCu;
|
|
/* 02068FCC */ cpu->r[10] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02068FD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02068FD4 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068FD4 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02068FD4 */ if (_t46) goto L_0206A038; else goto L_02068FD8;
|
|
L_02068FD8: ; // 0x2068fd8
|
|
/* 02068FD8 */ goto L_02069CA0;
|
|
L_02068FDC: ; // 0x2068fdc
|
|
/* 02068FDC */ _t47 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02068FDC */ rbrew_write32(cpu->mem, _t47, cpu->r[28]);
|
|
/* 02068FE0 */ cpu->r[12] = cpu->r[6] + 0x00000003u;
|
|
/* 02068FE4 */ _t48 = cpu->r[29] + 0x00000000u;
|
|
/* 02068FE4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02068FE8 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 02068FE8 */ rbrew_write32(cpu->mem, _t49, cpu->r[12]);
|
|
/* 02068FEC */ _t50 = cpu->r[1] + 0x00000018u;
|
|
/* 02068FEC */ rbrew_write32(cpu->mem, _t50, cpu->r[12]);
|
|
/* 02068FF0 */ _t51 = cpu->r[9] + 0x00000104u;
|
|
/* 02068FF0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02068FF4 */ cpu->ctr = cpu->r[10];
|
|
/* 02068FF8 */ cpu->r[4] = cpu->r[30];
|
|
/* 02068FFC */ cpu->r[3] = cpu->r[29];
|
|
/* 02069000 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069004 */ cpu->r[11] = 0x10000000u;
|
|
/* 02069008 */ _t52 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02069008 */ rbrew_write32(cpu->mem, _t52, cpu->r[28]);
|
|
/* 0206900C */ cpu->r[11] = cpu->r[11] + 0x00007608u;
|
|
/* 02069010 */ _t53 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069010 */ cpu->r[12] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02069014 */ _t54 = cpu->r[1] + 0x00000018u;
|
|
/* 02069014 */ rbrew_write32(cpu->mem, _t54, cpu->r[11]);
|
|
/* 02069018 */ _t55 = cpu->r[12] + 0x00000014u;
|
|
/* 02069018 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0206901C */ cpu->r[26] = cpu->r[3];
|
|
/* 02069020 */ cpu->ctr = cpu->r[0];
|
|
/* 02069024 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069028 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206902C */ _t56 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206902C */ cpu->r[4] = rbrew_read32(cpu->mem, _t56);
|
|
/* 02069030 */ _t57 = cpu->r[4] + 0x00000014u;
|
|
/* 02069030 */ cpu->r[5] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02069034 */ cpu->ctr = cpu->r[5];
|
|
/* 02069038 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206903C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069040 */ _t58 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02069040 */ cpu->r[6] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02069044 */ _t59 = cpu->r[6] + 0x00000014u;
|
|
/* 02069044 */ cpu->r[7] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02069048 */ cpu->ctr = cpu->r[7];
|
|
/* 0206904C */ _t60 = cpu->r[1] + 0x00000008u;
|
|
/* 0206904C */ cpu->r[25] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02069050 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02069054 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069058 */ _t61 = cpu->r[1] + 0x00000018u;
|
|
/* 02069058 */ cpu->r[8] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0206905C */ cpu->r[27] = 0x00080000u;
|
|
/* 02069060 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[8]);
|
|
/* 02069064 */ cpu->r[25] = 0x10000000u;
|
|
/* 02069068 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 0206906C */ cpu->r[25] = cpu->r[25] + 0x000075E4u;
|
|
/* 02069070 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069070 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02069070 */ if (_t63) goto L_02068F94; else goto L_02069074;
|
|
L_02069074: ; // 0x2069074
|
|
/* 02069074 */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 02069074 */ cpu->r[12] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02069078 */ cpu->ctr = cpu->r[27];
|
|
/* 0206907C */ _t65 = cpu->r[1] + 0x00000008u;
|
|
/* 0206907C */ cpu->r[11] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02069080 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02069084: ; // 0x2069084
|
|
/* 02069084 */ _t66 = cpu->r[11] + 0x00000000u;
|
|
/* 02069084 */ cpu->r[7] = rbrew_read8(cpu->mem, _t66);
|
|
/* 02069088 */ _t67 = cpu->r[12] + 0x00000001u;
|
|
/* 02069088 */ cpu->r[9] = rbrew_read8(cpu->mem, _t67);
|
|
/* 02069088 */ cpu->r[12] = _t67;
|
|
/* 0206908C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[9]);
|
|
/* 02069090 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069090 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02069090 */ if (_t69) goto L_02069094; else goto L_020690A4;
|
|
L_02069094: ; // 0x2069094
|
|
/* 02069094 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 02069098 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069098 */ _t71 = _t70 & 0x00000001u;
|
|
/* 02069098 */ if (_t71) goto L_02068F94; else goto L_0206909C;
|
|
L_0206909C: ; // 0x206909c
|
|
/* 0206909C */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 020690A0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020690A0 */ _t72 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020690A0 */ _t73 = _t72 >> (0x00000002u & 31u);
|
|
/* 020690A0 */ _t74 = _t73 & 0x00000001u;
|
|
/* 020690A0 */ if (_t74) goto L_02069084; else goto L_020690A4;
|
|
L_020690A4: ; // 0x20690a4
|
|
/* 020690A4 */ cpu->r[6] = 0x10000000u;
|
|
/* 020690A8 */ _t75 = cpu->r[1] + 0x00000024u;
|
|
/* 020690A8 */ rbrew_write32(cpu->mem, _t75, cpu->r[28]);
|
|
/* 020690AC */ cpu->r[6] = cpu->r[6] + 0x000075D4u;
|
|
/* 020690B0 */ _t76 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020690B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t76);
|
|
/* 020690B4 */ _t77 = cpu->r[1] + 0x00000020u;
|
|
/* 020690B4 */ rbrew_write32(cpu->mem, _t77, cpu->r[6]);
|
|
/* 020690B8 */ _t78 = cpu->r[7] + 0x00000014u;
|
|
/* 020690B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t78);
|
|
/* 020690BC */ cpu->ctr = cpu->r[8];
|
|
/* 020690C0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020690C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020690C8 */ _t79 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020690C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t79);
|
|
/* 020690CC */ _t80 = cpu->r[9] + 0x00000014u;
|
|
/* 020690CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t80);
|
|
/* 020690D0 */ cpu->ctr = cpu->r[10];
|
|
/* 020690D4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020690D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020690DC */ _t81 = cpu->r[1] + 0x00000024u;
|
|
/* 020690DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t81);
|
|
/* 020690E0 */ _t82 = cpu->r[11] + 0x00000014u;
|
|
/* 020690E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t82);
|
|
/* 020690E4 */ cpu->ctr = cpu->r[12];
|
|
/* 020690E8 */ _t83 = cpu->r[1] + 0x00000008u;
|
|
/* 020690E8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t83);
|
|
/* 020690EC */ cpu->r[3] = cpu->r[1] + 0x00000020u;
|
|
/* 020690F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020690F4 */ _t84 = cpu->r[1] + 0x00000020u;
|
|
/* 020690F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t84);
|
|
/* 020690F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[0]);
|
|
/* 020690FC */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020690FC */ _t86 = _t85 & 0x00000001u;
|
|
/* 020690FC */ if (_t86) goto L_02069134; else goto L_02069100;
|
|
L_02069100: ; // 0x2069100
|
|
/* 02069100 */ _t87 = cpu->r[1] + 0x00000020u;
|
|
/* 02069100 */ cpu->r[10] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02069104 */ cpu->ctr = cpu->r[27];
|
|
/* 02069108 */ _t88 = cpu->r[1] + 0x00000008u;
|
|
/* 02069108 */ cpu->r[9] = rbrew_read32(cpu->mem, _t88);
|
|
/* 0206910C */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02069110: ; // 0x2069110
|
|
/* 02069110 */ _t89 = cpu->r[9] + 0x00000000u;
|
|
/* 02069110 */ cpu->r[8] = rbrew_read8(cpu->mem, _t89);
|
|
/* 02069114 */ _t90 = cpu->r[10] + 0x00000001u;
|
|
/* 02069114 */ cpu->r[4] = rbrew_read8(cpu->mem, _t90);
|
|
/* 02069114 */ cpu->r[10] = _t90;
|
|
/* 02069118 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[4]);
|
|
/* 0206911C */ _t91 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206911C */ _t92 = _t91 & 0x00000001u;
|
|
/* 0206911C */ if (_t92) goto L_02069120; else goto L_0206917C;
|
|
L_02069120: ; // 0x2069120
|
|
/* 02069120 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02069124 */ _t93 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069124 */ _t94 = _t93 & 0x00000001u;
|
|
/* 02069124 */ if (_t94) goto L_02069134; else goto L_02069128;
|
|
L_02069128: ; // 0x2069128
|
|
/* 02069128 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0206912C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0206912C */ _t95 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0206912C */ _t96 = _t95 >> (0x00000002u & 31u);
|
|
/* 0206912C */ _t97 = _t96 & 0x00000001u;
|
|
/* 0206912C */ if (_t97) goto L_02069110; else goto L_02069130;
|
|
L_02069130: ; // 0x2069130
|
|
/* 02069130 */ goto L_0206917C;
|
|
L_02069134: ; // 0x2069134
|
|
/* 02069134 */ _t98 = cpu->r[1] + 0x00000014u;
|
|
/* 02069134 */ cpu->r[5] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02069138 */ _t99 = cpu->r[5] + 0x00000014u;
|
|
/* 02069138 */ cpu->r[6] = rbrew_read32(cpu->mem, _t99);
|
|
/* 0206913C */ cpu->ctr = cpu->r[6];
|
|
/* 02069140 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02069144 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069148 */ _t100 = cpu->r[1] + 0x00000010u;
|
|
/* 02069148 */ cpu->r[4] = rbrew_read32(cpu->mem, _t100);
|
|
/* 0206914C */ cpu->r[3] = 0x00000000u;
|
|
/* 02069150 */ cpu->r[5] = cpu->r[26];
|
|
/* 02069154 */ Gambit_fn_020CE40C(cpu);
|
|
/* 02069158 */ _t101 = cpu->r[3] + 0x00000000u;
|
|
/* 02069158 */ cpu->r[7] = rbrew_read32(cpu->mem, _t101);
|
|
/* 0206915C */ _t102 = cpu->r[7] + 0x00000034u;
|
|
/* 0206915C */ cpu->r[8] = rbrew_read32(cpu->mem, _t102);
|
|
/* 02069160 */ cpu->ctr = cpu->r[8];
|
|
/* 02069164 */ cpu->r[4] = cpu->r[30];
|
|
/* 02069168 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206916C */ _t103 = cpu->r[29] + 0x000001CCu;
|
|
/* 0206916C */ cpu->r[10] = rbrew_read32(cpu->mem, _t103);
|
|
/* 02069170 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02069174 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069174 */ _t105 = _t104 & 0x00000001u;
|
|
/* 02069174 */ if (_t105) goto L_0206A038; else goto L_02069178;
|
|
L_02069178: ; // 0x2069178
|
|
/* 02069178 */ goto L_02069CA0;
|
|
L_0206917C: ; // 0x206917c
|
|
/* 0206917C */ cpu->r[9] = 0x10000000u;
|
|
/* 02069180 */ _t106 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02069180 */ rbrew_write32(cpu->mem, _t106, cpu->r[28]);
|
|
/* 02069184 */ cpu->r[9] = cpu->r[9] + 0x000075BCu;
|
|
/* 02069188 */ _t107 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069188 */ cpu->r[10] = rbrew_read32(cpu->mem, _t107);
|
|
/* 0206918C */ _t108 = cpu->r[1] + 0x00000028u;
|
|
/* 0206918C */ rbrew_write32(cpu->mem, _t108, cpu->r[9]);
|
|
/* 02069190 */ _t109 = cpu->r[10] + 0x00000014u;
|
|
/* 02069190 */ cpu->r[0] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02069194 */ cpu->ctr = cpu->r[0];
|
|
/* 02069198 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206919C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020691A0 */ _t110 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020691A0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t110);
|
|
/* 020691A4 */ _t111 = cpu->r[6] + 0x00000014u;
|
|
/* 020691A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t111);
|
|
/* 020691A8 */ cpu->ctr = cpu->r[7];
|
|
/* 020691AC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020691B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020691B4 */ _t112 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020691B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t112);
|
|
/* 020691B8 */ _t113 = cpu->r[8] + 0x00000014u;
|
|
/* 020691B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t113);
|
|
/* 020691BC */ cpu->ctr = cpu->r[9];
|
|
/* 020691C0 */ _t114 = cpu->r[1] + 0x00000008u;
|
|
/* 020691C0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t114);
|
|
/* 020691C4 */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 020691C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020691CC */ _t115 = cpu->r[1] + 0x00000028u;
|
|
/* 020691CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t115);
|
|
/* 020691D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[10]);
|
|
/* 020691D4 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020691D4 */ _t117 = _t116 & 0x00000001u;
|
|
/* 020691D4 */ if (_t117) goto L_0206920C; else goto L_020691D8;
|
|
L_020691D8: ; // 0x20691d8
|
|
/* 020691D8 */ _t118 = cpu->r[1] + 0x00000028u;
|
|
/* 020691D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t118);
|
|
/* 020691DC */ cpu->ctr = cpu->r[27];
|
|
/* 020691E0 */ _t119 = cpu->r[1] + 0x00000008u;
|
|
/* 020691E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t119);
|
|
/* 020691E4 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_020691E8: ; // 0x20691e8
|
|
/* 020691E8 */ _t120 = cpu->r[7] + 0x00000000u;
|
|
/* 020691E8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t120);
|
|
/* 020691EC */ _t121 = cpu->r[8] + 0x00000001u;
|
|
/* 020691EC */ cpu->r[11] = rbrew_read8(cpu->mem, _t121);
|
|
/* 020691EC */ cpu->r[8] = _t121;
|
|
/* 020691F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[11]);
|
|
/* 020691F4 */ _t122 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020691F4 */ _t123 = _t122 & 0x00000001u;
|
|
/* 020691F4 */ if (_t123) goto L_020691F8; else goto L_02069254;
|
|
L_020691F8: ; // 0x20691f8
|
|
/* 020691F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 020691FC */ _t124 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020691FC */ _t125 = _t124 & 0x00000001u;
|
|
/* 020691FC */ if (_t125) goto L_0206920C; else goto L_02069200;
|
|
L_02069200: ; // 0x2069200
|
|
/* 02069200 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02069204 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02069204 */ _t126 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02069204 */ _t127 = _t126 >> (0x00000002u & 31u);
|
|
/* 02069204 */ _t128 = _t127 & 0x00000001u;
|
|
/* 02069204 */ if (_t128) goto L_020691E8; else goto L_02069208;
|
|
L_02069208: ; // 0x2069208
|
|
/* 02069208 */ goto L_02069254;
|
|
L_0206920C: ; // 0x206920c
|
|
/* 0206920C */ _t129 = cpu->r[1] + 0x00000014u;
|
|
/* 0206920C */ cpu->r[12] = rbrew_read32(cpu->mem, _t129);
|
|
/* 02069210 */ _t130 = cpu->r[12] + 0x00000014u;
|
|
/* 02069210 */ cpu->r[0] = rbrew_read32(cpu->mem, _t130);
|
|
/* 02069214 */ cpu->ctr = cpu->r[0];
|
|
/* 02069218 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0206921C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069220 */ _t131 = cpu->r[1] + 0x00000010u;
|
|
/* 02069220 */ cpu->r[4] = rbrew_read32(cpu->mem, _t131);
|
|
/* 02069224 */ cpu->r[3] = 0x00000000u;
|
|
/* 02069228 */ cpu->r[5] = cpu->r[26];
|
|
/* 0206922C */ Gambit_fn_020D0494(cpu);
|
|
/* 02069230 */ _t132 = cpu->r[3] + 0x00000000u;
|
|
/* 02069230 */ cpu->r[4] = rbrew_read32(cpu->mem, _t132);
|
|
/* 02069234 */ _t133 = cpu->r[4] + 0x00000034u;
|
|
/* 02069234 */ cpu->r[5] = rbrew_read32(cpu->mem, _t133);
|
|
/* 02069238 */ cpu->ctr = cpu->r[5];
|
|
/* 0206923C */ cpu->r[4] = cpu->r[30];
|
|
/* 02069240 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069244 */ _t134 = cpu->r[29] + 0x000001CCu;
|
|
/* 02069244 */ cpu->r[10] = rbrew_read32(cpu->mem, _t134);
|
|
/* 02069248 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206924C */ _t135 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206924C */ _t136 = _t135 & 0x00000001u;
|
|
/* 0206924C */ if (_t136) goto L_0206A038; else goto L_02069250;
|
|
L_02069250: ; // 0x2069250
|
|
/* 02069250 */ goto L_02069CA0;
|
|
L_02069254: ; // 0x2069254
|
|
/* 02069254 */ cpu->r[6] = 0x10000000u;
|
|
/* 02069258 */ _t137 = cpu->r[1] + 0x00000034u;
|
|
/* 02069258 */ rbrew_write32(cpu->mem, _t137, cpu->r[28]);
|
|
/* 0206925C */ cpu->r[6] = cpu->r[6] + 0x000075C4u;
|
|
/* 02069260 */ _t138 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069260 */ cpu->r[7] = rbrew_read32(cpu->mem, _t138);
|
|
/* 02069264 */ _t139 = cpu->r[1] + 0x00000030u;
|
|
/* 02069264 */ rbrew_write32(cpu->mem, _t139, cpu->r[6]);
|
|
/* 02069268 */ _t140 = cpu->r[7] + 0x00000014u;
|
|
/* 02069268 */ cpu->r[8] = rbrew_read32(cpu->mem, _t140);
|
|
/* 0206926C */ cpu->ctr = cpu->r[8];
|
|
/* 02069270 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069274 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069278 */ _t141 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069278 */ cpu->r[9] = rbrew_read32(cpu->mem, _t141);
|
|
/* 0206927C */ _t142 = cpu->r[9] + 0x00000014u;
|
|
/* 0206927C */ cpu->r[10] = rbrew_read32(cpu->mem, _t142);
|
|
/* 02069280 */ cpu->ctr = cpu->r[10];
|
|
/* 02069284 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069288 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206928C */ _t143 = cpu->r[1] + 0x00000034u;
|
|
/* 0206928C */ cpu->r[11] = rbrew_read32(cpu->mem, _t143);
|
|
/* 02069290 */ _t144 = cpu->r[11] + 0x00000014u;
|
|
/* 02069290 */ cpu->r[12] = rbrew_read32(cpu->mem, _t144);
|
|
/* 02069294 */ cpu->ctr = cpu->r[12];
|
|
/* 02069298 */ _t145 = cpu->r[1] + 0x00000008u;
|
|
/* 02069298 */ cpu->r[24] = rbrew_read32(cpu->mem, _t145);
|
|
/* 0206929C */ cpu->r[3] = cpu->r[1] + 0x00000030u;
|
|
/* 020692A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020692A4 */ _t146 = cpu->r[1] + 0x00000030u;
|
|
/* 020692A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t146);
|
|
/* 020692A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[0]);
|
|
/* 020692AC */ _t147 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020692AC */ _t148 = _t147 & 0x00000001u;
|
|
/* 020692AC */ if (_t148) goto L_020692E4; else goto L_020692B0;
|
|
L_020692B0: ; // 0x20692b0
|
|
/* 020692B0 */ _t149 = cpu->r[1] + 0x00000030u;
|
|
/* 020692B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t149);
|
|
/* 020692B4 */ cpu->ctr = cpu->r[27];
|
|
/* 020692B8 */ _t150 = cpu->r[1] + 0x00000008u;
|
|
/* 020692B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t150);
|
|
/* 020692BC */ cpu->r[6] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_020692C0: ; // 0x20692c0
|
|
/* 020692C0 */ _t151 = cpu->r[5] + 0x00000000u;
|
|
/* 020692C0 */ cpu->r[10] = rbrew_read8(cpu->mem, _t151);
|
|
/* 020692C4 */ _t152 = cpu->r[6] + 0x00000001u;
|
|
/* 020692C4 */ cpu->r[4] = rbrew_read8(cpu->mem, _t152);
|
|
/* 020692C4 */ cpu->r[6] = _t152;
|
|
/* 020692C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[4]);
|
|
/* 020692CC */ _t153 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020692CC */ _t154 = _t153 & 0x00000001u;
|
|
/* 020692CC */ if (_t154) goto L_020692D0; else goto L_0206932C;
|
|
L_020692D0: ; // 0x20692d0
|
|
/* 020692D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 020692D4 */ _t155 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020692D4 */ _t156 = _t155 & 0x00000001u;
|
|
/* 020692D4 */ if (_t156) goto L_020692E4; else goto L_020692D8;
|
|
L_020692D8: ; // 0x20692d8
|
|
/* 020692D8 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 020692DC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020692DC */ _t157 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020692DC */ _t158 = _t157 >> (0x00000002u & 31u);
|
|
/* 020692DC */ _t159 = _t158 & 0x00000001u;
|
|
/* 020692DC */ if (_t159) goto L_020692C0; else goto L_020692E0;
|
|
L_020692E0: ; // 0x20692e0
|
|
/* 020692E0 */ goto L_0206932C;
|
|
L_020692E4: ; // 0x20692e4
|
|
/* 020692E4 */ _t160 = cpu->r[1] + 0x00000014u;
|
|
/* 020692E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t160);
|
|
/* 020692E8 */ _t161 = cpu->r[7] + 0x00000014u;
|
|
/* 020692E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t161);
|
|
/* 020692EC */ cpu->ctr = cpu->r[0];
|
|
/* 020692F0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 020692F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020692F8 */ _t162 = cpu->r[1] + 0x00000010u;
|
|
/* 020692F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t162);
|
|
/* 020692FC */ cpu->r[3] = 0x00000000u;
|
|
/* 02069300 */ cpu->r[5] = cpu->r[26];
|
|
/* 02069304 */ Gambit_fn_020D46C4(cpu);
|
|
/* 02069308 */ _t163 = cpu->r[3] + 0x00000000u;
|
|
/* 02069308 */ cpu->r[9] = rbrew_read32(cpu->mem, _t163);
|
|
/* 0206930C */ _t164 = cpu->r[9] + 0x00000034u;
|
|
/* 0206930C */ cpu->r[10] = rbrew_read32(cpu->mem, _t164);
|
|
/* 02069310 */ cpu->ctr = cpu->r[10];
|
|
/* 02069314 */ cpu->r[4] = cpu->r[30];
|
|
/* 02069318 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206931C */ _t165 = cpu->r[29] + 0x000001CCu;
|
|
/* 0206931C */ cpu->r[10] = rbrew_read32(cpu->mem, _t165);
|
|
/* 02069320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02069324 */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069324 */ _t167 = _t166 & 0x00000001u;
|
|
/* 02069324 */ if (_t167) goto L_0206A038; else goto L_02069328;
|
|
L_02069328: ; // 0x2069328
|
|
/* 02069328 */ goto L_02069CA0;
|
|
L_0206932C: ; // 0x206932c
|
|
/* 0206932C */ cpu->r[0] = 0x10000000u;
|
|
/* 02069330 */ _t168 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02069330 */ rbrew_write32(cpu->mem, _t168, cpu->r[28]);
|
|
/* 02069334 */ cpu->r[0] = cpu->r[0] + 0x000075CCu;
|
|
/* 02069338 */ _t169 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069338 */ cpu->r[12] = rbrew_read32(cpu->mem, _t169);
|
|
/* 0206933C */ _t170 = cpu->r[1] + 0x00000038u;
|
|
/* 0206933C */ rbrew_write32(cpu->mem, _t170, cpu->r[0]);
|
|
/* 02069340 */ _t171 = cpu->r[12] + 0x00000014u;
|
|
/* 02069340 */ cpu->r[4] = rbrew_read32(cpu->mem, _t171);
|
|
/* 02069344 */ cpu->ctr = cpu->r[4];
|
|
/* 02069348 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206934C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069350 */ _t172 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069350 */ cpu->r[5] = rbrew_read32(cpu->mem, _t172);
|
|
/* 02069354 */ _t173 = cpu->r[5] + 0x00000014u;
|
|
/* 02069354 */ cpu->r[6] = rbrew_read32(cpu->mem, _t173);
|
|
/* 02069358 */ cpu->ctr = cpu->r[6];
|
|
/* 0206935C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069360 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069364 */ _t174 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02069364 */ cpu->r[7] = rbrew_read32(cpu->mem, _t174);
|
|
/* 02069368 */ _t175 = cpu->r[7] + 0x00000014u;
|
|
/* 02069368 */ cpu->r[8] = rbrew_read32(cpu->mem, _t175);
|
|
/* 0206936C */ cpu->ctr = cpu->r[8];
|
|
/* 02069370 */ _t176 = cpu->r[1] + 0x00000008u;
|
|
/* 02069370 */ cpu->r[24] = rbrew_read32(cpu->mem, _t176);
|
|
/* 02069374 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02069378 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206937C */ _t177 = cpu->r[1] + 0x00000038u;
|
|
/* 0206937C */ cpu->r[9] = rbrew_read32(cpu->mem, _t177);
|
|
/* 02069380 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[9]);
|
|
/* 02069384 */ _t178 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069384 */ _t179 = _t178 & 0x00000001u;
|
|
/* 02069384 */ if (_t179) goto L_020693BC; else goto L_02069388;
|
|
L_02069388: ; // 0x2069388
|
|
/* 02069388 */ _t180 = cpu->r[1] + 0x00000038u;
|
|
/* 02069388 */ cpu->r[4] = rbrew_read32(cpu->mem, _t180);
|
|
/* 0206938C */ cpu->ctr = cpu->r[27];
|
|
/* 02069390 */ _t181 = cpu->r[1] + 0x00000008u;
|
|
/* 02069390 */ cpu->r[12] = rbrew_read32(cpu->mem, _t181);
|
|
/* 02069394 */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_02069398: ; // 0x2069398
|
|
/* 02069398 */ _t182 = cpu->r[12] + 0x00000000u;
|
|
/* 02069398 */ cpu->r[11] = rbrew_read8(cpu->mem, _t182);
|
|
/* 0206939C */ _t183 = cpu->r[4] + 0x00000001u;
|
|
/* 0206939C */ cpu->r[10] = rbrew_read8(cpu->mem, _t183);
|
|
/* 0206939C */ cpu->r[4] = _t183;
|
|
/* 020693A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[10]);
|
|
/* 020693A4 */ _t184 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020693A4 */ _t185 = _t184 & 0x00000001u;
|
|
/* 020693A4 */ if (_t185) goto L_020693A8; else goto L_02069404;
|
|
L_020693A8: ; // 0x20693a8
|
|
/* 020693A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 020693AC */ _t186 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020693AC */ _t187 = _t186 & 0x00000001u;
|
|
/* 020693AC */ if (_t187) goto L_020693BC; else goto L_020693B0;
|
|
L_020693B0: ; // 0x20693b0
|
|
/* 020693B0 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 020693B4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020693B4 */ _t188 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020693B4 */ _t189 = _t188 >> (0x00000002u & 31u);
|
|
/* 020693B4 */ _t190 = _t189 & 0x00000001u;
|
|
/* 020693B4 */ if (_t190) goto L_02069398; else goto L_020693B8;
|
|
L_020693B8: ; // 0x20693b8
|
|
/* 020693B8 */ goto L_02069404;
|
|
L_020693BC: ; // 0x20693bc
|
|
/* 020693BC */ _t191 = cpu->r[1] + 0x00000014u;
|
|
/* 020693BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t191);
|
|
/* 020693C0 */ _t192 = cpu->r[12] + 0x00000014u;
|
|
/* 020693C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t192);
|
|
/* 020693C4 */ cpu->ctr = cpu->r[0];
|
|
/* 020693C8 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 020693CC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020693D0 */ _t193 = cpu->r[1] + 0x00000010u;
|
|
/* 020693D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t193);
|
|
/* 020693D4 */ cpu->r[3] = 0x00000000u;
|
|
/* 020693D8 */ cpu->r[5] = cpu->r[26];
|
|
/* 020693DC */ Gambit_fn_020D133C(cpu);
|
|
/* 020693E0 */ _t194 = cpu->r[3] + 0x00000000u;
|
|
/* 020693E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t194);
|
|
/* 020693E4 */ _t195 = cpu->r[4] + 0x00000034u;
|
|
/* 020693E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t195);
|
|
/* 020693E8 */ cpu->ctr = cpu->r[5];
|
|
/* 020693EC */ cpu->r[4] = cpu->r[30];
|
|
/* 020693F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020693F4 */ _t196 = cpu->r[29] + 0x000001CCu;
|
|
/* 020693F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t196);
|
|
/* 020693F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 020693FC */ _t197 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020693FC */ _t198 = _t197 & 0x00000001u;
|
|
/* 020693FC */ if (_t198) goto L_0206A038; else goto L_02069400;
|
|
L_02069400: ; // 0x2069400
|
|
/* 02069400 */ goto L_02069CA0;
|
|
L_02069404: ; // 0x2069404
|
|
/* 02069404 */ cpu->r[6] = 0x10000000u;
|
|
/* 02069408 */ _t199 = cpu->r[1] + 0x00000044u;
|
|
/* 02069408 */ rbrew_write32(cpu->mem, _t199, cpu->r[28]);
|
|
/* 0206940C */ cpu->r[6] = cpu->r[6] + 0x000075DCu;
|
|
/* 02069410 */ _t200 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069410 */ cpu->r[7] = rbrew_read32(cpu->mem, _t200);
|
|
/* 02069414 */ _t201 = cpu->r[1] + 0x00000040u;
|
|
/* 02069414 */ rbrew_write32(cpu->mem, _t201, cpu->r[6]);
|
|
/* 02069418 */ _t202 = cpu->r[7] + 0x00000014u;
|
|
/* 02069418 */ cpu->r[8] = rbrew_read32(cpu->mem, _t202);
|
|
/* 0206941C */ cpu->ctr = cpu->r[8];
|
|
/* 02069420 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069424 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069428 */ _t203 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069428 */ cpu->r[9] = rbrew_read32(cpu->mem, _t203);
|
|
/* 0206942C */ _t204 = cpu->r[9] + 0x00000014u;
|
|
/* 0206942C */ cpu->r[10] = rbrew_read32(cpu->mem, _t204);
|
|
/* 02069430 */ cpu->ctr = cpu->r[10];
|
|
/* 02069434 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069438 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206943C */ _t205 = cpu->r[1] + 0x00000044u;
|
|
/* 0206943C */ cpu->r[11] = rbrew_read32(cpu->mem, _t205);
|
|
/* 02069440 */ _t206 = cpu->r[11] + 0x00000014u;
|
|
/* 02069440 */ cpu->r[12] = rbrew_read32(cpu->mem, _t206);
|
|
/* 02069444 */ cpu->ctr = cpu->r[12];
|
|
/* 02069448 */ _t207 = cpu->r[1] + 0x00000008u;
|
|
/* 02069448 */ cpu->r[24] = rbrew_read32(cpu->mem, _t207);
|
|
/* 0206944C */ cpu->r[3] = cpu->r[1] + 0x00000040u;
|
|
/* 02069450 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069454 */ _t208 = cpu->r[1] + 0x00000040u;
|
|
/* 02069454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t208);
|
|
/* 02069458 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[0]);
|
|
/* 0206945C */ _t209 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206945C */ _t210 = _t209 & 0x00000001u;
|
|
/* 0206945C */ if (_t210) goto L_02069494; else goto L_02069460;
|
|
L_02069460: ; // 0x2069460
|
|
/* 02069460 */ _t211 = cpu->r[1] + 0x00000040u;
|
|
/* 02069460 */ cpu->r[11] = rbrew_read32(cpu->mem, _t211);
|
|
/* 02069464 */ cpu->ctr = cpu->r[27];
|
|
/* 02069468 */ _t212 = cpu->r[1] + 0x00000008u;
|
|
/* 02069468 */ cpu->r[10] = rbrew_read32(cpu->mem, _t212);
|
|
/* 0206946C */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_02069470: ; // 0x2069470
|
|
/* 02069470 */ _t213 = cpu->r[10] + 0x00000000u;
|
|
/* 02069470 */ cpu->r[12] = rbrew_read8(cpu->mem, _t213);
|
|
/* 02069474 */ _t214 = cpu->r[11] + 0x00000001u;
|
|
/* 02069474 */ cpu->r[4] = rbrew_read8(cpu->mem, _t214);
|
|
/* 02069474 */ cpu->r[11] = _t214;
|
|
/* 02069478 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[4]);
|
|
/* 0206947C */ _t215 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206947C */ _t216 = _t215 & 0x00000001u;
|
|
/* 0206947C */ if (_t216) goto L_02069480; else goto L_020694DC;
|
|
L_02069480: ; // 0x2069480
|
|
/* 02069480 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 02069484 */ _t217 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069484 */ _t218 = _t217 & 0x00000001u;
|
|
/* 02069484 */ if (_t218) goto L_02069494; else goto L_02069488;
|
|
L_02069488: ; // 0x2069488
|
|
/* 02069488 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 0206948C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0206948C */ _t219 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0206948C */ _t220 = _t219 >> (0x00000002u & 31u);
|
|
/* 0206948C */ _t221 = _t220 & 0x00000001u;
|
|
/* 0206948C */ if (_t221) goto L_02069470; else goto L_02069490;
|
|
L_02069490: ; // 0x2069490
|
|
/* 02069490 */ goto L_020694DC;
|
|
L_02069494: ; // 0x2069494
|
|
/* 02069494 */ _t222 = cpu->r[1] + 0x00000014u;
|
|
/* 02069494 */ cpu->r[5] = rbrew_read32(cpu->mem, _t222);
|
|
/* 02069498 */ _t223 = cpu->r[5] + 0x00000014u;
|
|
/* 02069498 */ cpu->r[6] = rbrew_read32(cpu->mem, _t223);
|
|
/* 0206949C */ cpu->ctr = cpu->r[6];
|
|
/* 020694A0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 020694A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020694A8 */ _t224 = cpu->r[1] + 0x00000010u;
|
|
/* 020694A8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t224);
|
|
/* 020694AC */ cpu->r[3] = 0x00000000u;
|
|
/* 020694B0 */ cpu->r[5] = cpu->r[26];
|
|
/* 020694B4 */ Gambit_fn_020D5308(cpu);
|
|
/* 020694B8 */ _t225 = cpu->r[3] + 0x00000000u;
|
|
/* 020694B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t225);
|
|
/* 020694BC */ _t226 = cpu->r[7] + 0x00000034u;
|
|
/* 020694BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t226);
|
|
/* 020694C0 */ cpu->ctr = cpu->r[0];
|
|
/* 020694C4 */ cpu->r[4] = cpu->r[30];
|
|
/* 020694C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020694CC */ _t227 = cpu->r[29] + 0x000001CCu;
|
|
/* 020694CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t227);
|
|
/* 020694D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 020694D4 */ _t228 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020694D4 */ _t229 = _t228 & 0x00000001u;
|
|
/* 020694D4 */ if (_t229) goto L_0206A038; else goto L_020694D8;
|
|
L_020694D8: ; // 0x20694d8
|
|
/* 020694D8 */ goto L_02069CA0;
|
|
L_020694DC: ; // 0x20694dc
|
|
/* 020694DC */ cpu->r[9] = 0x10000000u;
|
|
/* 020694E0 */ _t230 = cpu->r[1] + 0x0000004Cu;
|
|
/* 020694E0 */ rbrew_write32(cpu->mem, _t230, cpu->r[28]);
|
|
/* 020694E4 */ cpu->r[9] = cpu->r[9] + 0x00007614u;
|
|
/* 020694E8 */ _t231 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020694E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t231);
|
|
/* 020694EC */ _t232 = cpu->r[1] + 0x00000048u;
|
|
/* 020694EC */ rbrew_write32(cpu->mem, _t232, cpu->r[9]);
|
|
/* 020694F0 */ _t233 = cpu->r[10] + 0x00000014u;
|
|
/* 020694F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t233);
|
|
/* 020694F4 */ cpu->ctr = cpu->r[11];
|
|
/* 020694F8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020694FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069500 */ _t234 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069500 */ cpu->r[12] = rbrew_read32(cpu->mem, _t234);
|
|
/* 02069504 */ _t235 = cpu->r[12] + 0x00000014u;
|
|
/* 02069504 */ cpu->r[0] = rbrew_read32(cpu->mem, _t235);
|
|
/* 02069508 */ cpu->ctr = cpu->r[0];
|
|
/* 0206950C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069510 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069514 */ _t236 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02069514 */ cpu->r[4] = rbrew_read32(cpu->mem, _t236);
|
|
/* 02069518 */ _t237 = cpu->r[4] + 0x00000014u;
|
|
/* 02069518 */ cpu->r[5] = rbrew_read32(cpu->mem, _t237);
|
|
/* 0206951C */ cpu->ctr = cpu->r[5];
|
|
/* 02069520 */ _t238 = cpu->r[1] + 0x00000008u;
|
|
/* 02069520 */ cpu->r[24] = rbrew_read32(cpu->mem, _t238);
|
|
/* 02069524 */ cpu->r[3] = cpu->r[1] + 0x00000048u;
|
|
/* 02069528 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206952C */ _t239 = cpu->r[1] + 0x00000048u;
|
|
/* 0206952C */ cpu->r[6] = rbrew_read32(cpu->mem, _t239);
|
|
/* 02069530 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[6]);
|
|
/* 02069534 */ _t240 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069534 */ _t241 = _t240 & 0x00000001u;
|
|
/* 02069534 */ if (_t241) goto L_0206956C; else goto L_02069538;
|
|
L_02069538: ; // 0x2069538
|
|
/* 02069538 */ _t242 = cpu->r[1] + 0x00000048u;
|
|
/* 02069538 */ cpu->r[9] = rbrew_read32(cpu->mem, _t242);
|
|
/* 0206953C */ cpu->ctr = cpu->r[27];
|
|
/* 02069540 */ _t243 = cpu->r[1] + 0x00000008u;
|
|
/* 02069540 */ cpu->r[8] = rbrew_read32(cpu->mem, _t243);
|
|
/* 02069544 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_02069548: ; // 0x2069548
|
|
/* 02069548 */ _t244 = cpu->r[8] + 0x00000000u;
|
|
/* 02069548 */ cpu->r[0] = rbrew_read8(cpu->mem, _t244);
|
|
/* 0206954C */ _t245 = cpu->r[9] + 0x00000001u;
|
|
/* 0206954C */ cpu->r[7] = rbrew_read8(cpu->mem, _t245);
|
|
/* 0206954C */ cpu->r[9] = _t245;
|
|
/* 02069550 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02069554 */ _t246 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069554 */ _t247 = _t246 & 0x00000001u;
|
|
/* 02069554 */ if (_t247) goto L_02069558; else goto L_020695B4;
|
|
L_02069558: ; // 0x2069558
|
|
/* 02069558 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0206955C */ _t248 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206955C */ _t249 = _t248 & 0x00000001u;
|
|
/* 0206955C */ if (_t249) goto L_0206956C; else goto L_02069560;
|
|
L_02069560: ; // 0x2069560
|
|
/* 02069560 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02069564 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02069564 */ _t250 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02069564 */ _t251 = _t250 >> (0x00000002u & 31u);
|
|
/* 02069564 */ _t252 = _t251 & 0x00000001u;
|
|
/* 02069564 */ if (_t252) goto L_02069548; else goto L_02069568;
|
|
L_02069568: ; // 0x2069568
|
|
/* 02069568 */ goto L_020695B4;
|
|
L_0206956C: ; // 0x206956c
|
|
/* 0206956C */ _t253 = cpu->r[1] + 0x00000014u;
|
|
/* 0206956C */ cpu->r[10] = rbrew_read32(cpu->mem, _t253);
|
|
/* 02069570 */ _t254 = cpu->r[10] + 0x00000014u;
|
|
/* 02069570 */ cpu->r[11] = rbrew_read32(cpu->mem, _t254);
|
|
/* 02069574 */ cpu->ctr = cpu->r[11];
|
|
/* 02069578 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0206957C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069580 */ _t255 = cpu->r[1] + 0x00000010u;
|
|
/* 02069580 */ cpu->r[4] = rbrew_read32(cpu->mem, _t255);
|
|
/* 02069584 */ cpu->r[3] = 0x00000000u;
|
|
/* 02069588 */ cpu->r[5] = cpu->r[26];
|
|
/* 0206958C */ Gambit_fn_020CD4EC(cpu);
|
|
/* 02069590 */ _t256 = cpu->r[3] + 0x00000000u;
|
|
/* 02069590 */ cpu->r[12] = rbrew_read32(cpu->mem, _t256);
|
|
/* 02069594 */ _t257 = cpu->r[12] + 0x00000034u;
|
|
/* 02069594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t257);
|
|
/* 02069598 */ cpu->ctr = cpu->r[0];
|
|
/* 0206959C */ cpu->r[4] = cpu->r[30];
|
|
/* 020695A0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020695A4 */ _t258 = cpu->r[29] + 0x000001CCu;
|
|
/* 020695A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t258);
|
|
/* 020695A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 020695AC */ _t259 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020695AC */ _t260 = _t259 & 0x00000001u;
|
|
/* 020695AC */ if (_t260) goto L_0206A038; else goto L_020695B0;
|
|
L_020695B0: ; // 0x20695b0
|
|
/* 020695B0 */ goto L_02069CA0;
|
|
L_020695B4: ; // 0x20695b4
|
|
/* 020695B4 */ cpu->r[0] = 0x10000000u;
|
|
/* 020695B8 */ _t261 = cpu->r[1] + 0x00000054u;
|
|
/* 020695B8 */ rbrew_write32(cpu->mem, _t261, cpu->r[28]);
|
|
/* 020695BC */ cpu->r[0] = cpu->r[0] + 0x00007638u;
|
|
/* 020695C0 */ _t262 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020695C0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t262);
|
|
/* 020695C4 */ _t263 = cpu->r[1] + 0x00000050u;
|
|
/* 020695C4 */ rbrew_write32(cpu->mem, _t263, cpu->r[0]);
|
|
/* 020695C8 */ _t264 = cpu->r[6] + 0x00000014u;
|
|
/* 020695C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t264);
|
|
/* 020695CC */ cpu->ctr = cpu->r[7];
|
|
/* 020695D0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020695D4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020695D8 */ _t265 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020695D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t265);
|
|
/* 020695DC */ _t266 = cpu->r[8] + 0x00000014u;
|
|
/* 020695DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t266);
|
|
/* 020695E0 */ cpu->ctr = cpu->r[9];
|
|
/* 020695E4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020695E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020695EC */ _t267 = cpu->r[1] + 0x00000054u;
|
|
/* 020695EC */ cpu->r[10] = rbrew_read32(cpu->mem, _t267);
|
|
/* 020695F0 */ _t268 = cpu->r[10] + 0x00000014u;
|
|
/* 020695F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t268);
|
|
/* 020695F4 */ cpu->ctr = cpu->r[11];
|
|
/* 020695F8 */ _t269 = cpu->r[1] + 0x00000008u;
|
|
/* 020695F8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t269);
|
|
/* 020695FC */ cpu->r[3] = cpu->r[1] + 0x00000050u;
|
|
/* 02069600 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069604 */ _t270 = cpu->r[1] + 0x00000050u;
|
|
/* 02069604 */ cpu->r[12] = rbrew_read32(cpu->mem, _t270);
|
|
/* 02069608 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[12]);
|
|
/* 0206960C */ _t271 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206960C */ _t272 = _t271 & 0x00000001u;
|
|
/* 0206960C */ if (_t272) goto L_02069644; else goto L_02069610;
|
|
L_02069610: ; // 0x2069610
|
|
/* 02069610 */ _t273 = cpu->r[1] + 0x00000050u;
|
|
/* 02069610 */ cpu->r[7] = rbrew_read32(cpu->mem, _t273);
|
|
/* 02069614 */ cpu->ctr = cpu->r[27];
|
|
/* 02069618 */ _t274 = cpu->r[1] + 0x00000008u;
|
|
/* 02069618 */ cpu->r[6] = rbrew_read32(cpu->mem, _t274);
|
|
/* 0206961C */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_02069620: ; // 0x2069620
|
|
/* 02069620 */ _t275 = cpu->r[6] + 0x00000000u;
|
|
/* 02069620 */ cpu->r[4] = rbrew_read8(cpu->mem, _t275);
|
|
/* 02069624 */ _t276 = cpu->r[7] + 0x00000001u;
|
|
/* 02069624 */ cpu->r[0] = rbrew_read8(cpu->mem, _t276);
|
|
/* 02069624 */ cpu->r[7] = _t276;
|
|
/* 02069628 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 0206962C */ _t277 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206962C */ _t278 = _t277 & 0x00000001u;
|
|
/* 0206962C */ if (_t278) goto L_02069630; else goto L_0206968C;
|
|
L_02069630: ; // 0x2069630
|
|
/* 02069630 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 02069634 */ _t279 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069634 */ _t280 = _t279 & 0x00000001u;
|
|
/* 02069634 */ if (_t280) goto L_02069644; else goto L_02069638;
|
|
L_02069638: ; // 0x2069638
|
|
/* 02069638 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0206963C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0206963C */ _t281 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0206963C */ _t282 = _t281 >> (0x00000002u & 31u);
|
|
/* 0206963C */ _t283 = _t282 & 0x00000001u;
|
|
/* 0206963C */ if (_t283) goto L_02069620; else goto L_02069640;
|
|
L_02069640: ; // 0x2069640
|
|
/* 02069640 */ goto L_0206968C;
|
|
L_02069644: ; // 0x2069644
|
|
/* 02069644 */ _t284 = cpu->r[1] + 0x00000014u;
|
|
/* 02069644 */ cpu->r[5] = rbrew_read32(cpu->mem, _t284);
|
|
/* 02069648 */ _t285 = cpu->r[5] + 0x00000014u;
|
|
/* 02069648 */ cpu->r[6] = rbrew_read32(cpu->mem, _t285);
|
|
/* 0206964C */ cpu->ctr = cpu->r[6];
|
|
/* 02069650 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02069654 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069658 */ _t286 = cpu->r[1] + 0x00000010u;
|
|
/* 02069658 */ cpu->r[4] = rbrew_read32(cpu->mem, _t286);
|
|
/* 0206965C */ cpu->r[3] = 0x00000000u;
|
|
/* 02069660 */ cpu->r[5] = cpu->r[26];
|
|
/* 02069664 */ Gambit_fn_020D2CC4(cpu);
|
|
/* 02069668 */ _t287 = cpu->r[3] + 0x00000000u;
|
|
/* 02069668 */ cpu->r[7] = rbrew_read32(cpu->mem, _t287);
|
|
/* 0206966C */ _t288 = cpu->r[7] + 0x00000034u;
|
|
/* 0206966C */ cpu->r[8] = rbrew_read32(cpu->mem, _t288);
|
|
/* 02069670 */ cpu->ctr = cpu->r[8];
|
|
/* 02069674 */ cpu->r[4] = cpu->r[30];
|
|
/* 02069678 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206967C */ _t289 = cpu->r[29] + 0x000001CCu;
|
|
/* 0206967C */ cpu->r[10] = rbrew_read32(cpu->mem, _t289);
|
|
/* 02069680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02069684 */ _t290 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069684 */ _t291 = _t290 & 0x00000001u;
|
|
/* 02069684 */ if (_t291) goto L_0206A038; else goto L_02069688;
|
|
L_02069688: ; // 0x2069688
|
|
/* 02069688 */ goto L_02069CA0;
|
|
L_0206968C: ; // 0x206968c
|
|
/* 0206968C */ cpu->r[0] = 0x10000000u;
|
|
/* 02069690 */ _t292 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02069690 */ rbrew_write32(cpu->mem, _t292, cpu->r[28]);
|
|
/* 02069694 */ cpu->r[0] = cpu->r[0] + 0x000075FCu;
|
|
/* 02069698 */ _t293 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069698 */ cpu->r[10] = rbrew_read32(cpu->mem, _t293);
|
|
/* 0206969C */ _t294 = cpu->r[1] + 0x00000058u;
|
|
/* 0206969C */ rbrew_write32(cpu->mem, _t294, cpu->r[0]);
|
|
/* 020696A0 */ _t295 = cpu->r[10] + 0x00000014u;
|
|
/* 020696A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t295);
|
|
/* 020696A4 */ cpu->ctr = cpu->r[0];
|
|
/* 020696A8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020696AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020696B0 */ _t296 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020696B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t296);
|
|
/* 020696B4 */ _t297 = cpu->r[12] + 0x00000014u;
|
|
/* 020696B4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t297);
|
|
/* 020696B8 */ cpu->ctr = cpu->r[4];
|
|
/* 020696BC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020696C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020696C4 */ _t298 = cpu->r[1] + 0x0000005Cu;
|
|
/* 020696C4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t298);
|
|
/* 020696C8 */ _t299 = cpu->r[5] + 0x00000014u;
|
|
/* 020696C8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t299);
|
|
/* 020696CC */ cpu->ctr = cpu->r[6];
|
|
/* 020696D0 */ _t300 = cpu->r[1] + 0x00000008u;
|
|
/* 020696D0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t300);
|
|
/* 020696D4 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 020696D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020696DC */ _t301 = cpu->r[1] + 0x00000058u;
|
|
/* 020696DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t301);
|
|
/* 020696E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[7]);
|
|
/* 020696E4 */ _t302 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020696E4 */ _t303 = _t302 & 0x00000001u;
|
|
/* 020696E4 */ if (_t303) goto L_0206971C; else goto L_020696E8;
|
|
L_020696E8: ; // 0x20696e8
|
|
/* 020696E8 */ _t304 = cpu->r[1] + 0x00000058u;
|
|
/* 020696E8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t304);
|
|
/* 020696EC */ cpu->ctr = cpu->r[27];
|
|
/* 020696F0 */ _t305 = cpu->r[1] + 0x00000008u;
|
|
/* 020696F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t305);
|
|
/* 020696F4 */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_020696F8: ; // 0x20696f8
|
|
/* 020696F8 */ _t306 = cpu->r[12] + 0x00000000u;
|
|
/* 020696F8 */ cpu->r[5] = rbrew_read8(cpu->mem, _t306);
|
|
/* 020696FC */ _t307 = cpu->r[4] + 0x00000001u;
|
|
/* 020696FC */ cpu->r[8] = rbrew_read8(cpu->mem, _t307);
|
|
/* 020696FC */ cpu->r[4] = _t307;
|
|
/* 02069700 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[8]);
|
|
/* 02069704 */ _t308 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069704 */ _t309 = _t308 & 0x00000001u;
|
|
/* 02069704 */ if (_t309) goto L_02069708; else goto L_02069764;
|
|
L_02069708: ; // 0x2069708
|
|
/* 02069708 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 0206970C */ _t310 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206970C */ _t311 = _t310 & 0x00000001u;
|
|
/* 0206970C */ if (_t311) goto L_0206971C; else goto L_02069710;
|
|
L_02069710: ; // 0x2069710
|
|
/* 02069710 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02069714 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02069714 */ _t312 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02069714 */ _t313 = _t312 >> (0x00000002u & 31u);
|
|
/* 02069714 */ _t314 = _t313 & 0x00000001u;
|
|
/* 02069714 */ if (_t314) goto L_020696F8; else goto L_02069718;
|
|
L_02069718: ; // 0x2069718
|
|
/* 02069718 */ goto L_02069764;
|
|
L_0206971C: ; // 0x206971c
|
|
/* 0206971C */ _t315 = cpu->r[1] + 0x00000014u;
|
|
/* 0206971C */ cpu->r[9] = rbrew_read32(cpu->mem, _t315);
|
|
/* 02069720 */ _t316 = cpu->r[9] + 0x00000014u;
|
|
/* 02069720 */ cpu->r[10] = rbrew_read32(cpu->mem, _t316);
|
|
/* 02069724 */ cpu->ctr = cpu->r[10];
|
|
/* 02069728 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0206972C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069730 */ _t317 = cpu->r[1] + 0x00000010u;
|
|
/* 02069730 */ cpu->r[4] = rbrew_read32(cpu->mem, _t317);
|
|
/* 02069734 */ cpu->r[3] = 0x00000000u;
|
|
/* 02069738 */ cpu->r[5] = cpu->r[26];
|
|
/* 0206973C */ Gambit_fn_020D3530(cpu);
|
|
/* 02069740 */ _t318 = cpu->r[3] + 0x00000000u;
|
|
/* 02069740 */ cpu->r[11] = rbrew_read32(cpu->mem, _t318);
|
|
/* 02069744 */ _t319 = cpu->r[11] + 0x00000034u;
|
|
/* 02069744 */ cpu->r[12] = rbrew_read32(cpu->mem, _t319);
|
|
/* 02069748 */ cpu->ctr = cpu->r[12];
|
|
/* 0206974C */ cpu->r[4] = cpu->r[30];
|
|
/* 02069750 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069754 */ _t320 = cpu->r[29] + 0x000001CCu;
|
|
/* 02069754 */ cpu->r[10] = rbrew_read32(cpu->mem, _t320);
|
|
/* 02069758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206975C */ _t321 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206975C */ _t322 = _t321 & 0x00000001u;
|
|
/* 0206975C */ if (_t322) goto L_0206A038; else goto L_02069760;
|
|
L_02069760: ; // 0x2069760
|
|
/* 02069760 */ goto L_02069CA0;
|
|
L_02069764: ; // 0x2069764
|
|
/* 02069764 */ cpu->r[0] = 0x10000000u;
|
|
/* 02069768 */ _t323 = cpu->r[1] + 0x00000064u;
|
|
/* 02069768 */ rbrew_write32(cpu->mem, _t323, cpu->r[28]);
|
|
/* 0206976C */ cpu->r[0] = cpu->r[0] + 0x00007648u;
|
|
/* 02069770 */ _t324 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069770 */ cpu->r[4] = rbrew_read32(cpu->mem, _t324);
|
|
/* 02069774 */ _t325 = cpu->r[1] + 0x00000060u;
|
|
/* 02069774 */ rbrew_write32(cpu->mem, _t325, cpu->r[0]);
|
|
/* 02069778 */ _t326 = cpu->r[4] + 0x00000014u;
|
|
/* 02069778 */ cpu->r[0] = rbrew_read32(cpu->mem, _t326);
|
|
/* 0206977C */ cpu->ctr = cpu->r[0];
|
|
/* 02069780 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069784 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069788 */ _t327 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069788 */ cpu->r[6] = rbrew_read32(cpu->mem, _t327);
|
|
/* 0206978C */ _t328 = cpu->r[6] + 0x00000014u;
|
|
/* 0206978C */ cpu->r[7] = rbrew_read32(cpu->mem, _t328);
|
|
/* 02069790 */ cpu->ctr = cpu->r[7];
|
|
/* 02069794 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069798 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206979C */ _t329 = cpu->r[1] + 0x00000064u;
|
|
/* 0206979C */ cpu->r[8] = rbrew_read32(cpu->mem, _t329);
|
|
/* 020697A0 */ _t330 = cpu->r[8] + 0x00000014u;
|
|
/* 020697A0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t330);
|
|
/* 020697A4 */ cpu->ctr = cpu->r[9];
|
|
/* 020697A8 */ _t331 = cpu->r[1] + 0x00000008u;
|
|
/* 020697A8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t331);
|
|
/* 020697AC */ cpu->r[3] = cpu->r[1] + 0x00000060u;
|
|
/* 020697B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020697B4 */ _t332 = cpu->r[1] + 0x00000060u;
|
|
/* 020697B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t332);
|
|
/* 020697B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[10]);
|
|
/* 020697BC */ _t333 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020697BC */ _t334 = _t333 & 0x00000001u;
|
|
/* 020697BC */ if (_t334) goto L_020697F4; else goto L_020697C0;
|
|
L_020697C0: ; // 0x20697c0
|
|
/* 020697C0 */ _t335 = cpu->r[1] + 0x00000060u;
|
|
/* 020697C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t335);
|
|
/* 020697C4 */ cpu->ctr = cpu->r[27];
|
|
/* 020697C8 */ _t336 = cpu->r[1] + 0x00000008u;
|
|
/* 020697C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t336);
|
|
/* 020697CC */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_020697D0: ; // 0x20697d0
|
|
/* 020697D0 */ _t337 = cpu->r[10] + 0x00000000u;
|
|
/* 020697D0 */ cpu->r[6] = rbrew_read8(cpu->mem, _t337);
|
|
/* 020697D4 */ _t338 = cpu->r[11] + 0x00000001u;
|
|
/* 020697D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t338);
|
|
/* 020697D4 */ cpu->r[11] = _t338;
|
|
/* 020697D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 020697DC */ _t339 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020697DC */ _t340 = _t339 & 0x00000001u;
|
|
/* 020697DC */ if (_t340) goto L_020697E0; else goto L_0206983C;
|
|
L_020697E0: ; // 0x20697e0
|
|
/* 020697E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 020697E4 */ _t341 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020697E4 */ _t342 = _t341 & 0x00000001u;
|
|
/* 020697E4 */ if (_t342) goto L_020697F4; else goto L_020697E8;
|
|
L_020697E8: ; // 0x20697e8
|
|
/* 020697E8 */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 020697EC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020697EC */ _t343 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020697EC */ _t344 = _t343 >> (0x00000002u & 31u);
|
|
/* 020697EC */ _t345 = _t344 & 0x00000001u;
|
|
/* 020697EC */ if (_t345) goto L_020697D0; else goto L_020697F0;
|
|
L_020697F0: ; // 0x20697f0
|
|
/* 020697F0 */ goto L_0206983C;
|
|
L_020697F4: ; // 0x20697f4
|
|
/* 020697F4 */ _t346 = cpu->r[1] + 0x00000014u;
|
|
/* 020697F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t346);
|
|
/* 020697F8 */ _t347 = cpu->r[12] + 0x00000014u;
|
|
/* 020697F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t347);
|
|
/* 020697FC */ cpu->ctr = cpu->r[4];
|
|
/* 02069800 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02069804 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069808 */ _t348 = cpu->r[1] + 0x00000010u;
|
|
/* 02069808 */ cpu->r[4] = rbrew_read32(cpu->mem, _t348);
|
|
/* 0206980C */ cpu->r[3] = 0x00000000u;
|
|
/* 02069810 */ cpu->r[5] = cpu->r[26];
|
|
/* 02069814 */ Gambit_fn_020D75F8(cpu);
|
|
/* 02069818 */ _t349 = cpu->r[3] + 0x00000000u;
|
|
/* 02069818 */ cpu->r[5] = rbrew_read32(cpu->mem, _t349);
|
|
/* 0206981C */ _t350 = cpu->r[5] + 0x00000034u;
|
|
/* 0206981C */ cpu->r[6] = rbrew_read32(cpu->mem, _t350);
|
|
/* 02069820 */ cpu->ctr = cpu->r[6];
|
|
/* 02069824 */ cpu->r[4] = cpu->r[30];
|
|
/* 02069828 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206982C */ _t351 = cpu->r[29] + 0x000001CCu;
|
|
/* 0206982C */ cpu->r[10] = rbrew_read32(cpu->mem, _t351);
|
|
/* 02069830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02069834 */ _t352 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069834 */ _t353 = _t352 & 0x00000001u;
|
|
/* 02069834 */ if (_t353) goto L_0206A038; else goto L_02069838;
|
|
L_02069838: ; // 0x2069838
|
|
/* 02069838 */ goto L_02069CA0;
|
|
L_0206983C: ; // 0x206983c
|
|
/* 0206983C */ cpu->r[7] = 0x10000000u;
|
|
/* 02069840 */ _t354 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02069840 */ rbrew_write32(cpu->mem, _t354, cpu->r[28]);
|
|
/* 02069844 */ cpu->r[7] = cpu->r[7] + 0x000075ECu;
|
|
/* 02069848 */ _t355 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069848 */ cpu->r[8] = rbrew_read32(cpu->mem, _t355);
|
|
/* 0206984C */ _t356 = cpu->r[1] + 0x00000068u;
|
|
/* 0206984C */ rbrew_write32(cpu->mem, _t356, cpu->r[7]);
|
|
/* 02069850 */ _t357 = cpu->r[8] + 0x00000014u;
|
|
/* 02069850 */ cpu->r[0] = rbrew_read32(cpu->mem, _t357);
|
|
/* 02069854 */ cpu->ctr = cpu->r[0];
|
|
/* 02069858 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206985C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069860 */ _t358 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069860 */ cpu->r[10] = rbrew_read32(cpu->mem, _t358);
|
|
/* 02069864 */ _t359 = cpu->r[10] + 0x00000014u;
|
|
/* 02069864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t359);
|
|
/* 02069868 */ cpu->ctr = cpu->r[0];
|
|
/* 0206986C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069870 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069874 */ _t360 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02069874 */ cpu->r[12] = rbrew_read32(cpu->mem, _t360);
|
|
/* 02069878 */ _t361 = cpu->r[12] + 0x00000014u;
|
|
/* 02069878 */ cpu->r[4] = rbrew_read32(cpu->mem, _t361);
|
|
/* 0206987C */ cpu->ctr = cpu->r[4];
|
|
/* 02069880 */ _t362 = cpu->r[1] + 0x00000008u;
|
|
/* 02069880 */ cpu->r[24] = rbrew_read32(cpu->mem, _t362);
|
|
/* 02069884 */ cpu->r[3] = cpu->r[1] + 0x00000068u;
|
|
/* 02069888 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206988C */ _t363 = cpu->r[1] + 0x00000068u;
|
|
/* 0206988C */ cpu->r[5] = rbrew_read32(cpu->mem, _t363);
|
|
/* 02069890 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[5]);
|
|
/* 02069894 */ _t364 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069894 */ _t365 = _t364 & 0x00000001u;
|
|
/* 02069894 */ if (_t365) goto L_020698CC; else goto L_02069898;
|
|
L_02069898: ; // 0x2069898
|
|
/* 02069898 */ _t366 = cpu->r[1] + 0x00000068u;
|
|
/* 02069898 */ cpu->r[9] = rbrew_read32(cpu->mem, _t366);
|
|
/* 0206989C */ cpu->ctr = cpu->r[27];
|
|
/* 020698A0 */ _t367 = cpu->r[1] + 0x00000008u;
|
|
/* 020698A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t367);
|
|
/* 020698A4 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_020698A8: ; // 0x20698a8
|
|
/* 020698A8 */ _t368 = cpu->r[8] + 0x00000000u;
|
|
/* 020698A8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t368);
|
|
/* 020698AC */ _t369 = cpu->r[9] + 0x00000001u;
|
|
/* 020698AC */ cpu->r[6] = rbrew_read8(cpu->mem, _t369);
|
|
/* 020698AC */ cpu->r[9] = _t369;
|
|
/* 020698B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[6]);
|
|
/* 020698B4 */ _t370 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020698B4 */ _t371 = _t370 & 0x00000001u;
|
|
/* 020698B4 */ if (_t371) goto L_020698B8; else goto L_02069914;
|
|
L_020698B8: ; // 0x20698b8
|
|
/* 020698B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 020698BC */ _t372 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020698BC */ _t373 = _t372 & 0x00000001u;
|
|
/* 020698BC */ if (_t373) goto L_020698CC; else goto L_020698C0;
|
|
L_020698C0: ; // 0x20698c0
|
|
/* 020698C0 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 020698C4 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020698C4 */ _t374 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020698C4 */ _t375 = _t374 >> (0x00000002u & 31u);
|
|
/* 020698C4 */ _t376 = _t375 & 0x00000001u;
|
|
/* 020698C4 */ if (_t376) goto L_020698A8; else goto L_020698C8;
|
|
L_020698C8: ; // 0x20698c8
|
|
/* 020698C8 */ goto L_02069914;
|
|
L_020698CC: ; // 0x20698cc
|
|
/* 020698CC */ _t377 = cpu->r[1] + 0x00000014u;
|
|
/* 020698CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t377);
|
|
/* 020698D0 */ _t378 = cpu->r[9] + 0x00000014u;
|
|
/* 020698D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t378);
|
|
/* 020698D4 */ cpu->ctr = cpu->r[10];
|
|
/* 020698D8 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 020698DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020698E0 */ _t379 = cpu->r[1] + 0x00000010u;
|
|
/* 020698E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t379);
|
|
/* 020698E4 */ cpu->r[3] = 0x00000000u;
|
|
/* 020698E8 */ cpu->r[5] = cpu->r[26];
|
|
/* 020698EC */ Gambit_fn_020D5C94(cpu);
|
|
/* 020698F0 */ _t380 = cpu->r[3] + 0x00000000u;
|
|
/* 020698F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t380);
|
|
/* 020698F4 */ _t381 = cpu->r[11] + 0x00000034u;
|
|
/* 020698F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t381);
|
|
/* 020698F8 */ cpu->ctr = cpu->r[12];
|
|
/* 020698FC */ cpu->r[4] = cpu->r[30];
|
|
/* 02069900 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069904 */ _t382 = cpu->r[29] + 0x000001CCu;
|
|
/* 02069904 */ cpu->r[10] = rbrew_read32(cpu->mem, _t382);
|
|
/* 02069908 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206990C */ _t383 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206990C */ _t384 = _t383 & 0x00000001u;
|
|
/* 0206990C */ if (_t384) goto L_0206A038; else goto L_02069910;
|
|
L_02069910: ; // 0x2069910
|
|
/* 02069910 */ goto L_02069CA0;
|
|
L_02069914: ; // 0x2069914
|
|
/* 02069914 */ cpu->r[0] = 0x10000000u;
|
|
/* 02069918 */ _t385 = cpu->r[1] + 0x00000074u;
|
|
/* 02069918 */ rbrew_write32(cpu->mem, _t385, cpu->r[28]);
|
|
/* 0206991C */ cpu->r[0] = cpu->r[0] + 0x00007654u;
|
|
/* 02069920 */ _t386 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069920 */ cpu->r[4] = rbrew_read32(cpu->mem, _t386);
|
|
/* 02069924 */ _t387 = cpu->r[1] + 0x00000070u;
|
|
/* 02069924 */ rbrew_write32(cpu->mem, _t387, cpu->r[0]);
|
|
/* 02069928 */ _t388 = cpu->r[4] + 0x00000014u;
|
|
/* 02069928 */ cpu->r[5] = rbrew_read32(cpu->mem, _t388);
|
|
/* 0206992C */ cpu->ctr = cpu->r[5];
|
|
/* 02069930 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069934 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069938 */ _t389 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069938 */ cpu->r[6] = rbrew_read32(cpu->mem, _t389);
|
|
/* 0206993C */ _t390 = cpu->r[6] + 0x00000014u;
|
|
/* 0206993C */ cpu->r[0] = rbrew_read32(cpu->mem, _t390);
|
|
/* 02069940 */ cpu->ctr = cpu->r[0];
|
|
/* 02069944 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069948 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206994C */ _t391 = cpu->r[1] + 0x00000074u;
|
|
/* 0206994C */ cpu->r[8] = rbrew_read32(cpu->mem, _t391);
|
|
/* 02069950 */ _t392 = cpu->r[8] + 0x00000014u;
|
|
/* 02069950 */ cpu->r[9] = rbrew_read32(cpu->mem, _t392);
|
|
/* 02069954 */ cpu->ctr = cpu->r[9];
|
|
/* 02069958 */ _t393 = cpu->r[1] + 0x00000008u;
|
|
/* 02069958 */ cpu->r[24] = rbrew_read32(cpu->mem, _t393);
|
|
/* 0206995C */ cpu->r[3] = cpu->r[1] + 0x00000070u;
|
|
/* 02069960 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069964 */ _t394 = cpu->r[1] + 0x00000070u;
|
|
/* 02069964 */ cpu->r[10] = rbrew_read32(cpu->mem, _t394);
|
|
/* 02069968 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[10]);
|
|
/* 0206996C */ _t395 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206996C */ _t396 = _t395 & 0x00000001u;
|
|
/* 0206996C */ if (_t396) goto L_020699A4; else goto L_02069970;
|
|
L_02069970: ; // 0x2069970
|
|
/* 02069970 */ _t397 = cpu->r[1] + 0x00000070u;
|
|
/* 02069970 */ cpu->r[7] = rbrew_read32(cpu->mem, _t397);
|
|
/* 02069974 */ cpu->ctr = cpu->r[27];
|
|
/* 02069978 */ _t398 = cpu->r[1] + 0x00000008u;
|
|
/* 02069978 */ cpu->r[6] = rbrew_read32(cpu->mem, _t398);
|
|
/* 0206997C */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_02069980: ; // 0x2069980
|
|
/* 02069980 */ _t399 = cpu->r[6] + 0x00000000u;
|
|
/* 02069980 */ cpu->r[8] = rbrew_read8(cpu->mem, _t399);
|
|
/* 02069984 */ _t400 = cpu->r[7] + 0x00000001u;
|
|
/* 02069984 */ cpu->r[0] = rbrew_read8(cpu->mem, _t400);
|
|
/* 02069984 */ cpu->r[7] = _t400;
|
|
/* 02069988 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]);
|
|
/* 0206998C */ _t401 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206998C */ _t402 = _t401 & 0x00000001u;
|
|
/* 0206998C */ if (_t402) goto L_02069990; else goto L_020699EC;
|
|
L_02069990: ; // 0x2069990
|
|
/* 02069990 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02069994 */ _t403 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069994 */ _t404 = _t403 & 0x00000001u;
|
|
/* 02069994 */ if (_t404) goto L_020699A4; else goto L_02069998;
|
|
L_02069998: ; // 0x2069998
|
|
/* 02069998 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0206999C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0206999C */ _t405 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0206999C */ _t406 = _t405 >> (0x00000002u & 31u);
|
|
/* 0206999C */ _t407 = _t406 & 0x00000001u;
|
|
/* 0206999C */ if (_t407) goto L_02069980; else goto L_020699A0;
|
|
L_020699A0: ; // 0x20699a0
|
|
/* 020699A0 */ goto L_020699EC;
|
|
L_020699A4: ; // 0x20699a4
|
|
/* 020699A4 */ _t408 = cpu->r[1] + 0x00000014u;
|
|
/* 020699A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t408);
|
|
/* 020699A8 */ _t409 = cpu->r[12] + 0x00000014u;
|
|
/* 020699A8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t409);
|
|
/* 020699AC */ cpu->ctr = cpu->r[4];
|
|
/* 020699B0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 020699B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020699B8 */ _t410 = cpu->r[1] + 0x00000010u;
|
|
/* 020699B8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t410);
|
|
/* 020699BC */ cpu->r[3] = 0x00000000u;
|
|
/* 020699C0 */ cpu->r[5] = 0x00000020u;
|
|
/* 020699C4 */ Gambit_fn_020CAC90(cpu);
|
|
/* 020699C8 */ _t411 = cpu->r[3] + 0x00000000u;
|
|
/* 020699C8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t411);
|
|
/* 020699CC */ _t412 = cpu->r[5] + 0x00000034u;
|
|
/* 020699CC */ cpu->r[6] = rbrew_read32(cpu->mem, _t412);
|
|
/* 020699D0 */ cpu->ctr = cpu->r[6];
|
|
/* 020699D4 */ cpu->r[4] = cpu->r[30];
|
|
/* 020699D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020699DC */ _t413 = cpu->r[29] + 0x000001CCu;
|
|
/* 020699DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t413);
|
|
/* 020699E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 020699E4 */ _t414 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020699E4 */ _t415 = _t414 & 0x00000001u;
|
|
/* 020699E4 */ if (_t415) goto L_0206A038; else goto L_020699E8;
|
|
L_020699E8: ; // 0x20699e8
|
|
/* 020699E8 */ goto L_02069CA0;
|
|
L_020699EC: ; // 0x20699ec
|
|
/* 020699EC */ cpu->r[7] = 0x10000000u;
|
|
/* 020699F0 */ _t416 = cpu->r[1] + 0x0000007Cu;
|
|
/* 020699F0 */ rbrew_write32(cpu->mem, _t416, cpu->r[28]);
|
|
/* 020699F4 */ cpu->r[7] = cpu->r[7] + 0x00007660u;
|
|
/* 020699F8 */ _t417 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020699F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t417);
|
|
/* 020699FC */ _t418 = cpu->r[1] + 0x00000078u;
|
|
/* 020699FC */ rbrew_write32(cpu->mem, _t418, cpu->r[7]);
|
|
/* 02069A00 */ _t419 = cpu->r[8] + 0x00000014u;
|
|
/* 02069A00 */ cpu->r[9] = rbrew_read32(cpu->mem, _t419);
|
|
/* 02069A04 */ cpu->ctr = cpu->r[9];
|
|
/* 02069A08 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069A0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069A10 */ _t420 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069A10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t420);
|
|
/* 02069A14 */ _t421 = cpu->r[10] + 0x00000014u;
|
|
/* 02069A14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t421);
|
|
/* 02069A18 */ cpu->ctr = cpu->r[0];
|
|
/* 02069A1C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069A20 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069A24 */ _t422 = cpu->r[1] + 0x0000007Cu;
|
|
/* 02069A24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t422);
|
|
/* 02069A28 */ _t423 = cpu->r[12] + 0x00000014u;
|
|
/* 02069A28 */ cpu->r[4] = rbrew_read32(cpu->mem, _t423);
|
|
/* 02069A2C */ cpu->ctr = cpu->r[4];
|
|
/* 02069A30 */ _t424 = cpu->r[1] + 0x00000008u;
|
|
/* 02069A30 */ cpu->r[24] = rbrew_read32(cpu->mem, _t424);
|
|
/* 02069A34 */ cpu->r[3] = cpu->r[1] + 0x00000078u;
|
|
/* 02069A38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069A3C */ _t425 = cpu->r[1] + 0x00000078u;
|
|
/* 02069A3C */ cpu->r[5] = rbrew_read32(cpu->mem, _t425);
|
|
/* 02069A40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[5]);
|
|
/* 02069A44 */ _t426 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069A44 */ _t427 = _t426 & 0x00000001u;
|
|
/* 02069A44 */ if (_t427) goto L_02069A7C; else goto L_02069A48;
|
|
L_02069A48: ; // 0x2069a48
|
|
/* 02069A48 */ _t428 = cpu->r[1] + 0x00000078u;
|
|
/* 02069A48 */ cpu->r[5] = rbrew_read32(cpu->mem, _t428);
|
|
/* 02069A4C */ cpu->ctr = cpu->r[27];
|
|
/* 02069A50 */ _t429 = cpu->r[1] + 0x00000008u;
|
|
/* 02069A50 */ cpu->r[4] = rbrew_read32(cpu->mem, _t429);
|
|
/* 02069A54 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02069A58: ; // 0x2069a58
|
|
/* 02069A58 */ _t430 = cpu->r[4] + 0x00000000u;
|
|
/* 02069A58 */ cpu->r[9] = rbrew_read8(cpu->mem, _t430);
|
|
/* 02069A5C */ _t431 = cpu->r[5] + 0x00000001u;
|
|
/* 02069A5C */ cpu->r[6] = rbrew_read8(cpu->mem, _t431);
|
|
/* 02069A5C */ cpu->r[5] = _t431;
|
|
/* 02069A60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[6]);
|
|
/* 02069A64 */ _t432 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069A64 */ _t433 = _t432 & 0x00000001u;
|
|
/* 02069A64 */ if (_t433) goto L_02069A68; else goto L_02069AC0;
|
|
L_02069A68: ; // 0x2069a68
|
|
/* 02069A68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02069A6C */ _t434 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069A6C */ _t435 = _t434 & 0x00000001u;
|
|
/* 02069A6C */ if (_t435) goto L_02069A7C; else goto L_02069A70;
|
|
L_02069A70: ; // 0x2069a70
|
|
/* 02069A70 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 02069A74 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02069A74 */ _t436 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02069A74 */ _t437 = _t436 >> (0x00000002u & 31u);
|
|
/* 02069A74 */ _t438 = _t437 & 0x00000001u;
|
|
/* 02069A74 */ if (_t438) goto L_02069A58; else goto L_02069A78;
|
|
L_02069A78: ; // 0x2069a78
|
|
/* 02069A78 */ goto L_02069AC0;
|
|
L_02069A7C: ; // 0x2069a7c
|
|
/* 02069A7C */ _t439 = cpu->r[1] + 0x00000014u;
|
|
/* 02069A7C */ cpu->r[7] = rbrew_read32(cpu->mem, _t439);
|
|
/* 02069A80 */ _t440 = cpu->r[7] + 0x00000014u;
|
|
/* 02069A80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t440);
|
|
/* 02069A84 */ cpu->ctr = cpu->r[8];
|
|
/* 02069A88 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02069A8C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069A90 */ _t441 = cpu->r[1] + 0x00000010u;
|
|
/* 02069A90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t441);
|
|
/* 02069A94 */ cpu->r[3] = 0x00000000u;
|
|
/* 02069A98 */ Gambit_fn_020D7C6C(cpu);
|
|
/* 02069A9C */ _t442 = cpu->r[3] + 0x00000000u;
|
|
/* 02069A9C */ cpu->r[9] = rbrew_read32(cpu->mem, _t442);
|
|
/* 02069AA0 */ _t443 = cpu->r[9] + 0x00000034u;
|
|
/* 02069AA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t443);
|
|
/* 02069AA4 */ cpu->ctr = cpu->r[10];
|
|
/* 02069AA8 */ cpu->r[4] = cpu->r[30];
|
|
/* 02069AAC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069AB0 */ _t444 = cpu->r[29] + 0x000001CCu;
|
|
/* 02069AB0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t444);
|
|
/* 02069AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02069AB8 */ _t445 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069AB8 */ _t446 = _t445 & 0x00000001u;
|
|
/* 02069AB8 */ if (_t446) goto L_0206A038; else goto L_02069ABC;
|
|
L_02069ABC: ; // 0x2069abc
|
|
/* 02069ABC */ goto L_02069CA0;
|
|
L_02069AC0: ; // 0x2069ac0
|
|
/* 02069AC0 */ cpu->r[11] = 0x10000000u;
|
|
/* 02069AC4 */ _t447 = cpu->r[1] + 0x00000084u;
|
|
/* 02069AC4 */ rbrew_write32(cpu->mem, _t447, cpu->r[28]);
|
|
/* 02069AC8 */ cpu->r[11] = cpu->r[11] + 0x00007620u;
|
|
/* 02069ACC */ _t448 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069ACC */ cpu->r[12] = rbrew_read32(cpu->mem, _t448);
|
|
/* 02069AD0 */ _t449 = cpu->r[1] + 0x00000080u;
|
|
/* 02069AD0 */ rbrew_write32(cpu->mem, _t449, cpu->r[11]);
|
|
/* 02069AD4 */ _t450 = cpu->r[12] + 0x00000014u;
|
|
/* 02069AD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t450);
|
|
/* 02069AD8 */ cpu->ctr = cpu->r[0];
|
|
/* 02069ADC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069AE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069AE4 */ _t451 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069AE4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t451);
|
|
/* 02069AE8 */ _t452 = cpu->r[4] + 0x00000014u;
|
|
/* 02069AE8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t452);
|
|
/* 02069AEC */ cpu->ctr = cpu->r[5];
|
|
/* 02069AF0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069AF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069AF8 */ _t453 = cpu->r[1] + 0x00000084u;
|
|
/* 02069AF8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t453);
|
|
/* 02069AFC */ _t454 = cpu->r[6] + 0x00000014u;
|
|
/* 02069AFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t454);
|
|
/* 02069B00 */ cpu->ctr = cpu->r[0];
|
|
/* 02069B04 */ _t455 = cpu->r[1] + 0x00000008u;
|
|
/* 02069B04 */ cpu->r[24] = rbrew_read32(cpu->mem, _t455);
|
|
/* 02069B08 */ cpu->r[3] = cpu->r[1] + 0x00000080u;
|
|
/* 02069B0C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069B10 */ _t456 = cpu->r[1] + 0x00000080u;
|
|
/* 02069B10 */ cpu->r[8] = rbrew_read32(cpu->mem, _t456);
|
|
/* 02069B14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[8]);
|
|
/* 02069B18 */ _t457 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069B18 */ _t458 = _t457 & 0x00000001u;
|
|
/* 02069B18 */ if (_t458) goto L_02069B50; else goto L_02069B1C;
|
|
L_02069B1C: ; // 0x2069b1c
|
|
/* 02069B1C */ _t459 = cpu->r[1] + 0x00000080u;
|
|
/* 02069B1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t459);
|
|
/* 02069B20 */ cpu->ctr = cpu->r[27];
|
|
/* 02069B24 */ _t460 = cpu->r[1] + 0x00000008u;
|
|
/* 02069B24 */ cpu->r[11] = rbrew_read32(cpu->mem, _t460);
|
|
/* 02069B28 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02069B2C: ; // 0x2069b2c
|
|
/* 02069B2C */ _t461 = cpu->r[11] + 0x00000000u;
|
|
/* 02069B2C */ cpu->r[10] = rbrew_read8(cpu->mem, _t461);
|
|
/* 02069B30 */ _t462 = cpu->r[12] + 0x00000001u;
|
|
/* 02069B30 */ cpu->r[9] = rbrew_read8(cpu->mem, _t462);
|
|
/* 02069B30 */ cpu->r[12] = _t462;
|
|
/* 02069B34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[9]);
|
|
/* 02069B38 */ _t463 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069B38 */ _t464 = _t463 & 0x00000001u;
|
|
/* 02069B38 */ if (_t464) goto L_02069B3C; else goto L_02069B9C;
|
|
L_02069B3C: ; // 0x2069b3c
|
|
/* 02069B3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02069B40 */ _t465 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069B40 */ _t466 = _t465 & 0x00000001u;
|
|
/* 02069B40 */ if (_t466) goto L_02069B50; else goto L_02069B44;
|
|
L_02069B44: ; // 0x2069b44
|
|
/* 02069B44 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02069B48 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02069B48 */ _t467 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02069B48 */ _t468 = _t467 >> (0x00000002u & 31u);
|
|
/* 02069B48 */ _t469 = _t468 & 0x00000001u;
|
|
/* 02069B48 */ if (_t469) goto L_02069B2C; else goto L_02069B4C;
|
|
L_02069B4C: ; // 0x2069b4c
|
|
/* 02069B4C */ goto L_02069B9C;
|
|
L_02069B50: ; // 0x2069b50
|
|
/* 02069B50 */ _t470 = cpu->r[1] + 0x00000014u;
|
|
/* 02069B50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t470);
|
|
/* 02069B54 */ _t471 = cpu->r[12] + 0x00000014u;
|
|
/* 02069B54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t471);
|
|
/* 02069B58 */ cpu->ctr = cpu->r[0];
|
|
/* 02069B5C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02069B60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069B64 */ _t472 = cpu->r[1] + 0x00000010u;
|
|
/* 02069B64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t472);
|
|
/* 02069B68 */ cpu->r[5] = cpu->r[26];
|
|
/* 02069B6C */ cpu->r[3] = 0x00000000u;
|
|
/* 02069B70 */ cpu->r[6] = 0x00000010u;
|
|
/* 02069B74 */ Gambit_fn_020CE144(cpu);
|
|
/* 02069B78 */ _t473 = cpu->r[3] + 0x00000000u;
|
|
/* 02069B78 */ cpu->r[4] = rbrew_read32(cpu->mem, _t473);
|
|
/* 02069B7C */ _t474 = cpu->r[4] + 0x00000034u;
|
|
/* 02069B7C */ cpu->r[5] = rbrew_read32(cpu->mem, _t474);
|
|
/* 02069B80 */ cpu->ctr = cpu->r[5];
|
|
/* 02069B84 */ cpu->r[4] = cpu->r[30];
|
|
/* 02069B88 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069B8C */ _t475 = cpu->r[29] + 0x000001CCu;
|
|
/* 02069B8C */ cpu->r[10] = rbrew_read32(cpu->mem, _t475);
|
|
/* 02069B90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02069B94 */ _t476 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069B94 */ _t477 = _t476 & 0x00000001u;
|
|
/* 02069B94 */ if (_t477) goto L_0206A038; else goto L_02069B98;
|
|
L_02069B98: ; // 0x2069b98
|
|
/* 02069B98 */ goto L_02069CA0;
|
|
L_02069B9C: ; // 0x2069b9c
|
|
/* 02069B9C */ _t478 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069B9C */ cpu->r[6] = rbrew_read32(cpu->mem, _t478);
|
|
/* 02069BA0 */ _t479 = cpu->r[1] + 0x00000088u;
|
|
/* 02069BA0 */ rbrew_write32(cpu->mem, _t479, cpu->r[25]);
|
|
/* 02069BA4 */ _t480 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02069BA4 */ rbrew_write32(cpu->mem, _t480, cpu->r[28]);
|
|
/* 02069BA8 */ _t481 = cpu->r[6] + 0x00000014u;
|
|
/* 02069BA8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t481);
|
|
/* 02069BAC */ cpu->ctr = cpu->r[7];
|
|
/* 02069BB0 */ cpu->r[23] = 0x00000000u;
|
|
/* 02069BB4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069BB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069BBC */ _t482 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069BBC */ cpu->r[8] = rbrew_read32(cpu->mem, _t482);
|
|
/* 02069BC0 */ _t483 = cpu->r[8] + 0x00000014u;
|
|
/* 02069BC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t483);
|
|
/* 02069BC4 */ cpu->ctr = cpu->r[9];
|
|
/* 02069BC8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069BCC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069BD0 */ _t484 = cpu->r[1] + 0x0000008Cu;
|
|
/* 02069BD0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t484);
|
|
/* 02069BD4 */ _t485 = cpu->r[10] + 0x00000014u;
|
|
/* 02069BD4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t485);
|
|
/* 02069BD8 */ cpu->ctr = cpu->r[11];
|
|
/* 02069BDC */ _t486 = cpu->r[1] + 0x00000008u;
|
|
/* 02069BDC */ cpu->r[24] = rbrew_read32(cpu->mem, _t486);
|
|
/* 02069BE0 */ cpu->r[3] = cpu->r[1] + 0x00000088u;
|
|
/* 02069BE4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069BE8 */ _t487 = cpu->r[1] + 0x00000088u;
|
|
/* 02069BE8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t487);
|
|
/* 02069BEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[12]);
|
|
/* 02069BF0 */ _t488 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069BF0 */ _t489 = _t488 & 0x00000001u;
|
|
/* 02069BF0 */ if (_t489) goto L_02069C30; else goto L_02069BF4;
|
|
L_02069BF4: ; // 0x2069bf4
|
|
/* 02069BF4 */ _t490 = cpu->r[1] + 0x00000088u;
|
|
/* 02069BF4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t490);
|
|
/* 02069BF8 */ cpu->ctr = cpu->r[27];
|
|
/* 02069BFC */ _t491 = cpu->r[1] + 0x00000008u;
|
|
/* 02069BFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t491);
|
|
/* 02069C00 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02069C04: ; // 0x2069c04
|
|
/* 02069C04 */ _t492 = cpu->r[9] + 0x00000000u;
|
|
/* 02069C04 */ cpu->r[11] = rbrew_read8(cpu->mem, _t492);
|
|
/* 02069C08 */ _t493 = cpu->r[10] + 0x00000001u;
|
|
/* 02069C08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t493);
|
|
/* 02069C08 */ cpu->r[10] = _t493;
|
|
/* 02069C0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]);
|
|
/* 02069C10 */ _t494 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069C10 */ _t495 = _t494 & 0x00000001u;
|
|
/* 02069C10 */ if (_t495) goto L_02069C14; else goto L_02069C54;
|
|
L_02069C14: ; // 0x2069c14
|
|
/* 02069C14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 02069C18 */ _t496 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069C18 */ _t497 = _t496 & 0x00000001u;
|
|
/* 02069C18 */ if (_t497) goto L_02069C30; else goto L_02069C1C;
|
|
L_02069C1C: ; // 0x2069c1c
|
|
/* 02069C1C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02069C20 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02069C20 */ _t498 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02069C20 */ _t499 = _t498 >> (0x00000002u & 31u);
|
|
/* 02069C20 */ _t500 = _t499 & 0x00000001u;
|
|
/* 02069C20 */ if (_t500) goto L_02069C04; else goto L_02069C24;
|
|
L_02069C24: ; // 0x2069c24
|
|
/* 02069C24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02069C28 */ _t501 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069C28 */ _t502 = _t501 & 0x00000001u;
|
|
/* 02069C28 */ if (_t502) goto L_02069C94; else goto L_02069C2C;
|
|
L_02069C2C: ; // 0x2069c2c
|
|
/* 02069C2C */ goto L_02069C5C;
|
|
L_02069C30: ; // 0x2069c30
|
|
/* 02069C30 */ _t503 = cpu->r[29] + 0x00000000u;
|
|
/* 02069C30 */ cpu->r[4] = rbrew_read32(cpu->mem, _t503);
|
|
/* 02069C34 */ _t504 = cpu->r[4] + 0x0000010Cu;
|
|
/* 02069C34 */ cpu->r[5] = rbrew_read32(cpu->mem, _t504);
|
|
/* 02069C38 */ cpu->ctr = cpu->r[5];
|
|
/* 02069C3C */ cpu->r[4] = cpu->r[30];
|
|
/* 02069C40 */ cpu->r[3] = cpu->r[29];
|
|
/* 02069C44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02069C4C */ _t505 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069C4C */ _t506 = _t505 & 0x00000001u;
|
|
/* 02069C4C */ if (_t506) goto L_02069C54; else goto L_02069C50;
|
|
L_02069C50: ; // 0x2069c50
|
|
/* 02069C50 */ cpu->r[23] = 0x00000001u;
|
|
L_02069C54: ; // 0x2069c54
|
|
/* 02069C54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02069C58 */ _t507 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069C58 */ _t508 = _t507 & 0x00000001u;
|
|
/* 02069C58 */ if (_t508) goto L_02069C94; else goto L_02069C5C;
|
|
L_02069C5C: ; // 0x2069c5c
|
|
/* 02069C5C */ _t509 = cpu->r[1] + 0x00000014u;
|
|
/* 02069C5C */ cpu->r[6] = rbrew_read32(cpu->mem, _t509);
|
|
/* 02069C60 */ _t510 = cpu->r[6] + 0x00000014u;
|
|
/* 02069C60 */ cpu->r[7] = rbrew_read32(cpu->mem, _t510);
|
|
/* 02069C64 */ cpu->ctr = cpu->r[7];
|
|
/* 02069C68 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02069C6C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069C70 */ _t511 = cpu->r[1] + 0x00000010u;
|
|
/* 02069C70 */ cpu->r[4] = rbrew_read32(cpu->mem, _t511);
|
|
/* 02069C74 */ cpu->r[3] = 0x00000000u;
|
|
/* 02069C78 */ cpu->r[5] = cpu->r[26];
|
|
/* 02069C7C */ Gambit_fn_020C064C(cpu);
|
|
/* 02069C80 */ _t512 = cpu->r[3] + 0x00000000u;
|
|
/* 02069C80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t512);
|
|
/* 02069C84 */ _t513 = cpu->r[8] + 0x00000034u;
|
|
/* 02069C84 */ cpu->r[9] = rbrew_read32(cpu->mem, _t513);
|
|
/* 02069C88 */ cpu->ctr = cpu->r[9];
|
|
/* 02069C8C */ cpu->r[4] = cpu->r[30];
|
|
/* 02069C90 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02069C94: ; // 0x2069c94
|
|
/* 02069C94 */ _t514 = cpu->r[29] + 0x000001CCu;
|
|
/* 02069C94 */ cpu->r[10] = rbrew_read32(cpu->mem, _t514);
|
|
/* 02069C98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02069C9C */ _t515 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069C9C */ _t516 = _t515 & 0x00000001u;
|
|
/* 02069C9C */ if (_t516) goto L_0206A038; else goto L_02069CA0;
|
|
L_02069CA0: ; // 0x2069ca0
|
|
/* 02069CA0 */ _t517 = cpu->r[29] + 0x00000000u;
|
|
/* 02069CA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t517);
|
|
/* 02069CA4 */ _t518 = cpu->r[11] + 0x00000114u;
|
|
/* 02069CA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t518);
|
|
/* 02069CA8 */ cpu->ctr = cpu->r[12];
|
|
/* 02069CAC */ cpu->r[3] = cpu->r[29];
|
|
/* 02069CB0 */ cpu->r[4] = cpu->r[30];
|
|
/* 02069CB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069CB8 */ cpu->r[0] = 0x10000000u;
|
|
/* 02069CBC */ _t519 = cpu->r[1] + 0x00000094u;
|
|
/* 02069CBC */ rbrew_write32(cpu->mem, _t519, cpu->r[28]);
|
|
/* 02069CC0 */ cpu->r[0] = cpu->r[0] + 0x000075B4u;
|
|
/* 02069CC4 */ _t520 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069CC4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t520);
|
|
/* 02069CC8 */ _t521 = cpu->r[1] + 0x00000090u;
|
|
/* 02069CC8 */ rbrew_write32(cpu->mem, _t521, cpu->r[0]);
|
|
/* 02069CCC */ _t522 = cpu->r[4] + 0x00000014u;
|
|
/* 02069CCC */ cpu->r[5] = rbrew_read32(cpu->mem, _t522);
|
|
/* 02069CD0 */ cpu->r[24] = cpu->r[3];
|
|
/* 02069CD4 */ cpu->ctr = cpu->r[5];
|
|
/* 02069CD8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069CDC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069CE0 */ _t523 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069CE0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t523);
|
|
/* 02069CE4 */ _t524 = cpu->r[6] + 0x00000014u;
|
|
/* 02069CE4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t524);
|
|
/* 02069CE8 */ cpu->ctr = cpu->r[7];
|
|
/* 02069CEC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069CF0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069CF4 */ _t525 = cpu->r[1] + 0x00000094u;
|
|
/* 02069CF4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t525);
|
|
/* 02069CF8 */ _t526 = cpu->r[8] + 0x00000014u;
|
|
/* 02069CF8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t526);
|
|
/* 02069CFC */ cpu->ctr = cpu->r[9];
|
|
/* 02069D00 */ _t527 = cpu->r[1] + 0x00000008u;
|
|
/* 02069D00 */ cpu->r[23] = rbrew_read32(cpu->mem, _t527);
|
|
/* 02069D04 */ cpu->r[3] = cpu->r[1] + 0x00000090u;
|
|
/* 02069D08 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069D0C */ _t528 = cpu->r[1] + 0x00000090u;
|
|
/* 02069D0C */ cpu->r[10] = rbrew_read32(cpu->mem, _t528);
|
|
/* 02069D10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[10]);
|
|
/* 02069D14 */ _t529 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069D14 */ _t530 = _t529 & 0x00000001u;
|
|
/* 02069D14 */ if (_t530) goto L_02069D4C; else goto L_02069D18;
|
|
L_02069D18: ; // 0x2069d18
|
|
/* 02069D18 */ _t531 = cpu->r[1] + 0x00000090u;
|
|
/* 02069D18 */ cpu->r[8] = rbrew_read32(cpu->mem, _t531);
|
|
/* 02069D1C */ cpu->ctr = cpu->r[27];
|
|
/* 02069D20 */ _t532 = cpu->r[1] + 0x00000008u;
|
|
/* 02069D20 */ cpu->r[7] = rbrew_read32(cpu->mem, _t532);
|
|
/* 02069D24 */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_02069D28: ; // 0x2069d28
|
|
/* 02069D28 */ _t533 = cpu->r[7] + 0x00000000u;
|
|
/* 02069D28 */ cpu->r[12] = rbrew_read8(cpu->mem, _t533);
|
|
/* 02069D2C */ _t534 = cpu->r[8] + 0x00000001u;
|
|
/* 02069D2C */ cpu->r[11] = rbrew_read8(cpu->mem, _t534);
|
|
/* 02069D2C */ cpu->r[8] = _t534;
|
|
/* 02069D30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[11]);
|
|
/* 02069D34 */ _t535 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069D34 */ _t536 = _t535 & 0x00000001u;
|
|
/* 02069D34 */ if (_t536) goto L_02069D38; else goto L_02069D90;
|
|
L_02069D38: ; // 0x2069d38
|
|
/* 02069D38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 02069D3C */ _t537 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069D3C */ _t538 = _t537 & 0x00000001u;
|
|
/* 02069D3C */ if (_t538) goto L_02069D4C; else goto L_02069D40;
|
|
L_02069D40: ; // 0x2069d40
|
|
/* 02069D40 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02069D44 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02069D44 */ _t539 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02069D44 */ _t540 = _t539 >> (0x00000002u & 31u);
|
|
/* 02069D44 */ _t541 = _t540 & 0x00000001u;
|
|
/* 02069D44 */ if (_t541) goto L_02069D28; else goto L_02069D48;
|
|
L_02069D48: ; // 0x2069d48
|
|
/* 02069D48 */ goto L_02069D90;
|
|
L_02069D4C: ; // 0x2069d4c
|
|
/* 02069D4C */ _t542 = cpu->r[1] + 0x00000014u;
|
|
/* 02069D4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t542);
|
|
/* 02069D50 */ _t543 = cpu->r[12] + 0x00000014u;
|
|
/* 02069D50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t543);
|
|
/* 02069D54 */ cpu->ctr = cpu->r[0];
|
|
/* 02069D58 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02069D5C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069D60 */ cpu->r[6] = 0x00000000u;
|
|
/* 02069D64 */ _t544 = cpu->r[1] + 0x00000010u;
|
|
/* 02069D64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t544);
|
|
/* 02069D68 */ cpu->r[3] = cpu->r[29] + 0x000001C8u;
|
|
/* 02069D6C */ cpu->r[7] = cpu->r[6];
|
|
/* 02069D70 */ cpu->r[5] = cpu->r[30];
|
|
/* 02069D74 */ cpu->r[8] = cpu->r[6];
|
|
/* 02069D78 */ Gambit_fn_0206A67C(cpu);
|
|
/* 02069D7C */ /* nop */
|
|
/* 02069D80 */ _t545 = cpu->r[1] + 0x000000DCu;
|
|
/* 02069D80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t545);
|
|
/* 02069D84 */ cpu->lr = cpu->r[0];
|
|
/* 02069D88 */ cpu->r[1] = cpu->r[1] + 0x000000D8u;
|
|
/* 02069D8C */ return;
|
|
L_02069D90: ; // 0x2069d90
|
|
/* 02069D90 */ _t546 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069D90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t546);
|
|
/* 02069D94 */ _t547 = cpu->r[1] + 0x00000098u;
|
|
/* 02069D94 */ rbrew_write32(cpu->mem, _t547, cpu->r[25]);
|
|
/* 02069D98 */ _t548 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02069D98 */ rbrew_write32(cpu->mem, _t548, cpu->r[28]);
|
|
/* 02069D9C */ _t549 = cpu->r[4] + 0x00000014u;
|
|
/* 02069D9C */ cpu->r[5] = rbrew_read32(cpu->mem, _t549);
|
|
/* 02069DA0 */ cpu->ctr = cpu->r[5];
|
|
/* 02069DA4 */ cpu->r[23] = 0x00000000u;
|
|
/* 02069DA8 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069DAC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069DB0 */ _t550 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069DB0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t550);
|
|
/* 02069DB4 */ _t551 = cpu->r[6] + 0x00000014u;
|
|
/* 02069DB4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t551);
|
|
/* 02069DB8 */ cpu->ctr = cpu->r[7];
|
|
/* 02069DBC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069DC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069DC4 */ _t552 = cpu->r[1] + 0x0000009Cu;
|
|
/* 02069DC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t552);
|
|
/* 02069DC8 */ _t553 = cpu->r[8] + 0x00000014u;
|
|
/* 02069DC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t553);
|
|
/* 02069DCC */ cpu->ctr = cpu->r[9];
|
|
/* 02069DD0 */ _t554 = cpu->r[1] + 0x00000008u;
|
|
/* 02069DD0 */ cpu->r[25] = rbrew_read32(cpu->mem, _t554);
|
|
/* 02069DD4 */ cpu->r[3] = cpu->r[1] + 0x00000098u;
|
|
/* 02069DD8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069DDC */ _t555 = cpu->r[1] + 0x00000098u;
|
|
/* 02069DDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t555);
|
|
/* 02069DE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[0]);
|
|
/* 02069DE4 */ _t556 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069DE4 */ _t557 = _t556 & 0x00000001u;
|
|
/* 02069DE4 */ if (_t557) goto L_02069E24; else goto L_02069DE8;
|
|
L_02069DE8: ; // 0x2069de8
|
|
/* 02069DE8 */ _t558 = cpu->r[1] + 0x00000098u;
|
|
/* 02069DE8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t558);
|
|
/* 02069DEC */ cpu->ctr = cpu->r[27];
|
|
/* 02069DF0 */ _t559 = cpu->r[1] + 0x00000008u;
|
|
/* 02069DF0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t559);
|
|
/* 02069DF4 */ cpu->r[6] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_02069DF8: ; // 0x2069df8
|
|
/* 02069DF8 */ _t560 = cpu->r[5] + 0x00000000u;
|
|
/* 02069DF8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t560);
|
|
/* 02069DFC */ _t561 = cpu->r[6] + 0x00000001u;
|
|
/* 02069DFC */ cpu->r[11] = rbrew_read8(cpu->mem, _t561);
|
|
/* 02069DFC */ cpu->r[6] = _t561;
|
|
/* 02069E00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]);
|
|
/* 02069E04 */ _t562 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069E04 */ _t563 = _t562 & 0x00000001u;
|
|
/* 02069E04 */ if (_t563) goto L_02069E08; else goto L_02069E48;
|
|
L_02069E08: ; // 0x2069e08
|
|
/* 02069E08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02069E0C */ _t564 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069E0C */ _t565 = _t564 & 0x00000001u;
|
|
/* 02069E0C */ if (_t565) goto L_02069E24; else goto L_02069E10;
|
|
L_02069E10: ; // 0x2069e10
|
|
/* 02069E10 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02069E14 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02069E14 */ _t566 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02069E14 */ _t567 = _t566 >> (0x00000002u & 31u);
|
|
/* 02069E14 */ _t568 = _t567 & 0x00000001u;
|
|
/* 02069E14 */ if (_t568) goto L_02069DF8; else goto L_02069E18;
|
|
L_02069E18: ; // 0x2069e18
|
|
/* 02069E18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02069E1C */ _t569 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069E1C */ _t570 = _t569 & 0x00000001u;
|
|
/* 02069E1C */ if (_t570) goto L_02069E94; else goto L_02069E20;
|
|
L_02069E20: ; // 0x2069e20
|
|
/* 02069E20 */ goto L_02069E50;
|
|
L_02069E24: ; // 0x2069e24
|
|
/* 02069E24 */ _t571 = cpu->r[29] + 0x00000000u;
|
|
/* 02069E24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t571);
|
|
/* 02069E28 */ _t572 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02069E28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t572);
|
|
/* 02069E2C */ cpu->ctr = cpu->r[0];
|
|
/* 02069E30 */ cpu->r[3] = cpu->r[29];
|
|
/* 02069E34 */ cpu->r[4] = cpu->r[30];
|
|
/* 02069E38 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069E3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02069E40 */ _t573 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069E40 */ _t574 = _t573 & 0x00000001u;
|
|
/* 02069E40 */ if (_t574) goto L_02069E44; else goto L_02069E48;
|
|
L_02069E44: ; // 0x2069e44
|
|
/* 02069E44 */ cpu->r[23] = 0x00000001u;
|
|
L_02069E48: ; // 0x2069e48
|
|
/* 02069E48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u);
|
|
/* 02069E4C */ _t575 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069E4C */ _t576 = _t575 & 0x00000001u;
|
|
/* 02069E4C */ if (_t576) goto L_02069E94; else goto L_02069E50;
|
|
L_02069E50: ; // 0x2069e50
|
|
/* 02069E50 */ _t577 = cpu->r[1] + 0x00000014u;
|
|
/* 02069E50 */ cpu->r[5] = rbrew_read32(cpu->mem, _t577);
|
|
/* 02069E54 */ _t578 = cpu->r[5] + 0x00000014u;
|
|
/* 02069E54 */ cpu->r[6] = rbrew_read32(cpu->mem, _t578);
|
|
/* 02069E58 */ cpu->ctr = cpu->r[6];
|
|
/* 02069E5C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02069E60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069E64 */ _t579 = cpu->r[1] + 0x00000010u;
|
|
/* 02069E64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t579);
|
|
/* 02069E68 */ cpu->r[8] = 0x00000000u;
|
|
/* 02069E6C */ cpu->r[7] = cpu->r[24];
|
|
/* 02069E70 */ cpu->r[6] = cpu->r[26];
|
|
/* 02069E74 */ cpu->r[5] = cpu->r[30];
|
|
/* 02069E78 */ cpu->r[3] = cpu->r[29] + 0x000001C8u;
|
|
/* 02069E7C */ Gambit_fn_0206A764(cpu);
|
|
/* 02069E80 */ /* nop */
|
|
/* 02069E84 */ _t580 = cpu->r[1] + 0x000000DCu;
|
|
/* 02069E84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t580);
|
|
/* 02069E88 */ cpu->lr = cpu->r[0];
|
|
/* 02069E8C */ cpu->r[1] = cpu->r[1] + 0x000000D8u;
|
|
/* 02069E90 */ return;
|
|
L_02069E94: ; // 0x2069e94
|
|
/* 02069E94 */ cpu->r[7] = 0x10000000u;
|
|
/* 02069E98 */ _t581 = cpu->r[1] + 0x000000A4u;
|
|
/* 02069E98 */ rbrew_write32(cpu->mem, _t581, cpu->r[28]);
|
|
/* 02069E9C */ cpu->r[7] = cpu->r[7] + 0x0000762Cu;
|
|
/* 02069EA0 */ _t582 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069EA0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t582);
|
|
/* 02069EA4 */ _t583 = cpu->r[1] + 0x000000A0u;
|
|
/* 02069EA4 */ rbrew_write32(cpu->mem, _t583, cpu->r[7]);
|
|
/* 02069EA8 */ _t584 = cpu->r[8] + 0x00000014u;
|
|
/* 02069EA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t584);
|
|
/* 02069EAC */ cpu->ctr = cpu->r[0];
|
|
/* 02069EB0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069EB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069EB8 */ _t585 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02069EB8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t585);
|
|
/* 02069EBC */ _t586 = cpu->r[10] + 0x00000014u;
|
|
/* 02069EBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t586);
|
|
/* 02069EC0 */ cpu->ctr = cpu->r[0];
|
|
/* 02069EC4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02069EC8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069ECC */ _t587 = cpu->r[1] + 0x000000A4u;
|
|
/* 02069ECC */ cpu->r[12] = rbrew_read32(cpu->mem, _t587);
|
|
/* 02069ED0 */ _t588 = cpu->r[12] + 0x00000014u;
|
|
/* 02069ED0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t588);
|
|
/* 02069ED4 */ cpu->ctr = cpu->r[4];
|
|
/* 02069ED8 */ _t589 = cpu->r[1] + 0x00000008u;
|
|
/* 02069ED8 */ cpu->r[25] = rbrew_read32(cpu->mem, _t589);
|
|
/* 02069EDC */ cpu->r[3] = cpu->r[1] + 0x000000A0u;
|
|
/* 02069EE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069EE4 */ _t590 = cpu->r[1] + 0x000000A0u;
|
|
/* 02069EE4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t590);
|
|
/* 02069EE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[5]);
|
|
/* 02069EEC */ _t591 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069EEC */ _t592 = _t591 & 0x00000001u;
|
|
/* 02069EEC */ if (_t592) goto L_02069F34; else goto L_02069EF0;
|
|
L_02069EF0: ; // 0x2069ef0
|
|
/* 02069EF0 */ _t593 = cpu->r[1] + 0x000000A0u;
|
|
/* 02069EF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t593);
|
|
/* 02069EF4 */ cpu->ctr = cpu->r[27];
|
|
/* 02069EF8 */ _t594 = cpu->r[1] + 0x00000008u;
|
|
/* 02069EF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t594);
|
|
/* 02069EFC */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02069F00: ; // 0x2069f00
|
|
/* 02069F00 */ _t595 = cpu->r[11] + 0x00000000u;
|
|
/* 02069F00 */ cpu->r[4] = rbrew_read8(cpu->mem, _t595);
|
|
/* 02069F04 */ _t596 = cpu->r[12] + 0x00000001u;
|
|
/* 02069F04 */ cpu->r[6] = rbrew_read8(cpu->mem, _t596);
|
|
/* 02069F04 */ cpu->r[12] = _t596;
|
|
/* 02069F08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[6]);
|
|
/* 02069F0C */ _t597 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069F0C */ _t598 = _t597 & 0x00000001u;
|
|
/* 02069F0C */ if (_t598) goto L_02069F10; else goto L_0206A038;
|
|
L_02069F10: ; // 0x2069f10
|
|
/* 02069F10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 02069F14 */ _t599 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069F14 */ _t600 = _t599 & 0x00000001u;
|
|
/* 02069F14 */ if (_t600) goto L_02069F34; else goto L_02069F18;
|
|
L_02069F18: ; // 0x2069f18
|
|
/* 02069F18 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02069F1C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02069F1C */ _t601 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02069F1C */ _t602 = _t601 >> (0x00000002u & 31u);
|
|
/* 02069F1C */ _t603 = _t602 & 0x00000001u;
|
|
/* 02069F1C */ if (_t603) goto L_02069F00; else goto L_02069F20;
|
|
L_02069F20: ; // 0x2069f20
|
|
/* 02069F20 */ /* nop */
|
|
/* 02069F24 */ _t604 = cpu->r[1] + 0x000000DCu;
|
|
/* 02069F24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t604);
|
|
/* 02069F28 */ cpu->lr = cpu->r[0];
|
|
/* 02069F2C */ cpu->r[1] = cpu->r[1] + 0x000000D8u;
|
|
/* 02069F30 */ return;
|
|
L_02069F34: ; // 0x2069f34
|
|
/* 02069F34 */ cpu->r[7] = 0x10000000u;
|
|
/* 02069F38 */ _t605 = cpu->r[1] + 0x000000ACu;
|
|
/* 02069F38 */ rbrew_write32(cpu->mem, _t605, cpu->r[28]);
|
|
/* 02069F3C */ cpu->r[7] = cpu->r[7] + 0x0000766Cu;
|
|
/* 02069F40 */ _t606 = cpu->r[1] + 0x00000014u;
|
|
/* 02069F40 */ cpu->r[8] = rbrew_read32(cpu->mem, _t606);
|
|
/* 02069F44 */ _t607 = cpu->r[1] + 0x000000A8u;
|
|
/* 02069F44 */ rbrew_write32(cpu->mem, _t607, cpu->r[7]);
|
|
/* 02069F48 */ _t608 = cpu->r[8] + 0x00000014u;
|
|
/* 02069F48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t608);
|
|
/* 02069F4C */ cpu->ctr = cpu->r[9];
|
|
/* 02069F50 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02069F54 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069F58 */ _t609 = cpu->r[1] + 0x00000014u;
|
|
/* 02069F58 */ cpu->r[10] = rbrew_read32(cpu->mem, _t609);
|
|
/* 02069F5C */ _t610 = cpu->r[10] + 0x00000014u;
|
|
/* 02069F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t610);
|
|
/* 02069F60 */ cpu->ctr = cpu->r[0];
|
|
/* 02069F64 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02069F68 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069F6C */ _t611 = cpu->r[1] + 0x000000ACu;
|
|
/* 02069F6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t611);
|
|
/* 02069F70 */ _t612 = cpu->r[12] + 0x00000014u;
|
|
/* 02069F70 */ cpu->r[4] = rbrew_read32(cpu->mem, _t612);
|
|
/* 02069F74 */ cpu->ctr = cpu->r[4];
|
|
/* 02069F78 */ _t613 = cpu->r[1] + 0x00000010u;
|
|
/* 02069F78 */ cpu->r[28] = rbrew_read32(cpu->mem, _t613);
|
|
/* 02069F7C */ cpu->r[3] = cpu->r[1] + 0x000000A8u;
|
|
/* 02069F80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069F84 */ _t614 = cpu->r[1] + 0x000000A8u;
|
|
/* 02069F84 */ cpu->r[5] = rbrew_read32(cpu->mem, _t614);
|
|
/* 02069F88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[5]);
|
|
/* 02069F8C */ _t615 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069F8C */ _t616 = _t615 & 0x00000001u;
|
|
/* 02069F8C */ if (_t616) goto L_02069F90; else goto L_02069FD4;
|
|
L_02069F90: ; // 0x2069f90
|
|
/* 02069F90 */ _t617 = cpu->r[1] + 0x00000014u;
|
|
/* 02069F90 */ cpu->r[7] = rbrew_read32(cpu->mem, _t617);
|
|
/* 02069F94 */ _t618 = cpu->r[7] + 0x00000014u;
|
|
/* 02069F94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t618);
|
|
/* 02069F98 */ cpu->ctr = cpu->r[0];
|
|
/* 02069F9C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02069FA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02069FA4 */ cpu->r[7] = 0x00000000u;
|
|
/* 02069FA8 */ _t619 = cpu->r[1] + 0x00000010u;
|
|
/* 02069FA8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t619);
|
|
/* 02069FAC */ cpu->r[3] = cpu->r[29] + 0x000001C8u;
|
|
/* 02069FB0 */ cpu->r[5] = cpu->r[30];
|
|
/* 02069FB4 */ cpu->r[8] = cpu->r[7];
|
|
/* 02069FB8 */ cpu->r[6] = cpu->r[26];
|
|
/* 02069FBC */ Gambit_fn_0206A84C(cpu);
|
|
/* 02069FC0 */ /* nop */
|
|
/* 02069FC4 */ _t620 = cpu->r[1] + 0x000000DCu;
|
|
/* 02069FC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t620);
|
|
/* 02069FC8 */ cpu->lr = cpu->r[0];
|
|
/* 02069FCC */ cpu->r[1] = cpu->r[1] + 0x000000D8u;
|
|
/* 02069FD0 */ return;
|
|
L_02069FD4: ; // 0x2069fd4
|
|
/* 02069FD4 */ _t621 = cpu->r[1] + 0x000000A8u;
|
|
/* 02069FD4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t621);
|
|
/* 02069FD8 */ cpu->ctr = cpu->r[27];
|
|
/* 02069FDC */ _t622 = cpu->r[1] + 0x00000010u;
|
|
/* 02069FDC */ cpu->r[9] = rbrew_read32(cpu->mem, _t622);
|
|
/* 02069FE0 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02069FE4: ; // 0x2069fe4
|
|
/* 02069FE4 */ _t623 = cpu->r[9] + 0x00000000u;
|
|
/* 02069FE4 */ cpu->r[5] = rbrew_read8(cpu->mem, _t623);
|
|
/* 02069FE8 */ _t624 = cpu->r[10] + 0x00000001u;
|
|
/* 02069FE8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t624);
|
|
/* 02069FE8 */ cpu->r[10] = _t624;
|
|
/* 02069FEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]);
|
|
/* 02069FF0 */ _t625 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069FF0 */ _t626 = _t625 & 0x00000001u;
|
|
/* 02069FF0 */ if (_t626) goto L_02069FF4; else goto L_0206A004;
|
|
L_02069FF4: ; // 0x2069ff4
|
|
/* 02069FF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02069FF8 */ _t627 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02069FF8 */ _t628 = _t627 & 0x00000001u;
|
|
/* 02069FF8 */ if (_t628) goto L_02069F90; else goto L_02069FFC;
|
|
L_02069FFC: ; // 0x2069ffc
|
|
/* 02069FFC */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 0206A000 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0206A000 */ _t629 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0206A000 */ _t630 = _t629 >> (0x00000002u & 31u);
|
|
/* 0206A000 */ _t631 = _t630 & 0x00000001u;
|
|
/* 0206A000 */ if (_t631) goto L_02069FE4; else goto L_0206A004;
|
|
L_0206A004: ; // 0x206a004
|
|
/* 0206A004 */ _t632 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A004 */ cpu->r[7] = rbrew_read32(cpu->mem, _t632);
|
|
/* 0206A008 */ _t633 = cpu->r[7] + 0x00000014u;
|
|
/* 0206A008 */ cpu->r[0] = rbrew_read32(cpu->mem, _t633);
|
|
/* 0206A00C */ cpu->ctr = cpu->r[0];
|
|
/* 0206A010 */ cpu->r[31] = 0x00000000u;
|
|
/* 0206A014 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A018 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A01C */ _t634 = cpu->r[1] + 0x00000010u;
|
|
/* 0206A01C */ cpu->r[4] = rbrew_read32(cpu->mem, _t634);
|
|
/* 0206A020 */ cpu->r[8] = cpu->r[31];
|
|
/* 0206A024 */ cpu->r[6] = cpu->r[26];
|
|
/* 0206A028 */ cpu->r[7] = cpu->r[31];
|
|
/* 0206A02C */ cpu->r[5] = cpu->r[30];
|
|
/* 0206A030 */ cpu->r[3] = cpu->r[29] + 0x000001C8u;
|
|
/* 0206A034 */ Gambit_fn_0206A934(cpu);
|
|
L_0206A038: ; // 0x206a038
|
|
/* 0206A038 */ /* nop */
|
|
/* 0206A03C */ _t635 = cpu->r[1] + 0x000000DCu;
|
|
/* 0206A03C */ cpu->r[0] = rbrew_read32(cpu->mem, _t635);
|
|
/* 0206A040 */ cpu->lr = cpu->r[0];
|
|
/* 0206A044 */ cpu->r[1] = cpu->r[1] + 0x000000D8u;
|
|
/* 0206A048 */ return;
|
|
}
|
|
|
|
// fn_0206A04C @ 0x206a04c
|
|
void Gambit_fn_0206A04C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52;
|
|
|
|
L_0206A04C: ; // 0x206a04c
|
|
/* 0206A04C */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0206A04C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A04C */ cpu->r[1] = _t0;
|
|
/* 0206A050 */ /* nop */
|
|
/* 0206A054 */ cpu->r[0] = cpu->lr;
|
|
/* 0206A058 */ _t1 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0206A058 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0206A05C */ cpu->r[30] = cpu->r[3];
|
|
/* 0206A060 */ _t2 = cpu->r[30] + 0x00000030u;
|
|
/* 0206A060 */ cpu->r[8] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206A064 */ _t3 = cpu->r[8] + 0x0000001Cu;
|
|
/* 0206A064 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206A068 */ _t4 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0206A068 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A06C */ cpu->r[31] = cpu->r[4];
|
|
/* 0206A070 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0206A074 */ cpu->r[12] = cpu->r[8] + 0x00000010u;
|
|
/* 0206A078 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A078 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206A078 */ if (_t6) goto L_0206A07C; else goto L_0206A1C0;
|
|
L_0206A07C: ; // 0x206a07c
|
|
/* 0206A07C */ _t7 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0206A07C */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206A080 */ _t8 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0206A080 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206A084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206A088 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A088 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206A088 */ if (_t10) goto L_0206A0D0; else goto L_0206A08C;
|
|
L_0206A08C: ; // 0x206a08c
|
|
/* 0206A08C */ _t11 = cpu->r[30] + 0x00000024u;
|
|
/* 0206A08C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206A090 */ _t12 = cpu->r[12] + 0x00000030u;
|
|
/* 0206A090 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206A094 */ _t13 = cpu->r[11] + 0x0000001Cu;
|
|
/* 0206A094 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206A098 */ _t14 = cpu->r[10] + 0x0000000Cu;
|
|
/* 0206A098 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206A09C */ cpu->r[0] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 0206A0A0 */ cpu->r[0] = cpu->r[8] - cpu->r[0];
|
|
/* 0206A0A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206A0A4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A0A4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0206A0A4 */ if (_t16) goto L_0206A0BC; else goto L_0206A0A8;
|
|
L_0206A0A8: ; // 0x206a0a8
|
|
/* 0206A0A8 */ _t17 = cpu->r[12] + 0x00000024u;
|
|
/* 0206A0A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0206A0AC */ Gambit_fn_0206A3C8(cpu);
|
|
/* 0206A0B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206A0B4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A0B4 */ _t19 = _t18 & 0x00000001u;
|
|
/* 0206A0B4 */ if (_t19) goto L_0206A1C0; else goto L_0206A0B8;
|
|
L_0206A0B8: ; // 0x206a0b8
|
|
/* 0206A0B8 */ goto L_0206A0E0;
|
|
L_0206A0BC: ; // 0x206a0bc
|
|
/* 0206A0BC */ cpu->r[3] = cpu->r[12] + 0x00000110u;
|
|
/* 0206A0C0 */ Gambit_fn_026D8AF0(cpu);
|
|
/* 0206A0C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206A0C8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A0C8 */ _t21 = _t20 & 0x00000001u;
|
|
/* 0206A0C8 */ if (_t21) goto L_0206A1C0; else goto L_0206A0CC;
|
|
L_0206A0CC: ; // 0x206a0cc
|
|
/* 0206A0CC */ goto L_0206A0E0;
|
|
L_0206A0D0: ; // 0x206a0d0
|
|
/* 0206A0D0 */ cpu->r[3] = cpu->r[30] + 0x00000110u;
|
|
/* 0206A0D4 */ Gambit_fn_026D8AF0(cpu);
|
|
/* 0206A0D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206A0DC */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A0DC */ _t23 = _t22 & 0x00000001u;
|
|
/* 0206A0DC */ if (_t23) goto L_0206A1C0; else goto L_0206A0E0;
|
|
L_0206A0E0: ; // 0x206a0e0
|
|
/* 0206A0E0 */ _t24 = cpu->r[30] + 0x00000030u;
|
|
/* 0206A0E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0206A0E4 */ _t25 = cpu->r[11] + 0x0000001Cu;
|
|
/* 0206A0E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0206A0E8 */ _t26 = cpu->r[9] + 0x0000000Cu;
|
|
/* 0206A0E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0206A0EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0206A0F0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A0F0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 0206A0F0 */ if (_t28) goto L_0206A138; else goto L_0206A0F4;
|
|
L_0206A0F4: ; // 0x206a0f4
|
|
/* 0206A0F4 */ _t29 = cpu->r[30] + 0x00000024u;
|
|
/* 0206A0F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0206A0F8 */ _t30 = cpu->r[10] + 0x00000030u;
|
|
/* 0206A0F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0206A0FC */ _t31 = cpu->r[9] + 0x0000001Cu;
|
|
/* 0206A0FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0206A100 */ _t32 = cpu->r[11] + 0x0000000Cu;
|
|
/* 0206A100 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0206A104 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 0206A108 */ cpu->r[0] = cpu->r[12] - cpu->r[0];
|
|
/* 0206A108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206A10C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A10C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0206A10C */ if (_t34) goto L_0206A124; else goto L_0206A110;
|
|
L_0206A110: ; // 0x206a110
|
|
/* 0206A110 */ _t35 = cpu->r[10] + 0x00000024u;
|
|
/* 0206A110 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0206A114 */ Gambit_fn_0206A384(cpu);
|
|
/* 0206A118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206A11C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A11C */ _t37 = _t36 & 0x00000001u;
|
|
/* 0206A11C */ if (_t37) goto L_0206A148; else goto L_0206A120;
|
|
L_0206A120: ; // 0x206a120
|
|
/* 0206A120 */ goto L_0206A1C0;
|
|
L_0206A124: ; // 0x206a124
|
|
/* 0206A124 */ cpu->r[3] = cpu->r[10] + 0x00000110u;
|
|
/* 0206A128 */ Gambit_fn_026D8B90(cpu);
|
|
/* 0206A12C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206A130 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A130 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0206A130 */ if (_t39) goto L_0206A148; else goto L_0206A134;
|
|
L_0206A134: ; // 0x206a134
|
|
/* 0206A134 */ goto L_0206A1C0;
|
|
L_0206A138: ; // 0x206a138
|
|
/* 0206A138 */ cpu->r[3] = cpu->r[30] + 0x00000110u;
|
|
/* 0206A13C */ Gambit_fn_026D8B90(cpu);
|
|
/* 0206A140 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206A144 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A144 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0206A144 */ if (_t41) goto L_0206A148; else goto L_0206A1C0;
|
|
L_0206A148: ; // 0x206a148
|
|
/* 0206A148 */ cpu->r[27] = 0x10000000u;
|
|
/* 0206A14C */ cpu->r[27] = cpu->r[27] + 0x00007540u;
|
|
/* 0206A150 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A150 */ rbrew_write32(cpu->mem, _t42, cpu->r[27]);
|
|
/* 0206A154 */ cpu->r[29] = 0x10000000u;
|
|
/* 0206A158 */ cpu->r[28] = 0x10000000u;
|
|
/* 0206A15C */ cpu->r[29] = cpu->r[29] + 0x00007688u;
|
|
/* 0206A160 */ cpu->r[28] = cpu->r[28] + 0x00007684u;
|
|
/* 0206A164 */ _t43 = cpu->r[1] + 0x00000010u;
|
|
/* 0206A164 */ rbrew_write32(cpu->mem, _t43, cpu->r[29]);
|
|
/* 0206A168 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206A16C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A170 */ _t44 = cpu->r[1] + 0x00000008u;
|
|
/* 0206A170 */ rbrew_write32(cpu->mem, _t44, cpu->r[28]);
|
|
/* 0206A174 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206A178 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A178 */ rbrew_write32(cpu->mem, _t45, cpu->r[27]);
|
|
/* 0206A17C */ Gambit_fn_027EBCFC(cpu);
|
|
/* 0206A180 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206A184 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A184 */ _t47 = _t46 & 0x00000001u;
|
|
/* 0206A184 */ if (_t47) goto L_0206A1C0; else goto L_0206A188;
|
|
L_0206A188: ; // 0x206a188
|
|
/* 0206A188 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206A188 */ rbrew_write32(cpu->mem, _t48, cpu->r[27]);
|
|
/* 0206A18C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206A190 */ _t49 = cpu->r[1] + 0x00000024u;
|
|
/* 0206A190 */ rbrew_write32(cpu->mem, _t49, cpu->r[27]);
|
|
/* 0206A194 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 0206A198 */ _t50 = cpu->r[1] + 0x00000018u;
|
|
/* 0206A198 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 0206A19C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0206A1A0 */ _t51 = cpu->r[1] + 0x00000020u;
|
|
/* 0206A1A0 */ rbrew_write32(cpu->mem, _t51, cpu->r[29]);
|
|
/* 0206A1A4 */ Gambit_fn_027EBB94(cpu);
|
|
/* 0206A1A8 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206A1AC */ cpu->r[3] = cpu->r[1] + 0x00000028u;
|
|
/* 0206A1B0 */ Gambit_fn_027EE8B8(cpu);
|
|
/* 0206A1B4 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 0206A1B8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206A1BC */ Gambit_fn_027ECC04(cpu);
|
|
L_0206A1C0: ; // 0x206a1c0
|
|
/* 0206A1C0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206A1C4 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206A1C8 */ Gambit_fn_026D80BC(cpu);
|
|
/* 0206A1CC */ /* nop */
|
|
/* 0206A1D0 */ _t52 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0206A1D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52);
|
|
/* 0206A1D4 */ cpu->lr = cpu->r[0];
|
|
/* 0206A1D8 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0206A1DC */ return;
|
|
}
|
|
|
|
// fn_0206A1E0 @ 0x206a1e0
|
|
void Gambit_fn_0206A1E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0206A1E0: ; // 0x206a1e0
|
|
/* 0206A1E0 */ cpu->r[0] = cpu->lr;
|
|
/* 0206A1E4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A1E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A1E4 */ cpu->r[1] = _t0;
|
|
/* 0206A1E8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A1E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A1EC */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A1F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A1F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A1F4 */ Gambit_fn_026D8144(cpu);
|
|
/* 0206A1F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A1FC */ Gambit_fn_026D8674(cpu);
|
|
/* 0206A200 */ _t3 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A200 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206A204 */ _t4 = cpu->r[12] + 0x0000011Cu;
|
|
/* 0206A204 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A208 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A20C */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A210 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206A218 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A218 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206A218 */ if (_t6) goto L_0206A24C; else goto L_0206A21C;
|
|
L_0206A21C: ; // 0x206a21c
|
|
/* 0206A21C */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A21C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206A220 */ _t8 = cpu->r[12] + 0x0000011Cu;
|
|
/* 0206A220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206A224 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A228 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A22C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A230 */ Gambit_fn_020DAC24(cpu);
|
|
/* 0206A234 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A234 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206A238 */ _t10 = cpu->r[12] + 0x0000011Cu;
|
|
/* 0206A238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206A23C */ cpu->ctr = cpu->r[0];
|
|
/* 0206A240 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A244 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A248 */ Gambit_fn_020DACF0(cpu);
|
|
L_0206A24C: ; // 0x206a24c
|
|
/* 0206A24C */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A24C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206A250 */ _t12 = cpu->r[12] + 0x00000094u;
|
|
/* 0206A250 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206A254 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A258 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A25C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A260 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A260 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206A264 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A264 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206A268 */ cpu->lr = cpu->r[0];
|
|
/* 0206A26C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A270 */ return;
|
|
}
|
|
|
|
// fn_0206A1E4 @ 0x206a1e4
|
|
void Gambit_fn_0206A1E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0206A1E4: ; // 0x206a1e4
|
|
/* 0206A1E4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A1E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A1E4 */ cpu->r[1] = _t0;
|
|
/* 0206A1E8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A1E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A1EC */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A1F0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A1F0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A1F4 */ Gambit_fn_026D8144(cpu);
|
|
/* 0206A1F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A1FC */ Gambit_fn_026D8674(cpu);
|
|
/* 0206A200 */ _t3 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A200 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206A204 */ _t4 = cpu->r[12] + 0x0000011Cu;
|
|
/* 0206A204 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A208 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A20C */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A210 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206A218 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A218 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206A218 */ if (_t6) goto L_0206A24C; else goto L_0206A21C;
|
|
L_0206A21C: ; // 0x206a21c
|
|
/* 0206A21C */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A21C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206A220 */ _t8 = cpu->r[12] + 0x0000011Cu;
|
|
/* 0206A220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206A224 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A228 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A22C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A230 */ Gambit_fn_020DAC24(cpu);
|
|
/* 0206A234 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A234 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206A238 */ _t10 = cpu->r[12] + 0x0000011Cu;
|
|
/* 0206A238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206A23C */ cpu->ctr = cpu->r[0];
|
|
/* 0206A240 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A244 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A248 */ Gambit_fn_020DACF0(cpu);
|
|
L_0206A24C: ; // 0x206a24c
|
|
/* 0206A24C */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A24C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206A250 */ _t12 = cpu->r[12] + 0x00000094u;
|
|
/* 0206A250 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206A254 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A258 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A25C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A260 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A260 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206A264 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A264 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206A268 */ cpu->lr = cpu->r[0];
|
|
/* 0206A26C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A270 */ return;
|
|
}
|
|
|
|
// fn_0206A274 @ 0x206a274
|
|
void Gambit_fn_0206A274(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0206A274: ; // 0x206a274
|
|
/* 0206A274 */ cpu->r[0] = cpu->lr;
|
|
/* 0206A278 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A278 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A278 */ cpu->r[1] = _t0;
|
|
/* 0206A27C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A27C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A280 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A284 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A284 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A288 */ Gambit_fn_026D8204(cpu);
|
|
/* 0206A28C */ _t3 = cpu->r[31] + 0x00000030u;
|
|
/* 0206A28C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206A290 */ _t4 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0206A290 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A294 */ _t5 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0206A294 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206A29C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A29C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206A29C */ if (_t7) goto L_0206A2A0; else goto L_0206A2B0;
|
|
L_0206A2A0: ; // 0x206a2a0
|
|
/* 0206A2A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A2A4 */ Gambit_fn_02068974(cpu);
|
|
/* 0206A2A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A2AC */ Gambit_fn_02068A74(cpu);
|
|
L_0206A2B0: ; // 0x206a2b0
|
|
/* 0206A2B0 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A2B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206A2B4 */ _t9 = cpu->r[12] + 0x0000011Cu;
|
|
/* 0206A2B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206A2B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A2BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A2C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A2C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206A2C8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A2C8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0206A2C8 */ if (_t11) goto L_0206A2FC; else goto L_0206A2CC;
|
|
L_0206A2CC: ; // 0x206a2cc
|
|
/* 0206A2CC */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A2CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206A2D0 */ _t13 = cpu->r[12] + 0x0000011Cu;
|
|
/* 0206A2D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206A2D4 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A2D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A2DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A2E0 */ Gambit_fn_020DAC24(cpu);
|
|
/* 0206A2E4 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A2E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206A2E8 */ _t15 = cpu->r[12] + 0x0000011Cu;
|
|
/* 0206A2E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206A2EC */ cpu->ctr = cpu->r[0];
|
|
/* 0206A2F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A2F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A2F8 */ Gambit_fn_020DACF0(cpu);
|
|
L_0206A2FC: ; // 0x206a2fc
|
|
/* 0206A2FC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A2FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206A300 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A300 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0206A304 */ cpu->lr = cpu->r[0];
|
|
/* 0206A308 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A30C */ return;
|
|
}
|
|
|
|
// fn_0206A278 @ 0x206a278
|
|
void Gambit_fn_0206A278(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_0206A278: ; // 0x206a278
|
|
/* 0206A278 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A278 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A278 */ cpu->r[1] = _t0;
|
|
/* 0206A27C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A27C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A280 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A284 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A284 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A288 */ Gambit_fn_026D8204(cpu);
|
|
/* 0206A28C */ _t3 = cpu->r[31] + 0x00000030u;
|
|
/* 0206A28C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206A290 */ _t4 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0206A290 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A294 */ _t5 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0206A294 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206A29C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A29C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206A29C */ if (_t7) goto L_0206A2A0; else goto L_0206A2B0;
|
|
L_0206A2A0: ; // 0x206a2a0
|
|
/* 0206A2A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A2A4 */ Gambit_fn_02068974(cpu);
|
|
/* 0206A2A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A2AC */ Gambit_fn_02068A74(cpu);
|
|
L_0206A2B0: ; // 0x206a2b0
|
|
/* 0206A2B0 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A2B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206A2B4 */ _t9 = cpu->r[12] + 0x0000011Cu;
|
|
/* 0206A2B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206A2B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A2BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A2C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A2C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206A2C8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A2C8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0206A2C8 */ if (_t11) goto L_0206A2FC; else goto L_0206A2CC;
|
|
L_0206A2CC: ; // 0x206a2cc
|
|
/* 0206A2CC */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A2CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206A2D0 */ _t13 = cpu->r[12] + 0x0000011Cu;
|
|
/* 0206A2D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206A2D4 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A2D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A2DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A2E0 */ Gambit_fn_020DAC24(cpu);
|
|
/* 0206A2E4 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A2E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206A2E8 */ _t15 = cpu->r[12] + 0x0000011Cu;
|
|
/* 0206A2E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206A2EC */ cpu->ctr = cpu->r[0];
|
|
/* 0206A2F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A2F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A2F8 */ Gambit_fn_020DACF0(cpu);
|
|
L_0206A2FC: ; // 0x206a2fc
|
|
/* 0206A2FC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A2FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206A300 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A300 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0206A304 */ cpu->lr = cpu->r[0];
|
|
/* 0206A308 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A30C */ return;
|
|
}
|
|
|
|
// fn_0206A310 @ 0x206a310
|
|
void Gambit_fn_0206A310(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0206A310: ; // 0x206a310
|
|
/* 0206A310 */ goto L_026D82BC;
|
|
L_026D82BC: ; // 0x26d82bc
|
|
/* 026D82BC */ cpu->r[0] = cpu->lr;
|
|
/* 026D82C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 026D82C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 026D82C0 */ cpu->r[1] = _t0;
|
|
/* 026D82C4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026D82C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 026D82C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 026D82CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 026D82CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 026D82D0 */ _t3 = cpu->r[31] + 0x00000118u;
|
|
/* 026D82D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 026D82D4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 026D82D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 026D82D8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026D82D8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 026D82D8 */ if (_t5) goto L_026D82DC; else goto L_026D82EC;
|
|
L_026D82DC: ; // 0x26d82dc
|
|
/* 026D82DC */ cpu->r[3] = cpu->r[31];
|
|
/* 026D82E0 */ Gambit_fn_027EBCC0(cpu);
|
|
/* 026D82E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 026D82E8 */ Gambit_fn_027EBCD4(cpu);
|
|
L_026D82EC: ; // 0x26d82ec
|
|
/* 026D82EC */ cpu->r[3] = cpu->r[31];
|
|
/* 026D82F0 */ Gambit_fn_026D8280(cpu);
|
|
/* 026D82F4 */ _t6 = cpu->r[31] + 0x00000030u;
|
|
/* 026D82F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 026D82F8 */ _t7 = cpu->r[12] + 0x0000001Cu;
|
|
/* 026D82F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 026D82FC */ _t8 = cpu->r[9] + 0x0000000Cu;
|
|
/* 026D82FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 026D8300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 026D8304 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026D8304 */ _t10 = _t9 & 0x00000001u;
|
|
/* 026D8304 */ if (_t10) goto L_026D8308; else goto L_026D8320;
|
|
L_026D8308: ; // 0x26d8308
|
|
/* 026D8308 */ cpu->r[3] = cpu->r[31];
|
|
/* 026D830C */ cpu->r[4] = 0x00000000u;
|
|
/* 026D8310 */ Gambit_fn_026D8160(cpu);
|
|
/* 026D8314 */ cpu->r[3] = cpu->r[31];
|
|
/* 026D8318 */ cpu->r[4] = 0x00000000u;
|
|
/* 026D831C */ Gambit_fn_026D8170(cpu);
|
|
L_026D8320: ; // 0x26d8320
|
|
/* 026D8320 */ _t11 = cpu->r[31] + 0x00000118u;
|
|
/* 026D8320 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 026D8324 */ cpu->r[12] = cpu->r[10] | 0x00000012u;
|
|
/* 026D8328 */ _t12 = cpu->r[31] + 0x00000118u;
|
|
/* 026D8328 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 026D832C */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 026D832C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 026D8330 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 026D8330 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 026D8334 */ cpu->lr = cpu->r[0];
|
|
/* 026D8338 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 026D833C */ return;
|
|
}
|
|
|
|
// fn_0206A314 @ 0x206a314
|
|
void Gambit_fn_0206A314(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;
|
|
|
|
L_0206A314: ; // 0x206a314
|
|
/* 0206A314 */ cpu->r[12] = cpu->r[4];
|
|
/* 0206A318 */ cpu->r[4] = cpu->r[5];
|
|
/* 0206A31C */ cpu->r[5] = cpu->r[6];
|
|
/* 0206A320 */ cpu->r[6] = cpu->r[7];
|
|
/* 0206A324 */ _t0 = cpu->r[12] + 0x00000081u;
|
|
/* 0206A324 */ cpu->r[7] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206A328 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206A32C */ goto L_026E0848;
|
|
L_026E0848: ; // 0x26e0848
|
|
/* 026E0848 */ cpu->r[0] = cpu->lr;
|
|
/* 026E084C */ _t1 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 026E084C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 026E084C */ cpu->r[1] = _t1;
|
|
/* 026E0850 */ _t2 = cpu->r[1] + 0x0000004Cu;
|
|
/* 026E0850 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 026E0854 */ /* nop */
|
|
/* 026E0858 */ cpu->r[29] = cpu->r[3];
|
|
/* 026E0858 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 026E085C */ cpu->r[25] = cpu->r[4];
|
|
/* 026E0860 */ cpu->r[26] = cpu->r[5];
|
|
/* 026E0864 */ cpu->r[27] = cpu->r[6];
|
|
/* 026E0868 */ cpu->r[28] = cpu->r[7];
|
|
/* 026E086C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E086C */ _t4 = _t3 & 0x00000001u;
|
|
/* 026E086C */ if (_t4) goto L_026E0870; else goto L_026E0880;
|
|
L_026E0870: ; // 0x26e0870
|
|
/* 026E0870 */ cpu->r[3] = 0x000000D0u;
|
|
/* 026E0874 */ Gambit_fn_02801A78(cpu);
|
|
/* 026E0878 */ cpu->r[29] = cpu->r[3];
|
|
/* 026E0878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 026E087C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E087C */ _t6 = _t5 & 0x00000001u;
|
|
/* 026E087C */ if (_t6) goto L_026E0AF8; else goto L_026E0880;
|
|
L_026E0880: ; // 0x26e0880
|
|
/* 026E0880 */ cpu->r[3] = cpu->r[29];
|
|
/* 026E0884 */ Gambit_fn_02821D00(cpu);
|
|
/* 026E0888 */ cpu->r[3] = cpu->r[29] + 0x00000010u;
|
|
/* 026E088C */ Gambit_fn_0285C120(cpu);
|
|
/* 026E0890 */ cpu->r[6] = 0x100F0000u;
|
|
/* 026E0894 */ cpu->r[20] = 0x10110000u;
|
|
/* 026E0898 */ cpu->r[21] = 0x00000000u;
|
|
/* 026E089C */ cpu->r[6] = cpu->r[6] + 0xFFFFCE4Cu;
|
|
/* 026E08A0 */ cpu->r[23] = 0x100F0000u;
|
|
/* 026E08A4 */ cpu->r[18] = cpu->r[29] + 0x00000044u;
|
|
/* 026E08A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 026E08A8 */ cpu->r[22] = 0x100F0000u;
|
|
/* 026E08AC */ cpu->r[24] = 0x100F0000u;
|
|
/* 026E08B0 */ cpu->r[7] = 0x100F0000u;
|
|
/* 026E08B4 */ cpu->r[22] = cpu->r[22] + 0xFFFFCDCCu;
|
|
/* 026E08B8 */ _t7 = cpu->r[29] + 0x0000000Cu;
|
|
/* 026E08B8 */ rbrew_write32(cpu->mem, _t7, cpu->r[6]);
|
|
/* 026E08BC */ cpu->r[7] = cpu->r[7] + 0xFFFFCE84u;
|
|
/* 026E08C0 */ cpu->r[24] = cpu->r[24] + 0xFFFFCD6Cu;
|
|
/* 026E08C4 */ cpu->r[23] = cpu->r[23] + 0xFFFFCDB4u;
|
|
/* 026E08C8 */ _t8 = cpu->r[29] + 0x00000010u;
|
|
/* 026E08C8 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 026E08CC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E08CC */ _t10 = _t9 & 0x00000001u;
|
|
/* 026E08CC */ if (_t10) goto L_026E08D0; else goto L_026E08E0;
|
|
L_026E08D0: ; // 0x26e08d0
|
|
/* 026E08D0 */ cpu->r[3] = 0x0000003Cu;
|
|
/* 026E08D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 026E08D8 */ cpu->r[18] = cpu->r[3];
|
|
/* 026E08D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u);
|
|
/* 026E08DC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E08DC */ _t12 = _t11 & 0x00000001u;
|
|
/* 026E08DC */ if (_t12) goto L_026E0A00; else goto L_026E08E0;
|
|
L_026E08E0: ; // 0x26e08e0
|
|
/* 026E08E0 */ cpu->r[19] = cpu->r[18];
|
|
/* 026E08E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 026E08E4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E08E4 */ _t14 = _t13 & 0x00000001u;
|
|
/* 026E08E4 */ if (_t14) goto L_026E08E8; else goto L_026E08F8;
|
|
L_026E08E8: ; // 0x26e08e8
|
|
/* 026E08E8 */ cpu->r[3] = 0x0000003Cu;
|
|
/* 026E08EC */ Gambit_fn_02801A78(cpu);
|
|
/* 026E08F0 */ cpu->r[19] = cpu->r[3];
|
|
/* 026E08F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 026E08F4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E08F4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 026E08F4 */ if (_t16) goto L_026E09FC; else goto L_026E08F8;
|
|
L_026E08F8: ; // 0x26e08f8
|
|
/* 026E08F8 */ cpu->r[3] = cpu->r[19];
|
|
/* 026E08F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026E08FC */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E08FC */ _t18 = _t17 & 0x00000001u;
|
|
/* 026E08FC */ if (_t18) goto L_026E0900; else goto L_026E094C;
|
|
L_026E0900: ; // 0x26e0900
|
|
/* 026E0900 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 026E0904 */ Gambit_fn_02801A78(cpu);
|
|
/* 026E0908 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026E090C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E090C */ _t20 = _t19 & 0x00000001u;
|
|
/* 026E090C */ if (_t20) goto L_026E0910; else goto L_026E094C;
|
|
L_026E0910: ; // 0x26e0910
|
|
/* 026E0910 */ _t21 = cpu->r[20] + 0x00007399u;
|
|
/* 026E0910 */ cpu->r[31] = rbrew_read8(cpu->mem, _t21);
|
|
/* 026E0914 */ _t22 = cpu->r[19] + 0x00000004u;
|
|
/* 026E0914 */ rbrew_write32(cpu->mem, _t22, cpu->r[23]);
|
|
/* 026E0918 */ _t23 = cpu->r[25] + 0x00000004u;
|
|
/* 026E0918 */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 026E091C */ _t24 = cpu->r[10] + 0x00000014u;
|
|
/* 026E091C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 026E0920 */ cpu->ctr = cpu->r[0];
|
|
/* 026E0924 */ _t25 = cpu->r[19] + 0x00000000u;
|
|
/* 026E0924 */ cpu->r[17] = rbrew_read32(cpu->mem, _t25);
|
|
/* 026E0928 */ cpu->r[3] = cpu->r[25];
|
|
/* 026E092C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026E0930 */ _t26 = cpu->r[25] + 0x00000000u;
|
|
/* 026E0930 */ cpu->r[7] = rbrew_read32(cpu->mem, _t26);
|
|
/* 026E0934 */ _t27 = cpu->r[7] + 0x00000000u;
|
|
/* 026E0934 */ cpu->r[10] = rbrew_read8(cpu->mem, _t27);
|
|
/* 026E0938 */ cpu->r[30] = 0x00000000u;
|
|
/* 026E093C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 026E0940 */ cpu->r[9] = 0x00080000u;
|
|
/* 026E0944 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E0944 */ _t29 = _t28 & 0x00000001u;
|
|
/* 026E0944 */ if (_t29) goto L_026E0948; else goto L_026E099C;
|
|
L_026E0948: ; // 0x26e0948
|
|
/* 026E0948 */ goto L_026E09C0;
|
|
L_026E094C: ; // 0x26e094c
|
|
/* 026E094C */ cpu->r[8] = cpu->r[19] + 0x0000000Cu;
|
|
/* 026E0950 */ _t30 = cpu->r[3] + 0x00000004u;
|
|
/* 026E0950 */ rbrew_write32(cpu->mem, _t30, cpu->r[24]);
|
|
/* 026E0954 */ cpu->r[0] = 0x00000030u;
|
|
/* 026E0958 */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 026E0958 */ rbrew_write32(cpu->mem, _t31, cpu->r[8]);
|
|
/* 026E095C */ _t32 = cpu->r[3] + 0x00000008u;
|
|
/* 026E095C */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 026E0960 */ _t33 = cpu->r[20] + 0x00007399u;
|
|
/* 026E0960 */ cpu->r[31] = rbrew_read8(cpu->mem, _t33);
|
|
/* 026E0964 */ _t34 = cpu->r[19] + 0x00000004u;
|
|
/* 026E0964 */ rbrew_write32(cpu->mem, _t34, cpu->r[23]);
|
|
/* 026E0968 */ _t35 = cpu->r[19] + 0x0000003Bu;
|
|
/* 026E0968 */ rbrew_write8(cpu->mem, _t35, (uint8_t)cpu->r[31]);
|
|
/* 026E096C */ _t36 = cpu->r[25] + 0x00000004u;
|
|
/* 026E096C */ cpu->r[10] = rbrew_read32(cpu->mem, _t36);
|
|
/* 026E0970 */ _t37 = cpu->r[10] + 0x00000014u;
|
|
/* 026E0970 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 026E0974 */ cpu->ctr = cpu->r[0];
|
|
/* 026E0978 */ _t38 = cpu->r[19] + 0x00000000u;
|
|
/* 026E0978 */ cpu->r[17] = rbrew_read32(cpu->mem, _t38);
|
|
/* 026E097C */ cpu->r[3] = cpu->r[25];
|
|
/* 026E0980 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026E0984 */ _t39 = cpu->r[25] + 0x00000000u;
|
|
/* 026E0984 */ cpu->r[7] = rbrew_read32(cpu->mem, _t39);
|
|
/* 026E0988 */ _t40 = cpu->r[7] + 0x00000000u;
|
|
/* 026E0988 */ cpu->r[10] = rbrew_read8(cpu->mem, _t40);
|
|
/* 026E098C */ cpu->r[30] = 0x00000000u;
|
|
/* 026E0990 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 026E0994 */ cpu->r[9] = 0x00080000u;
|
|
/* 026E0998 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E0998 */ _t42 = _t41 & 0x00000001u;
|
|
/* 026E0998 */ if (_t42) goto L_026E0948; else goto L_026E099C;
|
|
L_026E099C: ; // 0x26e099c
|
|
/* 026E099C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 026E09A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 026E09A4 */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 026E09A8 */ _t43 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 026E09A8 */ _t44 = _t43 & 0x00000001u;
|
|
/* 026E09A8 */ if (_t44) goto L_026E09BC; else goto L_026E09AC;
|
|
L_026E09AC: ; // 0x26e09ac
|
|
/* 026E09AC */ _t45 = cpu->r[7] + 0x00000000u;
|
|
/* 026E09AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t45);
|
|
/* 026E09B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 026E09B4 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E09B4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 026E09B4 */ if (_t47) goto L_026E09B8; else goto L_026E099C;
|
|
L_026E09B8: ; // 0x26e09b8
|
|
/* 026E09B8 */ goto L_026E09C0;
|
|
L_026E09BC: ; // 0x26e09bc
|
|
/* 026E09BC */ cpu->r[30] = 0x00000000u;
|
|
L_026E09C0: ; // 0x26e09c0
|
|
/* 026E09C0 */ _t48 = cpu->r[19] + 0x00000008u;
|
|
/* 026E09C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t48);
|
|
/* 026E09C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 026E09C8 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 026E09C8 */ _t50 = _t49 & 0x00000001u;
|
|
/* 026E09C8 */ if (_t50) goto L_026E09D0; else goto L_026E09CC;
|
|
L_026E09CC: ; // 0x26e09cc
|
|
/* 026E09CC */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_026E09D0: ; // 0x26e09d0
|
|
/* 026E09D0 */ _t51 = cpu->r[25] + 0x00000004u;
|
|
/* 026E09D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51);
|
|
/* 026E09D4 */ _t52 = cpu->r[12] + 0x00000014u;
|
|
/* 026E09D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 026E09D8 */ cpu->ctr = cpu->r[6];
|
|
/* 026E09DC */ cpu->r[3] = cpu->r[25];
|
|
/* 026E09E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 026E09E4 */ _t53 = cpu->r[25] + 0x00000000u;
|
|
/* 026E09E4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t53);
|
|
/* 026E09E8 */ cpu->r[6] = 0x00000000u;
|
|
/* 026E09EC */ cpu->r[5] = cpu->r[30];
|
|
/* 026E09F0 */ cpu->r[3] = cpu->r[17];
|
|
/* 026E09F4 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 026E09F8 */ _t54 = cpu->r[17] + cpu->r[30];
|
|
/* 026E09F8 */ rbrew_write8(cpu->mem, _t54, (uint8_t)cpu->r[31]);
|
|
L_026E09FC: ; // 0x26e09fc
|
|
/* 026E09FC */ _t55 = cpu->r[18] + 0x00000004u;
|
|
/* 026E09FC */ rbrew_write32(cpu->mem, _t55, cpu->r[22]);
|
|
L_026E0A00: ; // 0x26e0a00
|
|
/* 026E0A00 */ cpu->r[25] = cpu->r[29] + 0x00000080u;
|
|
/* 026E0A00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 026E0A04 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E0A04 */ _t57 = _t56 & 0x00000001u;
|
|
/* 026E0A04 */ if (_t57) goto L_026E0A08; else goto L_026E0A18;
|
|
L_026E0A08: ; // 0x26e0a08
|
|
/* 026E0A08 */ cpu->r[3] = 0x0000003Cu;
|
|
/* 026E0A0C */ Gambit_fn_02801A78(cpu);
|
|
/* 026E0A10 */ cpu->r[25] = cpu->r[3];
|
|
/* 026E0A10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 026E0A14 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E0A14 */ _t59 = _t58 & 0x00000001u;
|
|
/* 026E0A14 */ if (_t59) goto L_026E0A88; else goto L_026E0A18;
|
|
L_026E0A18: ; // 0x26e0a18
|
|
/* 026E0A18 */ cpu->r[30] = cpu->r[25];
|
|
/* 026E0A18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 026E0A1C */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E0A1C */ _t61 = _t60 & 0x00000001u;
|
|
/* 026E0A1C */ if (_t61) goto L_026E0A20; else goto L_026E0A30;
|
|
L_026E0A20: ; // 0x26e0a20
|
|
/* 026E0A20 */ cpu->r[3] = 0x0000003Cu;
|
|
/* 026E0A24 */ Gambit_fn_02801A78(cpu);
|
|
/* 026E0A28 */ cpu->r[30] = cpu->r[3];
|
|
/* 026E0A28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 026E0A2C */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E0A2C */ _t63 = _t62 & 0x00000001u;
|
|
/* 026E0A2C */ if (_t63) goto L_026E0A84; else goto L_026E0A30;
|
|
L_026E0A30: ; // 0x26e0a30
|
|
/* 026E0A30 */ cpu->r[3] = cpu->r[30];
|
|
/* 026E0A30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026E0A34 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E0A34 */ _t65 = _t64 & 0x00000001u;
|
|
/* 026E0A34 */ if (_t65) goto L_026E0A38; else goto L_026E0A5C;
|
|
L_026E0A38: ; // 0x26e0a38
|
|
/* 026E0A38 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 026E0A3C */ Gambit_fn_02801A78(cpu);
|
|
/* 026E0A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026E0A44 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E0A44 */ _t67 = _t66 & 0x00000001u;
|
|
/* 026E0A44 */ if (_t67) goto L_026E0A48; else goto L_026E0A5C;
|
|
L_026E0A48: ; // 0x26e0a48
|
|
/* 026E0A48 */ _t68 = cpu->r[30] + 0x00000000u;
|
|
/* 026E0A48 */ cpu->r[11] = rbrew_read32(cpu->mem, _t68);
|
|
/* 026E0A4C */ _t69 = cpu->r[20] + 0x00007399u;
|
|
/* 026E0A4C */ cpu->r[31] = rbrew_read8(cpu->mem, _t69);
|
|
/* 026E0A50 */ _t70 = cpu->r[30] + 0x00000004u;
|
|
/* 026E0A50 */ rbrew_write32(cpu->mem, _t70, cpu->r[23]);
|
|
/* 026E0A54 */ _t71 = cpu->r[11] + 0x00000000u;
|
|
/* 026E0A54 */ rbrew_write8(cpu->mem, _t71, (uint8_t)cpu->r[31]);
|
|
/* 026E0A58 */ goto L_026E0A84;
|
|
L_026E0A5C: ; // 0x26e0a5c
|
|
/* 026E0A5C */ cpu->r[8] = cpu->r[30] + 0x0000000Cu;
|
|
/* 026E0A60 */ _t72 = cpu->r[3] + 0x00000004u;
|
|
/* 026E0A60 */ rbrew_write32(cpu->mem, _t72, cpu->r[24]);
|
|
/* 026E0A64 */ cpu->r[0] = 0x00000030u;
|
|
/* 026E0A68 */ _t73 = cpu->r[3] + 0x00000000u;
|
|
/* 026E0A68 */ rbrew_write32(cpu->mem, _t73, cpu->r[8]);
|
|
/* 026E0A6C */ _t74 = cpu->r[3] + 0x00000008u;
|
|
/* 026E0A6C */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 026E0A70 */ _t75 = cpu->r[20] + 0x00007399u;
|
|
/* 026E0A70 */ cpu->r[31] = rbrew_read8(cpu->mem, _t75);
|
|
/* 026E0A74 */ _t76 = cpu->r[30] + 0x00000004u;
|
|
/* 026E0A74 */ rbrew_write32(cpu->mem, _t76, cpu->r[23]);
|
|
/* 026E0A78 */ _t77 = cpu->r[30] + 0x00000000u;
|
|
/* 026E0A78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t77);
|
|
/* 026E0A7C */ _t78 = cpu->r[30] + 0x0000003Bu;
|
|
/* 026E0A7C */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[31]);
|
|
/* 026E0A80 */ _t79 = cpu->r[11] + 0x00000000u;
|
|
/* 026E0A80 */ rbrew_write8(cpu->mem, _t79, (uint8_t)cpu->r[31]);
|
|
L_026E0A84: ; // 0x26e0a84
|
|
/* 026E0A84 */ _t80 = cpu->r[25] + 0x00000004u;
|
|
/* 026E0A84 */ rbrew_write32(cpu->mem, _t80, cpu->r[22]);
|
|
L_026E0A88: ; // 0x26e0a88
|
|
/* 026E0A88 */ cpu->r[3] = cpu->r[29] + 0x000000BCu;
|
|
/* 026E0A88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026E0A8C */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E0A8C */ _t82 = _t81 & 0x00000001u;
|
|
/* 026E0A8C */ if (_t82) goto L_026E0A90; else goto L_026E0AA0;
|
|
L_026E0A90: ; // 0x26e0a90
|
|
/* 026E0A90 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 026E0A94 */ Gambit_fn_02801A78(cpu);
|
|
/* 026E0A98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026E0A9C */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E0A9C */ _t84 = _t83 & 0x00000001u;
|
|
/* 026E0A9C */ if (_t84) goto L_026E0AC4; else goto L_026E0AA0;
|
|
L_026E0AA0: ; // 0x26e0aa0
|
|
/* 026E0AA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026E0AA4 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E0AA4 */ _t86 = _t85 & 0x00000001u;
|
|
/* 026E0AA4 */ if (_t86) goto L_026E0AA8; else goto L_026E0AB8;
|
|
L_026E0AA8: ; // 0x26e0aa8
|
|
/* 026E0AA8 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 026E0AAC */ Gambit_fn_02801A78(cpu);
|
|
/* 026E0AB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 026E0AB4 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 026E0AB4 */ _t88 = _t87 & 0x00000001u;
|
|
/* 026E0AB4 */ if (_t88) goto L_026E0AC4; else goto L_026E0AB8;
|
|
L_026E0AB8: ; // 0x26e0ab8
|
|
/* 026E0AB8 */ _t89 = cpu->r[3] + 0x00000004u;
|
|
/* 026E0AB8 */ rbrew_write32(cpu->mem, _t89, cpu->r[21]);
|
|
/* 026E0ABC */ _t90 = cpu->r[3] + 0x00000000u;
|
|
/* 026E0ABC */ rbrew_write32(cpu->mem, _t90, cpu->r[21]);
|
|
/* 026E0AC0 */ _t91 = cpu->r[3] + 0x00000008u;
|
|
/* 026E0AC0 */ rbrew_write32(cpu->mem, _t91, cpu->r[21]);
|
|
L_026E0AC4: ; // 0x26e0ac4
|
|
/* 026E0AC4 */ _t92 = cpu->r[29] + 0x000000C8u;
|
|
/* 026E0AC4 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[21]);
|
|
/* 026E0AC8 */ cpu->r[3] = cpu->r[29] + 0x000000BCu;
|
|
/* 026E0ACC */ _t93 = cpu->r[29] + 0x000000C9u;
|
|
/* 026E0ACC */ rbrew_write8(cpu->mem, _t93, (uint8_t)cpu->r[21]);
|
|
/* 026E0AD0 */ cpu->r[4] = cpu->r[28];
|
|
/* 026E0AD4 */ cpu->r[5] = 0x00000000u;
|
|
/* 026E0AD8 */ _t94 = cpu->r[29] + 0x000000CAu;
|
|
/* 026E0AD8 */ rbrew_write8(cpu->mem, _t94, (uint8_t)cpu->r[26]);
|
|
/* 026E0ADC */ cpu->r[6] = 0x00000004u;
|
|
/* 026E0AE0 */ _t95 = cpu->r[29] + 0x000000CBu;
|
|
/* 026E0AE0 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[27]);
|
|
/* 026E0AE4 */ Gambit_fn_028023CC(cpu);
|
|
/* 026E0AE8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 026E0AEC */ _t96 = cpu->r[29] + 0x000000BCu;
|
|
/* 026E0AEC */ rbrew_write32(cpu->mem, _t96, cpu->r[21]);
|
|
/* 026E0AF0 */ _t97 = cpu->r[12] + 0xFFFF9A58u;
|
|
/* 026E0AF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t97);
|
|
/* 026E0AF4 */ _t98 = cpu->r[29] + 0x000000CCu;
|
|
/* 026E0AF4 */ rbrew_write32(cpu->mem, _t98, cpu->r[12]);
|
|
L_026E0AF8: ; // 0x26e0af8
|
|
/* 026E0AF8 */ cpu->r[3] = cpu->r[29];
|
|
/* 026E0AFC */ /* nop */
|
|
/* 026E0B00 */ _t99 = cpu->r[1] + 0x0000004Cu;
|
|
/* 026E0B00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99);
|
|
/* 026E0B04 */ cpu->lr = cpu->r[0];
|
|
/* 026E0B08 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 026E0B0C */ return;
|
|
}
|
|
|
|
// fn_0206A330 @ 0x206a330
|
|
void Gambit_fn_0206A330(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_0206A330: ; // 0x206a330
|
|
/* 0206A330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206A334 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A334 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0206A334 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206A334 */ goto L_0206A338;
|
|
L_0206A338: ; // 0x206a338
|
|
/* 0206A338 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206A338 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206A33C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A33C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0206A33C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206A33C */ goto L_0206A340;
|
|
L_0206A340: ; // 0x206a340
|
|
/* 0206A340 */ 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_0206A344 @ 0x206a344
|
|
void Gambit_fn_0206A344(CPUState* cpu) {
|
|
L_0206A344: ; // 0x206a344
|
|
/* 0206A344 */ return;
|
|
}
|
|
|
|
// fn_0206A348 @ 0x206a348
|
|
void Gambit_fn_0206A348(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206A348: ; // 0x206a348
|
|
/* 0206A348 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0206A348 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206A34C */ return;
|
|
}
|
|
|
|
// fn_0206A350 @ 0x206a350
|
|
void Gambit_fn_0206A350(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206A350: ; // 0x206a350
|
|
/* 0206A350 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0206A350 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206A354 */ return;
|
|
}
|
|
|
|
// fn_0206A358 @ 0x206a358
|
|
void Gambit_fn_0206A358(CPUState* cpu) {
|
|
L_0206A358: ; // 0x206a358
|
|
/* 0206A358 */ return;
|
|
}
|
|
|
|
// fn_0206A35C @ 0x206a35c
|
|
void Gambit_fn_0206A35C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206A35C: ; // 0x206a35c
|
|
/* 0206A35C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0206A35C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206A360 */ return;
|
|
}
|
|
|
|
// fn_0206A364 @ 0x206a364
|
|
void Gambit_fn_0206A364(CPUState* cpu) {
|
|
L_0206A364: ; // 0x206a364
|
|
/* 0206A364 */ return;
|
|
}
|
|
|
|
// fn_0206A368 @ 0x206a368
|
|
void Gambit_fn_0206A368(CPUState* cpu) {
|
|
L_0206A368: ; // 0x206a368
|
|
/* 0206A368 */ return;
|
|
}
|
|
|
|
// fn_0206A36C @ 0x206a36c
|
|
void Gambit_fn_0206A36C(CPUState* cpu) {
|
|
L_0206A36C: ; // 0x206a36c
|
|
/* 0206A36C */ return;
|
|
}
|
|
|
|
// fn_0206A370 @ 0x206a370
|
|
void Gambit_fn_0206A370(CPUState* cpu) {
|
|
L_0206A370: ; // 0x206a370
|
|
/* 0206A370 */ return;
|
|
}
|
|
|
|
// fn_0206A374 @ 0x206a374
|
|
void Gambit_fn_0206A374(CPUState* cpu) {
|
|
L_0206A374: ; // 0x206a374
|
|
/* 0206A374 */ return;
|
|
}
|
|
|
|
// fn_0206A378 @ 0x206a378
|
|
void Gambit_fn_0206A378(CPUState* cpu) {
|
|
L_0206A378: ; // 0x206a378
|
|
/* 0206A378 */ return;
|
|
}
|
|
|
|
// fn_0206A37C @ 0x206a37c
|
|
void Gambit_fn_0206A37C(CPUState* cpu) {
|
|
L_0206A37C: ; // 0x206a37c
|
|
/* 0206A37C */ cpu->r[3] = 0x00000001u;
|
|
/* 0206A380 */ return;
|
|
}
|
|
|
|
// fn_0206A384 @ 0x206a384
|
|
void Gambit_fn_0206A384(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0206A384: ; // 0x206a384
|
|
/* 0206A384 */ cpu->r[0] = cpu->lr;
|
|
/* 0206A388 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0206A388 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0206A38C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0206A38C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0206A38C */ cpu->r[1] = _t1;
|
|
/* 0206A390 */ _t2 = cpu->r[3] + 0x00000030u;
|
|
/* 0206A390 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206A394 */ _t3 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0206A394 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206A398 */ _t4 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0206A398 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206A3A0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A3A0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206A3A0 */ if (_t6) goto L_0206A3B0; else goto L_0206A3A4;
|
|
L_0206A3A4: ; // 0x206a3a4
|
|
/* 0206A3A4 */ _t7 = cpu->r[3] + 0x00000024u;
|
|
/* 0206A3A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206A3A8 */ Gambit_fn_0206A384(cpu);
|
|
/* 0206A3AC */ goto L_0206A3B8;
|
|
L_0206A3B0: ; // 0x206a3b0
|
|
/* 0206A3B0 */ cpu->r[3] = cpu->r[3] + 0x00000110u;
|
|
/* 0206A3B4 */ Gambit_fn_026D8B90(cpu);
|
|
L_0206A3B8: ; // 0x206a3b8
|
|
/* 0206A3B8 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A3B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206A3BC */ cpu->lr = cpu->r[0];
|
|
/* 0206A3C0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0206A3C4 */ return;
|
|
}
|
|
|
|
// fn_0206A38C @ 0x206a38c
|
|
void Gambit_fn_0206A38C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0206A38C: ; // 0x206a38c
|
|
/* 0206A38C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0206A38C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A38C */ cpu->r[1] = _t0;
|
|
/* 0206A390 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0206A390 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206A394 */ _t2 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0206A394 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206A398 */ _t3 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0206A398 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206A39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206A3A0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A3A0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206A3A0 */ if (_t5) goto L_0206A3B0; else goto L_0206A3A4;
|
|
L_0206A3A4: ; // 0x206a3a4
|
|
/* 0206A3A4 */ _t6 = cpu->r[3] + 0x00000024u;
|
|
/* 0206A3A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206A3A8 */ Gambit_fn_0206A384(cpu);
|
|
/* 0206A3AC */ goto L_0206A3B8;
|
|
L_0206A3B0: ; // 0x206a3b0
|
|
/* 0206A3B0 */ cpu->r[3] = cpu->r[3] + 0x00000110u;
|
|
/* 0206A3B4 */ Gambit_fn_026D8B90(cpu);
|
|
L_0206A3B8: ; // 0x206a3b8
|
|
/* 0206A3B8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A3B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206A3BC */ cpu->lr = cpu->r[0];
|
|
/* 0206A3C0 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0206A3C4 */ return;
|
|
}
|
|
|
|
// fn_0206A3C8 @ 0x206a3c8
|
|
void Gambit_fn_0206A3C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0206A3C8: ; // 0x206a3c8
|
|
/* 0206A3C8 */ cpu->r[0] = cpu->lr;
|
|
/* 0206A3CC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0206A3CC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0206A3D0 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0206A3D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0206A3D0 */ cpu->r[1] = _t1;
|
|
/* 0206A3D4 */ _t2 = cpu->r[3] + 0x00000030u;
|
|
/* 0206A3D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206A3D8 */ _t3 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0206A3D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206A3DC */ _t4 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0206A3DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A3E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206A3E4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A3E4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206A3E4 */ if (_t6) goto L_0206A3F4; else goto L_0206A3E8;
|
|
L_0206A3E8: ; // 0x206a3e8
|
|
/* 0206A3E8 */ _t7 = cpu->r[3] + 0x00000024u;
|
|
/* 0206A3E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206A3EC */ Gambit_fn_0206A3C8(cpu);
|
|
/* 0206A3F0 */ goto L_0206A3FC;
|
|
L_0206A3F4: ; // 0x206a3f4
|
|
/* 0206A3F4 */ cpu->r[3] = cpu->r[3] + 0x00000110u;
|
|
/* 0206A3F8 */ Gambit_fn_026D8AF0(cpu);
|
|
L_0206A3FC: ; // 0x206a3fc
|
|
/* 0206A3FC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A3FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206A400 */ cpu->lr = cpu->r[0];
|
|
/* 0206A404 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0206A408 */ return;
|
|
}
|
|
|
|
// fn_0206A3D0 @ 0x206a3d0
|
|
void Gambit_fn_0206A3D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0206A3D0: ; // 0x206a3d0
|
|
/* 0206A3D0 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0206A3D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A3D0 */ cpu->r[1] = _t0;
|
|
/* 0206A3D4 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0206A3D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206A3D8 */ _t2 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0206A3D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206A3DC */ _t3 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0206A3DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206A3E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206A3E4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A3E4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206A3E4 */ if (_t5) goto L_0206A3F4; else goto L_0206A3E8;
|
|
L_0206A3E8: ; // 0x206a3e8
|
|
/* 0206A3E8 */ _t6 = cpu->r[3] + 0x00000024u;
|
|
/* 0206A3E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206A3EC */ Gambit_fn_0206A3C8(cpu);
|
|
/* 0206A3F0 */ goto L_0206A3FC;
|
|
L_0206A3F4: ; // 0x206a3f4
|
|
/* 0206A3F4 */ cpu->r[3] = cpu->r[3] + 0x00000110u;
|
|
/* 0206A3F8 */ Gambit_fn_026D8AF0(cpu);
|
|
L_0206A3FC: ; // 0x206a3fc
|
|
/* 0206A3FC */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A3FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206A400 */ cpu->lr = cpu->r[0];
|
|
/* 0206A404 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0206A408 */ return;
|
|
}
|
|
|
|
// fn_0206A40C @ 0x206a40c
|
|
void Gambit_fn_0206A40C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0206A40C: ; // 0x206a40c
|
|
/* 0206A40C */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0206A40C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206A410 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0206A410 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206A414 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A418 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206A41C @ 0x206a41c
|
|
void Gambit_fn_0206A41C(CPUState* cpu) {
|
|
L_0206A41C: ; // 0x206a41c
|
|
/* 0206A41C */ return;
|
|
}
|
|
|
|
// fn_0206A420 @ 0x206a420
|
|
void Gambit_fn_0206A420(CPUState* cpu) {
|
|
L_0206A420: ; // 0x206a420
|
|
/* 0206A420 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206A424 */ return;
|
|
}
|
|
|
|
// fn_0206A428 @ 0x206a428
|
|
void Gambit_fn_0206A428(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206A428: ; // 0x206a428
|
|
/* 0206A428 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0206A42C */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 0206A42C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206A42C */ cpu->r[9] = _t0;
|
|
/* 0206A430 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0206A434 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206A438 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 0206A43C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A43C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0206A43C */ if (_t2) goto L_0206A440; else goto L_0206A454;
|
|
L_0206A440: ; // 0x206a440
|
|
/* 0206A440 */ cpu->r[7] = 0x10000000u;
|
|
/* 0206A444 */ cpu->r[0] = 0x00000001u;
|
|
/* 0206A448 */ cpu->r[7] = cpu->r[7] + 0x00007558u;
|
|
/* 0206A44C */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 0206A44C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206A450 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0206A450 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_0206A454: ; // 0x206a454
|
|
/* 0206A454 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0206A458 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A458 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206A458 */ if (_t6) goto L_0206A45C; else goto L_0206A464;
|
|
L_0206A45C: ; // 0x206a45c
|
|
/* 0206A45C */ cpu->r[3] = 0x00000001u;
|
|
/* 0206A460 */ return;
|
|
L_0206A464: ; // 0x206a464
|
|
/* 0206A464 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0206A468 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 0206A468 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206A468 */ cpu->r[7] = _t7;
|
|
/* 0206A46C */ cpu->r[11] = 0x101D0000u;
|
|
/* 0206A470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0206A474 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 0206A478 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A478 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206A478 */ if (_t9) goto L_0206A47C; else goto L_0206A490;
|
|
L_0206A47C: ; // 0x206a47c
|
|
/* 0206A47C */ cpu->r[0] = 0x10000000u;
|
|
/* 0206A480 */ cpu->r[9] = 0x00000001u;
|
|
/* 0206A484 */ cpu->r[0] = cpu->r[0] + 0x00007530u;
|
|
/* 0206A488 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 0206A488 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0206A48C */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0206A48C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0206A490: ; // 0x206a490
|
|
/* 0206A490 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0206A494 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 0206A498 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 0206A49C */ return;
|
|
}
|
|
|
|
// fn_0206A4A0 @ 0x206a4a0
|
|
void Gambit_fn_0206A4A0(CPUState* cpu) {
|
|
L_0206A4A0: ; // 0x206a4a0
|
|
/* 0206A4A0 */ return;
|
|
}
|
|
|
|
// fn_0206A4A4 @ 0x206a4a4
|
|
void Gambit_fn_0206A4A4(CPUState* cpu) {
|
|
L_0206A4A4: ; // 0x206a4a4
|
|
/* 0206A4A4 */ return;
|
|
}
|
|
|
|
// fn_0206A4A8 @ 0x206a4a8
|
|
void Gambit_fn_0206A4A8(CPUState* cpu) {
|
|
L_0206A4A8: ; // 0x206a4a8
|
|
/* 0206A4A8 */ return;
|
|
}
|
|
|
|
// fn_0206A4AC @ 0x206a4ac
|
|
void Gambit_fn_0206A4AC(CPUState* cpu) {
|
|
L_0206A4AC: ; // 0x206a4ac
|
|
/* 0206A4AC */ return;
|
|
}
|
|
|
|
// fn_0206A4B0 @ 0x206a4b0
|
|
void Gambit_fn_0206A4B0(CPUState* cpu) {
|
|
L_0206A4B0: ; // 0x206a4b0
|
|
/* 0206A4B0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206A4B4 */ return;
|
|
}
|
|
|
|
// fn_0206A4B8 @ 0x206a4b8
|
|
void Gambit_fn_0206A4B8(CPUState* cpu) {
|
|
L_0206A4B8: ; // 0x206a4b8
|
|
/* 0206A4B8 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206A4BC */ return;
|
|
}
|
|
|
|
// fn_0206A4C0 @ 0x206a4c0
|
|
void Gambit_fn_0206A4C0(CPUState* cpu) {
|
|
L_0206A4C0: ; // 0x206a4c0
|
|
/* 0206A4C0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206A4C4 */ return;
|
|
}
|
|
|
|
// fn_0206A4C8 @ 0x206a4c8
|
|
void Gambit_fn_0206A4C8(CPUState* cpu) {
|
|
L_0206A4C8: ; // 0x206a4c8
|
|
/* 0206A4C8 */ return;
|
|
}
|
|
|
|
// fn_0206A4CC @ 0x206a4cc
|
|
void Gambit_fn_0206A4CC(CPUState* cpu) {
|
|
L_0206A4CC: ; // 0x206a4cc
|
|
/* 0206A4CC */ return;
|
|
}
|
|
|
|
// fn_0206A4D0 @ 0x206a4d0
|
|
void Gambit_fn_0206A4D0(CPUState* cpu) {
|
|
L_0206A4D0: ; // 0x206a4d0
|
|
/* 0206A4D0 */ return;
|
|
}
|
|
|
|
// fn_0206A4D4 @ 0x206a4d4
|
|
void Gambit_fn_0206A4D4(CPUState* cpu) {
|
|
L_0206A4D4: ; // 0x206a4d4
|
|
/* 0206A4D4 */ return;
|
|
}
|
|
|
|
// fn_0206A4D8 @ 0x206a4d8
|
|
void Gambit_fn_0206A4D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206A4D8: ; // 0x206a4d8
|
|
/* 0206A4D8 */ cpu->r[0] = cpu->lr;
|
|
/* 0206A4DC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A4DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A4DC */ cpu->r[1] = _t0;
|
|
/* 0206A4E0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A4E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A4E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A4E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A4E8 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206A4E8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206A4EC */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A4F0 */ /* nop */
|
|
/* 0206A4F4 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206A4F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A4FC */ Gambit_fn_0206AA1C(cpu);
|
|
/* 0206A500 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A500 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A504 */ cpu->lr = cpu->r[0];
|
|
/* 0206A508 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A508 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A50C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A510 */ return;
|
|
}
|
|
|
|
// fn_0206A4DC @ 0x206a4dc
|
|
void Gambit_fn_0206A4DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206A4DC: ; // 0x206a4dc
|
|
/* 0206A4DC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A4DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A4DC */ cpu->r[1] = _t0;
|
|
/* 0206A4E0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A4E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A4E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A4E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A4E8 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206A4E8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206A4EC */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A4F0 */ /* nop */
|
|
/* 0206A4F4 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206A4F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A4FC */ Gambit_fn_0206AA1C(cpu);
|
|
/* 0206A500 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A500 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A504 */ cpu->lr = cpu->r[0];
|
|
/* 0206A508 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A508 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A50C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A510 */ return;
|
|
}
|
|
|
|
// fn_0206A514 @ 0x206a514
|
|
void Gambit_fn_0206A514(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206A514: ; // 0x206a514
|
|
/* 0206A514 */ cpu->r[0] = cpu->lr;
|
|
/* 0206A518 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A518 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A518 */ cpu->r[1] = _t0;
|
|
/* 0206A51C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A51C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A520 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A520 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A524 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206A524 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206A528 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A52C */ /* nop */
|
|
/* 0206A530 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206A534 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A538 */ Gambit_fn_0206AC9C(cpu);
|
|
/* 0206A53C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A53C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A540 */ cpu->lr = cpu->r[0];
|
|
/* 0206A544 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A544 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A548 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A54C */ return;
|
|
}
|
|
|
|
// fn_0206A518 @ 0x206a518
|
|
void Gambit_fn_0206A518(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206A518: ; // 0x206a518
|
|
/* 0206A518 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A518 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A518 */ cpu->r[1] = _t0;
|
|
/* 0206A51C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A51C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A520 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A520 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A524 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206A524 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206A528 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A52C */ /* nop */
|
|
/* 0206A530 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206A534 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A538 */ Gambit_fn_0206AC9C(cpu);
|
|
/* 0206A53C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A53C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A540 */ cpu->lr = cpu->r[0];
|
|
/* 0206A544 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A544 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A548 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A54C */ return;
|
|
}
|
|
|
|
// fn_0206A550 @ 0x206a550
|
|
void Gambit_fn_0206A550(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206A550: ; // 0x206a550
|
|
/* 0206A550 */ cpu->r[0] = cpu->lr;
|
|
/* 0206A554 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A554 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A554 */ cpu->r[1] = _t0;
|
|
/* 0206A558 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A558 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A55C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A55C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A560 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206A560 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206A564 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A568 */ /* nop */
|
|
/* 0206A56C */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206A570 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A574 */ Gambit_fn_0206AF1C(cpu);
|
|
/* 0206A578 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A578 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A57C */ cpu->lr = cpu->r[0];
|
|
/* 0206A580 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A580 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A584 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A588 */ return;
|
|
}
|
|
|
|
// fn_0206A554 @ 0x206a554
|
|
void Gambit_fn_0206A554(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206A554: ; // 0x206a554
|
|
/* 0206A554 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A554 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A554 */ cpu->r[1] = _t0;
|
|
/* 0206A558 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A558 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A55C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A55C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A560 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206A560 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206A564 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A568 */ /* nop */
|
|
/* 0206A56C */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206A570 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A574 */ Gambit_fn_0206AF1C(cpu);
|
|
/* 0206A578 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A578 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A57C */ cpu->lr = cpu->r[0];
|
|
/* 0206A580 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A580 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A584 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A588 */ return;
|
|
}
|
|
|
|
// fn_0206A58C @ 0x206a58c
|
|
void Gambit_fn_0206A58C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206A58C: ; // 0x206a58c
|
|
/* 0206A58C */ cpu->r[0] = cpu->lr;
|
|
/* 0206A590 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A590 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A590 */ cpu->r[1] = _t0;
|
|
/* 0206A594 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A594 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A598 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A598 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A59C */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206A59C */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206A5A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A5A4 */ /* nop */
|
|
/* 0206A5A8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206A5AC */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A5B0 */ Gambit_fn_0206B19C(cpu);
|
|
/* 0206A5B4 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A5B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A5B8 */ cpu->lr = cpu->r[0];
|
|
/* 0206A5BC */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A5BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A5C0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A5C4 */ return;
|
|
}
|
|
|
|
// fn_0206A590 @ 0x206a590
|
|
void Gambit_fn_0206A590(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206A590: ; // 0x206a590
|
|
/* 0206A590 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A590 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A590 */ cpu->r[1] = _t0;
|
|
/* 0206A594 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A594 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A598 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A598 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A59C */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206A59C */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206A5A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A5A4 */ /* nop */
|
|
/* 0206A5A8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206A5AC */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A5B0 */ Gambit_fn_0206B19C(cpu);
|
|
/* 0206A5B4 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A5B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A5B8 */ cpu->lr = cpu->r[0];
|
|
/* 0206A5BC */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A5BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A5C0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A5C4 */ return;
|
|
}
|
|
|
|
// fn_0206A5C8 @ 0x206a5c8
|
|
void Gambit_fn_0206A5C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206A5C8: ; // 0x206a5c8
|
|
/* 0206A5C8 */ cpu->r[0] = cpu->lr;
|
|
/* 0206A5CC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A5CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A5CC */ cpu->r[1] = _t0;
|
|
/* 0206A5D0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A5D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A5D4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A5D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A5D8 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206A5D8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206A5DC */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A5E0 */ /* nop */
|
|
/* 0206A5E4 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206A5E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A5EC */ Gambit_fn_0206B41C(cpu);
|
|
/* 0206A5F0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A5F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A5F4 */ cpu->lr = cpu->r[0];
|
|
/* 0206A5F8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A5F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A5FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A600 */ return;
|
|
}
|
|
|
|
// fn_0206A5CC @ 0x206a5cc
|
|
void Gambit_fn_0206A5CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206A5CC: ; // 0x206a5cc
|
|
/* 0206A5CC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A5CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A5CC */ cpu->r[1] = _t0;
|
|
/* 0206A5D0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A5D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A5D4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A5D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A5D8 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206A5D8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206A5DC */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A5E0 */ /* nop */
|
|
/* 0206A5E4 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206A5E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A5EC */ Gambit_fn_0206B41C(cpu);
|
|
/* 0206A5F0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A5F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A5F4 */ cpu->lr = cpu->r[0];
|
|
/* 0206A5F8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A5F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A5FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A600 */ return;
|
|
}
|
|
|
|
// fn_0206A604 @ 0x206a604
|
|
void Gambit_fn_0206A604(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206A604: ; // 0x206a604
|
|
/* 0206A604 */ cpu->r[0] = cpu->lr;
|
|
/* 0206A608 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A608 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A608 */ cpu->r[1] = _t0;
|
|
/* 0206A60C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A60C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A610 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A610 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A614 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206A614 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206A618 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A61C */ /* nop */
|
|
/* 0206A620 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206A624 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A628 */ Gambit_fn_0206B69C(cpu);
|
|
/* 0206A62C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A62C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A630 */ cpu->lr = cpu->r[0];
|
|
/* 0206A634 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A634 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A638 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A63C */ return;
|
|
}
|
|
|
|
// fn_0206A608 @ 0x206a608
|
|
void Gambit_fn_0206A608(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206A608: ; // 0x206a608
|
|
/* 0206A608 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A608 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A608 */ cpu->r[1] = _t0;
|
|
/* 0206A60C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A60C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A610 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A610 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A614 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206A614 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206A618 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A61C */ /* nop */
|
|
/* 0206A620 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206A624 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A628 */ Gambit_fn_0206B69C(cpu);
|
|
/* 0206A62C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A62C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A630 */ cpu->lr = cpu->r[0];
|
|
/* 0206A634 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A634 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A638 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A63C */ return;
|
|
}
|
|
|
|
// fn_0206A640 @ 0x206a640
|
|
void Gambit_fn_0206A640(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206A640: ; // 0x206a640
|
|
/* 0206A640 */ cpu->r[0] = cpu->lr;
|
|
/* 0206A644 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A644 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A644 */ cpu->r[1] = _t0;
|
|
/* 0206A648 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A648 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A64C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A64C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A650 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206A650 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206A654 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A658 */ /* nop */
|
|
/* 0206A65C */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206A660 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A664 */ Gambit_fn_0206B91C(cpu);
|
|
/* 0206A668 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A668 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A66C */ cpu->lr = cpu->r[0];
|
|
/* 0206A670 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A670 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A674 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A678 */ return;
|
|
}
|
|
|
|
// fn_0206A644 @ 0x206a644
|
|
void Gambit_fn_0206A644(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206A644: ; // 0x206a644
|
|
/* 0206A644 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206A644 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A644 */ cpu->r[1] = _t0;
|
|
/* 0206A648 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A648 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206A64C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A64C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206A650 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206A650 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206A654 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A658 */ /* nop */
|
|
/* 0206A65C */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206A660 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A664 */ Gambit_fn_0206B91C(cpu);
|
|
/* 0206A668 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206A668 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A66C */ cpu->lr = cpu->r[0];
|
|
/* 0206A670 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206A670 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A674 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206A678 */ return;
|
|
}
|
|
|
|
// fn_0206A67C @ 0x206a67c
|
|
void Gambit_fn_0206A67C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0206A67C: ; // 0x206a67c
|
|
/* 0206A67C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0206A67C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A67C */ cpu->r[1] = _t0;
|
|
/* 0206A680 */ /* nop */
|
|
/* 0206A684 */ cpu->r[0] = cpu->lr;
|
|
/* 0206A688 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0206A688 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0206A68C */ cpu->r[29] = cpu->r[8];
|
|
/* 0206A690 */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 0206A690 */ cpu->r[8] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206A694 */ _t3 = cpu->r[8] + 0x0000005Cu;
|
|
/* 0206A694 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206A698 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A69C */ cpu->r[26] = cpu->r[4];
|
|
/* 0206A6A0 */ cpu->r[27] = cpu->r[5];
|
|
/* 0206A6A4 */ cpu->r[31] = cpu->r[6];
|
|
/* 0206A6A8 */ cpu->r[28] = cpu->r[7];
|
|
/* 0206A6AC */ cpu->r[30] = cpu->r[3];
|
|
/* 0206A6B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A6B4 */ _t4 = cpu->r[27] + 0x00000094u;
|
|
/* 0206A6B4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A6B8 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206A6BC */ cpu->r[8] = cpu->r[31];
|
|
/* 0206A6C0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206A6C4 */ cpu->r[7] = cpu->r[30];
|
|
/* 0206A6C8 */ cpu->r[5] = cpu->r[26];
|
|
/* 0206A6CC */ Gambit_fn_020C30B0(cpu);
|
|
/* 0206A6D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A6D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0206A6D8 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A6D8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A6DC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A6DC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206A6DC */ if (_t7) goto L_0206A6E4; else goto L_0206A6E0;
|
|
L_0206A6E0: ; // 0x206a6e0
|
|
/* 0206A6E0 */ _t8 = cpu->r[31] + 0x00000130u;
|
|
/* 0206A6E0 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
L_0206A6E4: ; // 0x206a6e4
|
|
/* 0206A6E4 */ _t9 = cpu->r[6] + 0x0000003Cu;
|
|
/* 0206A6E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206A6E8 */ cpu->ctr = cpu->r[7];
|
|
/* 0206A6EC */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A6F0 */ cpu->r[4] = cpu->r[27];
|
|
/* 0206A6F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A6F8 */ _t10 = cpu->r[30] + 0x00000000u;
|
|
/* 0206A6F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206A6FC */ _t11 = cpu->r[9] + 0x0000006Cu;
|
|
/* 0206A6FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206A700 */ cpu->ctr = cpu->r[10];
|
|
/* 0206A704 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206A708 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A70C */ cpu->r[4] = cpu->r[31];
|
|
/* 0206A710 */ Gambit_fn_020DABF8(cpu);
|
|
/* 0206A714 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0206A718 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A718 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206A718 */ if (_t13) goto L_0206A730; else goto L_0206A71C;
|
|
L_0206A71C: ; // 0x206a71c
|
|
/* 0206A71C */ cpu->r[3] = cpu->r[29];
|
|
/* 0206A720 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206A724 */ Gambit_fn_027EAD44(cpu);
|
|
/* 0206A728 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A72C */ goto L_0206A750;
|
|
L_0206A730: ; // 0x206a730
|
|
/* 0206A730 */ _t14 = cpu->r[30] + 0x00000000u;
|
|
/* 0206A730 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206A734 */ _t15 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0206A734 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206A738 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A73C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206A740 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A744 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206A748 */ Gambit_fn_027EAD58(cpu);
|
|
/* 0206A74C */ cpu->r[3] = cpu->r[31];
|
|
L_0206A750: ; // 0x206a750
|
|
/* 0206A750 */ /* nop */
|
|
/* 0206A754 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 0206A754 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206A758 */ cpu->lr = cpu->r[0];
|
|
/* 0206A75C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0206A760 */ return;
|
|
}
|
|
|
|
// fn_0206A764 @ 0x206a764
|
|
void Gambit_fn_0206A764(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0206A764: ; // 0x206a764
|
|
/* 0206A764 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0206A764 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A764 */ cpu->r[1] = _t0;
|
|
/* 0206A768 */ /* nop */
|
|
/* 0206A76C */ cpu->r[0] = cpu->lr;
|
|
/* 0206A770 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0206A770 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0206A774 */ cpu->r[29] = cpu->r[8];
|
|
/* 0206A778 */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 0206A778 */ cpu->r[8] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206A77C */ _t3 = cpu->r[8] + 0x0000005Cu;
|
|
/* 0206A77C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206A780 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A784 */ cpu->r[26] = cpu->r[4];
|
|
/* 0206A788 */ cpu->r[27] = cpu->r[5];
|
|
/* 0206A78C */ cpu->r[31] = cpu->r[6];
|
|
/* 0206A790 */ cpu->r[28] = cpu->r[7];
|
|
/* 0206A794 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206A798 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A79C */ _t4 = cpu->r[27] + 0x00000094u;
|
|
/* 0206A79C */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A7A0 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206A7A4 */ cpu->r[8] = cpu->r[31];
|
|
/* 0206A7A8 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206A7AC */ cpu->r[7] = cpu->r[30];
|
|
/* 0206A7B0 */ cpu->r[5] = cpu->r[26];
|
|
/* 0206A7B4 */ Gambit_fn_020BD100(cpu);
|
|
/* 0206A7B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A7BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0206A7C0 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A7C0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A7C4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A7C4 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206A7C4 */ if (_t7) goto L_0206A7CC; else goto L_0206A7C8;
|
|
L_0206A7C8: ; // 0x206a7c8
|
|
/* 0206A7C8 */ _t8 = cpu->r[31] + 0x00000130u;
|
|
/* 0206A7C8 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
L_0206A7CC: ; // 0x206a7cc
|
|
/* 0206A7CC */ _t9 = cpu->r[6] + 0x0000003Cu;
|
|
/* 0206A7CC */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206A7D0 */ cpu->ctr = cpu->r[7];
|
|
/* 0206A7D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A7D8 */ cpu->r[4] = cpu->r[27];
|
|
/* 0206A7DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A7E0 */ _t10 = cpu->r[30] + 0x00000000u;
|
|
/* 0206A7E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206A7E4 */ _t11 = cpu->r[9] + 0x0000006Cu;
|
|
/* 0206A7E4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206A7E8 */ cpu->ctr = cpu->r[10];
|
|
/* 0206A7EC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206A7F0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A7F4 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206A7F8 */ Gambit_fn_020DABF8(cpu);
|
|
/* 0206A7FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0206A800 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A800 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206A800 */ if (_t13) goto L_0206A818; else goto L_0206A804;
|
|
L_0206A804: ; // 0x206a804
|
|
/* 0206A804 */ cpu->r[3] = cpu->r[29];
|
|
/* 0206A808 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206A80C */ Gambit_fn_027EAD44(cpu);
|
|
/* 0206A810 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A814 */ goto L_0206A838;
|
|
L_0206A818: ; // 0x206a818
|
|
/* 0206A818 */ _t14 = cpu->r[30] + 0x00000000u;
|
|
/* 0206A818 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206A81C */ _t15 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0206A81C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206A820 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A824 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206A828 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A82C */ cpu->r[4] = cpu->r[31];
|
|
/* 0206A830 */ Gambit_fn_027EAD58(cpu);
|
|
/* 0206A834 */ cpu->r[3] = cpu->r[31];
|
|
L_0206A838: ; // 0x206a838
|
|
/* 0206A838 */ /* nop */
|
|
/* 0206A83C */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 0206A83C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206A840 */ cpu->lr = cpu->r[0];
|
|
/* 0206A844 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0206A848 */ return;
|
|
}
|
|
|
|
// fn_0206A84C @ 0x206a84c
|
|
void Gambit_fn_0206A84C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0206A84C: ; // 0x206a84c
|
|
/* 0206A84C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0206A84C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A84C */ cpu->r[1] = _t0;
|
|
/* 0206A850 */ /* nop */
|
|
/* 0206A854 */ cpu->r[0] = cpu->lr;
|
|
/* 0206A858 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0206A858 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0206A85C */ cpu->r[29] = cpu->r[8];
|
|
/* 0206A860 */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 0206A860 */ cpu->r[8] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206A864 */ _t3 = cpu->r[8] + 0x0000005Cu;
|
|
/* 0206A864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206A868 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A86C */ cpu->r[26] = cpu->r[4];
|
|
/* 0206A870 */ cpu->r[27] = cpu->r[5];
|
|
/* 0206A874 */ cpu->r[31] = cpu->r[6];
|
|
/* 0206A878 */ cpu->r[28] = cpu->r[7];
|
|
/* 0206A87C */ cpu->r[30] = cpu->r[3];
|
|
/* 0206A880 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A884 */ _t4 = cpu->r[27] + 0x00000094u;
|
|
/* 0206A884 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A888 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206A88C */ cpu->r[8] = cpu->r[31];
|
|
/* 0206A890 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206A894 */ cpu->r[7] = cpu->r[30];
|
|
/* 0206A898 */ cpu->r[5] = cpu->r[26];
|
|
/* 0206A89C */ Gambit_fn_020C0278(cpu);
|
|
/* 0206A8A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A8A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0206A8A8 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A8A8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A8AC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A8AC */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206A8AC */ if (_t7) goto L_0206A8B4; else goto L_0206A8B0;
|
|
L_0206A8B0: ; // 0x206a8b0
|
|
/* 0206A8B0 */ _t8 = cpu->r[31] + 0x00000130u;
|
|
/* 0206A8B0 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
L_0206A8B4: ; // 0x206a8b4
|
|
/* 0206A8B4 */ _t9 = cpu->r[6] + 0x0000003Cu;
|
|
/* 0206A8B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206A8B8 */ cpu->ctr = cpu->r[7];
|
|
/* 0206A8BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A8C0 */ cpu->r[4] = cpu->r[27];
|
|
/* 0206A8C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A8C8 */ _t10 = cpu->r[30] + 0x00000000u;
|
|
/* 0206A8C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206A8CC */ _t11 = cpu->r[9] + 0x0000006Cu;
|
|
/* 0206A8CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206A8D0 */ cpu->ctr = cpu->r[10];
|
|
/* 0206A8D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206A8D8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A8DC */ cpu->r[4] = cpu->r[31];
|
|
/* 0206A8E0 */ Gambit_fn_020DABF8(cpu);
|
|
/* 0206A8E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0206A8E8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A8E8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206A8E8 */ if (_t13) goto L_0206A900; else goto L_0206A8EC;
|
|
L_0206A8EC: ; // 0x206a8ec
|
|
/* 0206A8EC */ cpu->r[3] = cpu->r[29];
|
|
/* 0206A8F0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206A8F4 */ Gambit_fn_027EAD44(cpu);
|
|
/* 0206A8F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A8FC */ goto L_0206A920;
|
|
L_0206A900: ; // 0x206a900
|
|
/* 0206A900 */ _t14 = cpu->r[30] + 0x00000000u;
|
|
/* 0206A900 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206A904 */ _t15 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0206A904 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206A908 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A90C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206A910 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A914 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206A918 */ Gambit_fn_027EAD58(cpu);
|
|
/* 0206A91C */ cpu->r[3] = cpu->r[31];
|
|
L_0206A920: ; // 0x206a920
|
|
/* 0206A920 */ /* nop */
|
|
/* 0206A924 */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 0206A924 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206A928 */ cpu->lr = cpu->r[0];
|
|
/* 0206A92C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0206A930 */ return;
|
|
}
|
|
|
|
// fn_0206A934 @ 0x206a934
|
|
void Gambit_fn_0206A934(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0206A934: ; // 0x206a934
|
|
/* 0206A934 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0206A934 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206A934 */ cpu->r[1] = _t0;
|
|
/* 0206A938 */ /* nop */
|
|
/* 0206A93C */ cpu->r[0] = cpu->lr;
|
|
/* 0206A940 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0206A940 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0206A944 */ cpu->r[29] = cpu->r[8];
|
|
/* 0206A948 */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 0206A948 */ cpu->r[8] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206A94C */ _t3 = cpu->r[8] + 0x0000005Cu;
|
|
/* 0206A94C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206A950 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A954 */ cpu->r[26] = cpu->r[4];
|
|
/* 0206A958 */ cpu->r[27] = cpu->r[5];
|
|
/* 0206A95C */ cpu->r[31] = cpu->r[6];
|
|
/* 0206A960 */ cpu->r[28] = cpu->r[7];
|
|
/* 0206A964 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206A968 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A96C */ _t4 = cpu->r[27] + 0x00000094u;
|
|
/* 0206A96C */ cpu->r[6] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206A970 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206A974 */ cpu->r[8] = cpu->r[31];
|
|
/* 0206A978 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206A97C */ cpu->r[7] = cpu->r[30];
|
|
/* 0206A980 */ cpu->r[5] = cpu->r[26];
|
|
/* 0206A984 */ Gambit_fn_020C4504(cpu);
|
|
/* 0206A988 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206A98C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0206A990 */ _t5 = cpu->r[31] + 0x00000000u;
|
|
/* 0206A990 */ cpu->r[6] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206A994 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A994 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206A994 */ if (_t7) goto L_0206A99C; else goto L_0206A998;
|
|
L_0206A998: ; // 0x206a998
|
|
/* 0206A998 */ _t8 = cpu->r[31] + 0x00000130u;
|
|
/* 0206A998 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
L_0206A99C: ; // 0x206a99c
|
|
/* 0206A99C */ _t9 = cpu->r[6] + 0x0000003Cu;
|
|
/* 0206A99C */ cpu->r[7] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206A9A0 */ cpu->ctr = cpu->r[7];
|
|
/* 0206A9A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A9A8 */ cpu->r[4] = cpu->r[27];
|
|
/* 0206A9AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A9B0 */ _t10 = cpu->r[30] + 0x00000000u;
|
|
/* 0206A9B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206A9B4 */ _t11 = cpu->r[9] + 0x0000006Cu;
|
|
/* 0206A9B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206A9B8 */ cpu->ctr = cpu->r[10];
|
|
/* 0206A9BC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206A9C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A9C4 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206A9C8 */ Gambit_fn_020DABF8(cpu);
|
|
/* 0206A9CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0206A9D0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206A9D0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206A9D0 */ if (_t13) goto L_0206A9E8; else goto L_0206A9D4;
|
|
L_0206A9D4: ; // 0x206a9d4
|
|
/* 0206A9D4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0206A9D8 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206A9DC */ Gambit_fn_027EAD44(cpu);
|
|
/* 0206A9E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206A9E4 */ goto L_0206AA08;
|
|
L_0206A9E8: ; // 0x206a9e8
|
|
/* 0206A9E8 */ _t14 = cpu->r[30] + 0x00000000u;
|
|
/* 0206A9E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206A9EC */ _t15 = cpu->r[12] + 0x0000005Cu;
|
|
/* 0206A9EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206A9F0 */ cpu->ctr = cpu->r[0];
|
|
/* 0206A9F4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206A9F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206A9FC */ cpu->r[4] = cpu->r[31];
|
|
/* 0206AA00 */ Gambit_fn_027EAD58(cpu);
|
|
/* 0206AA04 */ cpu->r[3] = cpu->r[31];
|
|
L_0206AA08: ; // 0x206aa08
|
|
/* 0206AA08 */ /* nop */
|
|
/* 0206AA0C */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 0206AA0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206AA10 */ cpu->lr = cpu->r[0];
|
|
/* 0206AA14 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0206AA18 */ return;
|
|
}
|
|
|
|
// fn_0206AA1C @ 0x206aa1c
|
|
void Gambit_fn_0206AA1C(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_0206AA1C: ; // 0x206aa1c
|
|
/* 0206AA1C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206AA1C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206AA20 */ /* nop */
|
|
/* 0206AA24 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0206AA24 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206AA28 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206AA2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206AA30 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0206AA30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206AA34 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AA34 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206AA34 */ if (_t4) goto L_0206AA38; else goto L_0206AA50;
|
|
L_0206AA38: ; // 0x206aa38
|
|
/* 0206AA38 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AA3C */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206AA40 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206AA40 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206AA44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206AA48 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AA48 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206AA48 */ if (_t7) goto L_0206AA4C; else goto L_0206AA5C;
|
|
L_0206AA4C: ; // 0x206aa4c
|
|
/* 0206AA4C */ return;
|
|
L_0206AA50: ; // 0x206aa50
|
|
/* 0206AA50 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206AA50 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206AA54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206AA58 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AA58 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206AA58 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206AA58 */ goto L_0206AA5C;
|
|
L_0206AA5C: ; // 0x206aa5c
|
|
/* 0206AA5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206AA60 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206AA60 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206AA64 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AA64 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206AA64 */ if (_t13) goto L_0206AA68; else goto L_0206AA70;
|
|
L_0206AA68: ; // 0x206aa68
|
|
/* 0206AA68 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AA6C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206AA70: ; // 0x206aa70
|
|
/* 0206AA70 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206AA70 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206AA74 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206AA74 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206AA78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206AA7C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206AA7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206AA80 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206AA84 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AA84 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206AA84 */ if (_t18) goto L_0206AA9C; else goto L_0206AA88;
|
|
L_0206AA88: ; // 0x206aa88
|
|
/* 0206AA88 */ /* nop */
|
|
/* 0206AA8C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206AA8C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206AA90 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AA94 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206AA98 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206AA98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206AA9C: ; // 0x206aa9c
|
|
/* 0206AA9C */ cpu->ctr = cpu->r[11];
|
|
/* 0206AAA0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206AAA4 @ 0x206aaa4
|
|
void Gambit_fn_0206AAA4(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_0206AAA4: ; // 0x206aaa4
|
|
/* 0206AAA4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206AAA4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206AAA8 */ /* nop */
|
|
/* 0206AAAC */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 0206AAAC */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206AAB0 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206AAB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206AAB8 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0206AAB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206AABC */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AABC */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206AABC */ if (_t4) goto L_0206AAC0; else goto L_0206AAD8;
|
|
L_0206AAC0: ; // 0x206aac0
|
|
/* 0206AAC0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AAC4 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206AAC8 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206AAC8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206AACC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206AAD0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AAD0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206AAD0 */ if (_t7) goto L_0206AAD4; else goto L_0206AAE4;
|
|
L_0206AAD4: ; // 0x206aad4
|
|
/* 0206AAD4 */ return;
|
|
L_0206AAD8: ; // 0x206aad8
|
|
/* 0206AAD8 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206AAD8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206AADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206AAE0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AAE0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206AAE0 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206AAE0 */ goto L_0206AAE4;
|
|
L_0206AAE4: ; // 0x206aae4
|
|
/* 0206AAE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206AAE8 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206AAE8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206AAEC */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AAEC */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206AAEC */ if (_t13) goto L_0206AAF0; else goto L_0206AAF8;
|
|
L_0206AAF0: ; // 0x206aaf0
|
|
/* 0206AAF0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AAF4 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206AAF8: ; // 0x206aaf8
|
|
/* 0206AAF8 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206AAF8 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206AAFC */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206AAFC */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206AB00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206AB04 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206AB04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206AB08 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206AB0C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AB0C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206AB0C */ if (_t18) goto L_0206AB24; else goto L_0206AB10;
|
|
L_0206AB10: ; // 0x206ab10
|
|
/* 0206AB10 */ /* nop */
|
|
/* 0206AB14 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206AB14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206AB18 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AB1C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206AB20 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206AB20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206AB24: ; // 0x206ab24
|
|
/* 0206AB24 */ cpu->ctr = cpu->r[11];
|
|
/* 0206AB28 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206AB2C @ 0x206ab2c
|
|
void Gambit_fn_0206AB2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206AB2C: ; // 0x206ab2c
|
|
/* 0206AB2C */ cpu->r[0] = cpu->lr;
|
|
/* 0206AB30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206AB30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206AB30 */ cpu->r[1] = _t0;
|
|
/* 0206AB34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206AB34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206AB38 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206AB3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206AB3C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206AB40 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206AB40 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206AB44 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206AB48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206AB4C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206AB4C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206AB50 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AB50 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206AB50 */ if (_t6) goto L_0206AB78; else goto L_0206AB54;
|
|
L_0206AB54: ; // 0x206ab54
|
|
/* 0206AB54 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206AB54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206AB58 */ /* nop */
|
|
/* 0206AB5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206AB60 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AB60 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206AB60 */ if (_t9) goto L_0206AB64; else goto L_0206AB78;
|
|
L_0206AB64: ; // 0x206ab64
|
|
/* 0206AB64 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206AB64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206AB68 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206AB68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206AB6C */ cpu->ctr = cpu->r[0];
|
|
/* 0206AB70 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206AB74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206AB78: ; // 0x206ab78
|
|
/* 0206AB78 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206AB7C */ Gambit_fn_0206AAA4(cpu);
|
|
/* 0206AB80 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206AB84 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206AB88 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206AB88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206AB8C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206AB8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206AB90 */ cpu->lr = cpu->r[0];
|
|
/* 0206AB94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206AB98 */ return;
|
|
}
|
|
|
|
// fn_0206AB30 @ 0x206ab30
|
|
void Gambit_fn_0206AB30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206AB30: ; // 0x206ab30
|
|
/* 0206AB30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206AB30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206AB30 */ cpu->r[1] = _t0;
|
|
/* 0206AB34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206AB34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206AB38 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206AB3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206AB3C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206AB40 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206AB40 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206AB44 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206AB48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206AB4C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206AB4C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206AB50 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AB50 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206AB50 */ if (_t6) goto L_0206AB78; else goto L_0206AB54;
|
|
L_0206AB54: ; // 0x206ab54
|
|
/* 0206AB54 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206AB54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206AB58 */ /* nop */
|
|
/* 0206AB5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206AB60 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AB60 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206AB60 */ if (_t9) goto L_0206AB64; else goto L_0206AB78;
|
|
L_0206AB64: ; // 0x206ab64
|
|
/* 0206AB64 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206AB64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206AB68 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206AB68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206AB6C */ cpu->ctr = cpu->r[0];
|
|
/* 0206AB70 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206AB74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206AB78: ; // 0x206ab78
|
|
/* 0206AB78 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206AB7C */ Gambit_fn_0206AAA4(cpu);
|
|
/* 0206AB80 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206AB84 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206AB88 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206AB88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206AB8C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206AB8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206AB90 */ cpu->lr = cpu->r[0];
|
|
/* 0206AB94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206AB98 */ return;
|
|
}
|
|
|
|
// fn_0206AB9C @ 0x206ab9c
|
|
void Gambit_fn_0206AB9C(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_0206AB9C: ; // 0x206ab9c
|
|
/* 0206AB9C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206AB9C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206ABA0 */ /* nop */
|
|
/* 0206ABA4 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0206ABA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206ABA8 */ cpu->r[7] = cpu->r[0];
|
|
/* 0206ABAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0206ABB0 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 0206ABB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206ABB4 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206ABB4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206ABB4 */ if (_t4) goto L_0206ABB8; else goto L_0206ABD0;
|
|
L_0206ABB8: ; // 0x206abb8
|
|
/* 0206ABB8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206ABBC */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 0206ABC0 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206ABC0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206ABC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206ABC8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206ABC8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206ABC8 */ if (_t7) goto L_0206ABCC; else goto L_0206ABDC;
|
|
L_0206ABCC: ; // 0x206abcc
|
|
/* 0206ABCC */ return;
|
|
L_0206ABD0: ; // 0x206abd0
|
|
/* 0206ABD0 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206ABD0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206ABD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206ABD8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206ABD8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206ABD8 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206ABD8 */ goto L_0206ABDC;
|
|
L_0206ABDC: ; // 0x206abdc
|
|
/* 0206ABDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0206ABE0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206ABE0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206ABE4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206ABE4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206ABE4 */ if (_t13) goto L_0206ABE8; else goto L_0206ABF0;
|
|
L_0206ABE8: ; // 0x206abe8
|
|
/* 0206ABE8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206ABEC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206ABF0: ; // 0x206abf0
|
|
/* 0206ABF0 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206ABF0 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206ABF4 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206ABF4 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206ABF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0206ABFC */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206ABFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206AC00 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 0206AC04 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AC04 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206AC04 */ if (_t18) goto L_0206AC1C; else goto L_0206AC08;
|
|
L_0206AC08: ; // 0x206ac08
|
|
/* 0206AC08 */ /* nop */
|
|
/* 0206AC0C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206AC0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206AC10 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AC14 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0206AC18 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206AC18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206AC1C: ; // 0x206ac1c
|
|
/* 0206AC1C */ cpu->ctr = cpu->r[11];
|
|
/* 0206AC20 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206AC24 @ 0x206ac24
|
|
void Gambit_fn_0206AC24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206AC24: ; // 0x206ac24
|
|
/* 0206AC24 */ cpu->r[0] = cpu->lr;
|
|
/* 0206AC28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206AC28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206AC28 */ cpu->r[1] = _t0;
|
|
/* 0206AC2C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206AC2C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206AC30 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206AC30 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206AC34 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206AC38 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206AC38 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206AC3C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206AC3C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206AC40 */ /* nop */
|
|
/* 0206AC44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206AC48 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206AC4C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AC4C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206AC4C */ if (_t6) goto L_0206AC50; else goto L_0206AC64;
|
|
L_0206AC50: ; // 0x206ac50
|
|
/* 0206AC50 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206AC50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206AC54 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206AC54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206AC58 */ cpu->ctr = cpu->r[0];
|
|
/* 0206AC5C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AC60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206AC64: ; // 0x206ac64
|
|
/* 0206AC64 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AC68 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206AC6C */ Gambit_fn_0206AB9C(cpu);
|
|
/* 0206AC70 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AC74 */ /* nop */
|
|
/* 0206AC78 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206AC7C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AC80 */ Gambit_fn_0206AA1C(cpu);
|
|
/* 0206AC84 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206AC84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206AC88 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206AC88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206AC8C */ cpu->lr = cpu->r[0];
|
|
/* 0206AC90 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206AC90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206AC94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206AC98 */ return;
|
|
}
|
|
|
|
// fn_0206AC28 @ 0x206ac28
|
|
void Gambit_fn_0206AC28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206AC28: ; // 0x206ac28
|
|
/* 0206AC28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206AC28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206AC28 */ cpu->r[1] = _t0;
|
|
/* 0206AC2C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206AC2C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206AC30 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206AC30 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206AC34 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206AC38 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206AC38 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206AC3C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206AC3C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206AC40 */ /* nop */
|
|
/* 0206AC44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206AC48 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206AC4C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AC4C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206AC4C */ if (_t6) goto L_0206AC50; else goto L_0206AC64;
|
|
L_0206AC50: ; // 0x206ac50
|
|
/* 0206AC50 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206AC50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206AC54 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206AC54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206AC58 */ cpu->ctr = cpu->r[0];
|
|
/* 0206AC5C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AC60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206AC64: ; // 0x206ac64
|
|
/* 0206AC64 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AC68 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206AC6C */ Gambit_fn_0206AB9C(cpu);
|
|
/* 0206AC70 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AC74 */ /* nop */
|
|
/* 0206AC78 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206AC7C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AC80 */ Gambit_fn_0206AA1C(cpu);
|
|
/* 0206AC84 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206AC84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206AC88 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206AC88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206AC8C */ cpu->lr = cpu->r[0];
|
|
/* 0206AC90 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206AC90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206AC94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206AC98 */ return;
|
|
}
|
|
|
|
// fn_0206AC9C @ 0x206ac9c
|
|
void Gambit_fn_0206AC9C(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_0206AC9C: ; // 0x206ac9c
|
|
/* 0206AC9C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206AC9C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206ACA0 */ /* nop */
|
|
/* 0206ACA4 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0206ACA4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206ACA8 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206ACAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206ACB0 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0206ACB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206ACB4 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206ACB4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206ACB4 */ if (_t4) goto L_0206ACB8; else goto L_0206ACD0;
|
|
L_0206ACB8: ; // 0x206acb8
|
|
/* 0206ACB8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206ACBC */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206ACC0 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206ACC0 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206ACC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206ACC8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206ACC8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206ACC8 */ if (_t7) goto L_0206ACCC; else goto L_0206ACDC;
|
|
L_0206ACCC: ; // 0x206accc
|
|
/* 0206ACCC */ return;
|
|
L_0206ACD0: ; // 0x206acd0
|
|
/* 0206ACD0 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206ACD0 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206ACD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206ACD8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206ACD8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206ACD8 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206ACD8 */ goto L_0206ACDC;
|
|
L_0206ACDC: ; // 0x206acdc
|
|
/* 0206ACDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206ACE0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206ACE0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206ACE4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206ACE4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206ACE4 */ if (_t13) goto L_0206ACE8; else goto L_0206ACF0;
|
|
L_0206ACE8: ; // 0x206ace8
|
|
/* 0206ACE8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206ACEC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206ACF0: ; // 0x206acf0
|
|
/* 0206ACF0 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206ACF0 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206ACF4 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206ACF4 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206ACF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206ACFC */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206ACFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206AD00 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206AD04 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AD04 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206AD04 */ if (_t18) goto L_0206AD1C; else goto L_0206AD08;
|
|
L_0206AD08: ; // 0x206ad08
|
|
/* 0206AD08 */ /* nop */
|
|
/* 0206AD0C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206AD0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206AD10 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AD14 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206AD18 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206AD18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206AD1C: ; // 0x206ad1c
|
|
/* 0206AD1C */ cpu->ctr = cpu->r[11];
|
|
/* 0206AD20 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206AD24 @ 0x206ad24
|
|
void Gambit_fn_0206AD24(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_0206AD24: ; // 0x206ad24
|
|
/* 0206AD24 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206AD24 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206AD28 */ /* nop */
|
|
/* 0206AD2C */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 0206AD2C */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206AD30 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206AD34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206AD38 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0206AD38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206AD3C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AD3C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206AD3C */ if (_t4) goto L_0206AD40; else goto L_0206AD58;
|
|
L_0206AD40: ; // 0x206ad40
|
|
/* 0206AD40 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AD44 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206AD48 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206AD48 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206AD4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206AD50 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AD50 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206AD50 */ if (_t7) goto L_0206AD54; else goto L_0206AD64;
|
|
L_0206AD54: ; // 0x206ad54
|
|
/* 0206AD54 */ return;
|
|
L_0206AD58: ; // 0x206ad58
|
|
/* 0206AD58 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206AD58 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206AD5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206AD60 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AD60 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206AD60 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206AD60 */ goto L_0206AD64;
|
|
L_0206AD64: ; // 0x206ad64
|
|
/* 0206AD64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206AD68 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206AD68 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206AD6C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AD6C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206AD6C */ if (_t13) goto L_0206AD70; else goto L_0206AD78;
|
|
L_0206AD70: ; // 0x206ad70
|
|
/* 0206AD70 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AD74 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206AD78: ; // 0x206ad78
|
|
/* 0206AD78 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206AD78 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206AD7C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206AD7C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206AD80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206AD84 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206AD84 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206AD88 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206AD8C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AD8C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206AD8C */ if (_t18) goto L_0206ADA4; else goto L_0206AD90;
|
|
L_0206AD90: ; // 0x206ad90
|
|
/* 0206AD90 */ /* nop */
|
|
/* 0206AD94 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206AD94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206AD98 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AD9C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206ADA0 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206ADA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206ADA4: ; // 0x206ada4
|
|
/* 0206ADA4 */ cpu->ctr = cpu->r[11];
|
|
/* 0206ADA8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206ADAC @ 0x206adac
|
|
void Gambit_fn_0206ADAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206ADAC: ; // 0x206adac
|
|
/* 0206ADAC */ cpu->r[0] = cpu->lr;
|
|
/* 0206ADB0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206ADB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206ADB0 */ cpu->r[1] = _t0;
|
|
/* 0206ADB4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206ADB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206ADB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206ADBC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206ADBC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206ADC0 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206ADC0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206ADC4 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206ADC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206ADCC */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206ADCC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206ADD0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206ADD0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206ADD0 */ if (_t6) goto L_0206ADF8; else goto L_0206ADD4;
|
|
L_0206ADD4: ; // 0x206add4
|
|
/* 0206ADD4 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206ADD4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206ADD8 */ /* nop */
|
|
/* 0206ADDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206ADE0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206ADE0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206ADE0 */ if (_t9) goto L_0206ADE4; else goto L_0206ADF8;
|
|
L_0206ADE4: ; // 0x206ade4
|
|
/* 0206ADE4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206ADE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206ADE8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206ADE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206ADEC */ cpu->ctr = cpu->r[0];
|
|
/* 0206ADF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206ADF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206ADF8: ; // 0x206adf8
|
|
/* 0206ADF8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206ADFC */ Gambit_fn_0206AD24(cpu);
|
|
/* 0206AE00 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206AE04 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206AE08 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206AE08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206AE0C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206AE0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206AE10 */ cpu->lr = cpu->r[0];
|
|
/* 0206AE14 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206AE18 */ return;
|
|
}
|
|
|
|
// fn_0206ADB0 @ 0x206adb0
|
|
void Gambit_fn_0206ADB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206ADB0: ; // 0x206adb0
|
|
/* 0206ADB0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206ADB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206ADB0 */ cpu->r[1] = _t0;
|
|
/* 0206ADB4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206ADB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206ADB8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206ADBC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206ADBC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206ADC0 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206ADC0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206ADC4 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206ADC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206ADCC */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206ADCC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206ADD0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206ADD0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206ADD0 */ if (_t6) goto L_0206ADF8; else goto L_0206ADD4;
|
|
L_0206ADD4: ; // 0x206add4
|
|
/* 0206ADD4 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206ADD4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206ADD8 */ /* nop */
|
|
/* 0206ADDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206ADE0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206ADE0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206ADE0 */ if (_t9) goto L_0206ADE4; else goto L_0206ADF8;
|
|
L_0206ADE4: ; // 0x206ade4
|
|
/* 0206ADE4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206ADE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206ADE8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206ADE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206ADEC */ cpu->ctr = cpu->r[0];
|
|
/* 0206ADF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206ADF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206ADF8: ; // 0x206adf8
|
|
/* 0206ADF8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206ADFC */ Gambit_fn_0206AD24(cpu);
|
|
/* 0206AE00 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206AE04 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206AE08 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206AE08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206AE0C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206AE0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206AE10 */ cpu->lr = cpu->r[0];
|
|
/* 0206AE14 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206AE18 */ return;
|
|
}
|
|
|
|
// fn_0206AE1C @ 0x206ae1c
|
|
void Gambit_fn_0206AE1C(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_0206AE1C: ; // 0x206ae1c
|
|
/* 0206AE1C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206AE1C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206AE20 */ /* nop */
|
|
/* 0206AE24 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0206AE24 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206AE28 */ cpu->r[7] = cpu->r[0];
|
|
/* 0206AE2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0206AE30 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 0206AE30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206AE34 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AE34 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206AE34 */ if (_t4) goto L_0206AE38; else goto L_0206AE50;
|
|
L_0206AE38: ; // 0x206ae38
|
|
/* 0206AE38 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AE3C */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 0206AE40 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206AE40 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206AE44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206AE48 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AE48 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206AE48 */ if (_t7) goto L_0206AE4C; else goto L_0206AE5C;
|
|
L_0206AE4C: ; // 0x206ae4c
|
|
/* 0206AE4C */ return;
|
|
L_0206AE50: ; // 0x206ae50
|
|
/* 0206AE50 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206AE50 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206AE54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206AE58 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AE58 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206AE58 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206AE58 */ goto L_0206AE5C;
|
|
L_0206AE5C: ; // 0x206ae5c
|
|
/* 0206AE5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0206AE60 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206AE60 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206AE64 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AE64 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206AE64 */ if (_t13) goto L_0206AE68; else goto L_0206AE70;
|
|
L_0206AE68: ; // 0x206ae68
|
|
/* 0206AE68 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AE6C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206AE70: ; // 0x206ae70
|
|
/* 0206AE70 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206AE70 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206AE74 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206AE74 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206AE78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0206AE7C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206AE7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206AE80 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 0206AE84 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AE84 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206AE84 */ if (_t18) goto L_0206AE9C; else goto L_0206AE88;
|
|
L_0206AE88: ; // 0x206ae88
|
|
/* 0206AE88 */ /* nop */
|
|
/* 0206AE8C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206AE8C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206AE90 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AE94 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0206AE98 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206AE98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206AE9C: ; // 0x206ae9c
|
|
/* 0206AE9C */ cpu->ctr = cpu->r[11];
|
|
/* 0206AEA0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206AEA4 @ 0x206aea4
|
|
void Gambit_fn_0206AEA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206AEA4: ; // 0x206aea4
|
|
/* 0206AEA4 */ cpu->r[0] = cpu->lr;
|
|
/* 0206AEA8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206AEA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206AEA8 */ cpu->r[1] = _t0;
|
|
/* 0206AEAC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206AEAC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206AEB0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206AEB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206AEB4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206AEB8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206AEB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206AEBC */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206AEBC */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206AEC0 */ /* nop */
|
|
/* 0206AEC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206AEC8 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206AECC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AECC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206AECC */ if (_t6) goto L_0206AED0; else goto L_0206AEE4;
|
|
L_0206AED0: ; // 0x206aed0
|
|
/* 0206AED0 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206AED0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206AED4 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206AED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206AED8 */ cpu->ctr = cpu->r[0];
|
|
/* 0206AEDC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AEE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206AEE4: ; // 0x206aee4
|
|
/* 0206AEE4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AEE8 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206AEEC */ Gambit_fn_0206AE1C(cpu);
|
|
/* 0206AEF0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AEF4 */ /* nop */
|
|
/* 0206AEF8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206AEFC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AF00 */ Gambit_fn_0206AC9C(cpu);
|
|
/* 0206AF04 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206AF04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206AF08 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206AF08 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206AF0C */ cpu->lr = cpu->r[0];
|
|
/* 0206AF10 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206AF10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206AF14 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206AF18 */ return;
|
|
}
|
|
|
|
// fn_0206AEA8 @ 0x206aea8
|
|
void Gambit_fn_0206AEA8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206AEA8: ; // 0x206aea8
|
|
/* 0206AEA8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206AEA8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206AEA8 */ cpu->r[1] = _t0;
|
|
/* 0206AEAC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206AEAC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206AEB0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206AEB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206AEB4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206AEB8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206AEB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206AEBC */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206AEBC */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206AEC0 */ /* nop */
|
|
/* 0206AEC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206AEC8 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206AECC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AECC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206AECC */ if (_t6) goto L_0206AED0; else goto L_0206AEE4;
|
|
L_0206AED0: ; // 0x206aed0
|
|
/* 0206AED0 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206AED0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206AED4 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206AED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206AED8 */ cpu->ctr = cpu->r[0];
|
|
/* 0206AEDC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AEE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206AEE4: ; // 0x206aee4
|
|
/* 0206AEE4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AEE8 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206AEEC */ Gambit_fn_0206AE1C(cpu);
|
|
/* 0206AEF0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AEF4 */ /* nop */
|
|
/* 0206AEF8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206AEFC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206AF00 */ Gambit_fn_0206AC9C(cpu);
|
|
/* 0206AF04 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206AF04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206AF08 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206AF08 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206AF0C */ cpu->lr = cpu->r[0];
|
|
/* 0206AF10 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206AF10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206AF14 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206AF18 */ return;
|
|
}
|
|
|
|
// fn_0206AF1C @ 0x206af1c
|
|
void Gambit_fn_0206AF1C(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_0206AF1C: ; // 0x206af1c
|
|
/* 0206AF1C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206AF1C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206AF20 */ /* nop */
|
|
/* 0206AF24 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0206AF24 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206AF28 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206AF2C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206AF30 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0206AF30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206AF34 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AF34 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206AF34 */ if (_t4) goto L_0206AF38; else goto L_0206AF50;
|
|
L_0206AF38: ; // 0x206af38
|
|
/* 0206AF38 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AF3C */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206AF40 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206AF40 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206AF44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206AF48 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AF48 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206AF48 */ if (_t7) goto L_0206AF4C; else goto L_0206AF5C;
|
|
L_0206AF4C: ; // 0x206af4c
|
|
/* 0206AF4C */ return;
|
|
L_0206AF50: ; // 0x206af50
|
|
/* 0206AF50 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206AF50 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206AF54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206AF58 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AF58 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206AF58 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206AF58 */ goto L_0206AF5C;
|
|
L_0206AF5C: ; // 0x206af5c
|
|
/* 0206AF5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206AF60 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206AF60 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206AF64 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AF64 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206AF64 */ if (_t13) goto L_0206AF68; else goto L_0206AF70;
|
|
L_0206AF68: ; // 0x206af68
|
|
/* 0206AF68 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AF6C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206AF70: ; // 0x206af70
|
|
/* 0206AF70 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206AF70 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206AF74 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206AF74 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206AF78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206AF7C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206AF7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206AF80 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206AF84 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AF84 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206AF84 */ if (_t18) goto L_0206AF9C; else goto L_0206AF88;
|
|
L_0206AF88: ; // 0x206af88
|
|
/* 0206AF88 */ /* nop */
|
|
/* 0206AF8C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206AF8C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206AF90 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AF94 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206AF98 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206AF98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206AF9C: ; // 0x206af9c
|
|
/* 0206AF9C */ cpu->ctr = cpu->r[11];
|
|
/* 0206AFA0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206AFA4 @ 0x206afa4
|
|
void Gambit_fn_0206AFA4(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_0206AFA4: ; // 0x206afa4
|
|
/* 0206AFA4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206AFA4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206AFA8 */ /* nop */
|
|
/* 0206AFAC */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 0206AFAC */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206AFB0 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206AFB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206AFB8 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0206AFB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206AFBC */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AFBC */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206AFBC */ if (_t4) goto L_0206AFC0; else goto L_0206AFD8;
|
|
L_0206AFC0: ; // 0x206afc0
|
|
/* 0206AFC0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AFC4 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206AFC8 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206AFC8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206AFCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206AFD0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AFD0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206AFD0 */ if (_t7) goto L_0206AFD4; else goto L_0206AFE4;
|
|
L_0206AFD4: ; // 0x206afd4
|
|
/* 0206AFD4 */ return;
|
|
L_0206AFD8: ; // 0x206afd8
|
|
/* 0206AFD8 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206AFD8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206AFDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206AFE0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206AFE0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206AFE0 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206AFE0 */ goto L_0206AFE4;
|
|
L_0206AFE4: ; // 0x206afe4
|
|
/* 0206AFE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206AFE8 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206AFE8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206AFEC */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206AFEC */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206AFEC */ if (_t13) goto L_0206AFF0; else goto L_0206AFF8;
|
|
L_0206AFF0: ; // 0x206aff0
|
|
/* 0206AFF0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206AFF4 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206AFF8: ; // 0x206aff8
|
|
/* 0206AFF8 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206AFF8 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206AFFC */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206AFFC */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206B000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B004 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B004 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206B008 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206B00C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B00C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206B00C */ if (_t18) goto L_0206B024; else goto L_0206B010;
|
|
L_0206B010: ; // 0x206b010
|
|
/* 0206B010 */ /* nop */
|
|
/* 0206B014 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206B014 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206B018 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B01C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206B020 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B020 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206B024: ; // 0x206b024
|
|
/* 0206B024 */ cpu->ctr = cpu->r[11];
|
|
/* 0206B028 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206B02C @ 0x206b02c
|
|
void Gambit_fn_0206B02C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206B02C: ; // 0x206b02c
|
|
/* 0206B02C */ cpu->r[0] = cpu->lr;
|
|
/* 0206B030 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B030 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B030 */ cpu->r[1] = _t0;
|
|
/* 0206B034 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B034 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206B038 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206B03C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B03C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206B040 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206B040 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206B044 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206B048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B04C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206B04C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206B050 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B050 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B050 */ if (_t6) goto L_0206B078; else goto L_0206B054;
|
|
L_0206B054: ; // 0x206b054
|
|
/* 0206B054 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206B054 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206B058 */ /* nop */
|
|
/* 0206B05C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206B060 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B060 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206B060 */ if (_t9) goto L_0206B064; else goto L_0206B078;
|
|
L_0206B064: ; // 0x206b064
|
|
/* 0206B064 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206B064 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B068 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206B068 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B06C */ cpu->ctr = cpu->r[0];
|
|
/* 0206B070 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B074 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B078: ; // 0x206b078
|
|
/* 0206B078 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B07C */ Gambit_fn_0206AFA4(cpu);
|
|
/* 0206B080 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B084 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206B088 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B088 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206B08C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B08C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206B090 */ cpu->lr = cpu->r[0];
|
|
/* 0206B094 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B098 */ return;
|
|
}
|
|
|
|
// fn_0206B030 @ 0x206b030
|
|
void Gambit_fn_0206B030(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206B030: ; // 0x206b030
|
|
/* 0206B030 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B030 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B030 */ cpu->r[1] = _t0;
|
|
/* 0206B034 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B034 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206B038 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206B03C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B03C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206B040 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206B040 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206B044 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206B048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B04C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206B04C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206B050 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B050 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B050 */ if (_t6) goto L_0206B078; else goto L_0206B054;
|
|
L_0206B054: ; // 0x206b054
|
|
/* 0206B054 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206B054 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206B058 */ /* nop */
|
|
/* 0206B05C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206B060 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B060 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206B060 */ if (_t9) goto L_0206B064; else goto L_0206B078;
|
|
L_0206B064: ; // 0x206b064
|
|
/* 0206B064 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206B064 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B068 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206B068 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B06C */ cpu->ctr = cpu->r[0];
|
|
/* 0206B070 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B074 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B078: ; // 0x206b078
|
|
/* 0206B078 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B07C */ Gambit_fn_0206AFA4(cpu);
|
|
/* 0206B080 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B084 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206B088 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B088 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206B08C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B08C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206B090 */ cpu->lr = cpu->r[0];
|
|
/* 0206B094 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B098 */ return;
|
|
}
|
|
|
|
// fn_0206B09C @ 0x206b09c
|
|
void Gambit_fn_0206B09C(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_0206B09C: ; // 0x206b09c
|
|
/* 0206B09C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206B09C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206B0A0 */ /* nop */
|
|
/* 0206B0A4 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0206B0A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206B0A8 */ cpu->r[7] = cpu->r[0];
|
|
/* 0206B0AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0206B0B0 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 0206B0B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206B0B4 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B0B4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206B0B4 */ if (_t4) goto L_0206B0B8; else goto L_0206B0D0;
|
|
L_0206B0B8: ; // 0x206b0b8
|
|
/* 0206B0B8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B0BC */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 0206B0C0 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206B0C0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206B0C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206B0C8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B0C8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206B0C8 */ if (_t7) goto L_0206B0CC; else goto L_0206B0DC;
|
|
L_0206B0CC: ; // 0x206b0cc
|
|
/* 0206B0CC */ return;
|
|
L_0206B0D0: ; // 0x206b0d0
|
|
/* 0206B0D0 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B0D0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206B0D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206B0D8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B0D8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206B0D8 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206B0D8 */ goto L_0206B0DC;
|
|
L_0206B0DC: ; // 0x206b0dc
|
|
/* 0206B0DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0206B0E0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206B0E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B0E4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B0E4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206B0E4 */ if (_t13) goto L_0206B0E8; else goto L_0206B0F0;
|
|
L_0206B0E8: ; // 0x206b0e8
|
|
/* 0206B0E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B0EC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206B0F0: ; // 0x206b0f0
|
|
/* 0206B0F0 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B0F0 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206B0F4 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206B0F4 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206B0F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0206B0FC */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B0FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206B100 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 0206B104 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B104 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206B104 */ if (_t18) goto L_0206B11C; else goto L_0206B108;
|
|
L_0206B108: ; // 0x206b108
|
|
/* 0206B108 */ /* nop */
|
|
/* 0206B10C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206B10C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206B110 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B114 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0206B118 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B118 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206B11C: ; // 0x206b11c
|
|
/* 0206B11C */ cpu->ctr = cpu->r[11];
|
|
/* 0206B120 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206B124 @ 0x206b124
|
|
void Gambit_fn_0206B124(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206B124: ; // 0x206b124
|
|
/* 0206B124 */ cpu->r[0] = cpu->lr;
|
|
/* 0206B128 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B128 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B128 */ cpu->r[1] = _t0;
|
|
/* 0206B12C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B12C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206B130 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B130 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206B134 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206B138 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B138 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206B13C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206B13C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206B140 */ /* nop */
|
|
/* 0206B144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206B148 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206B14C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B14C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B14C */ if (_t6) goto L_0206B150; else goto L_0206B164;
|
|
L_0206B150: ; // 0x206b150
|
|
/* 0206B150 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206B150 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206B154 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206B154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206B158 */ cpu->ctr = cpu->r[0];
|
|
/* 0206B15C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B160 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B164: ; // 0x206b164
|
|
/* 0206B164 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B168 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206B16C */ Gambit_fn_0206B09C(cpu);
|
|
/* 0206B170 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B174 */ /* nop */
|
|
/* 0206B178 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206B17C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B180 */ Gambit_fn_0206AF1C(cpu);
|
|
/* 0206B184 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B184 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206B188 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B188 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B18C */ cpu->lr = cpu->r[0];
|
|
/* 0206B190 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B190 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B194 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B198 */ return;
|
|
}
|
|
|
|
// fn_0206B128 @ 0x206b128
|
|
void Gambit_fn_0206B128(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206B128: ; // 0x206b128
|
|
/* 0206B128 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B128 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B128 */ cpu->r[1] = _t0;
|
|
/* 0206B12C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B12C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206B130 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B130 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206B134 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206B138 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B138 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206B13C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206B13C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206B140 */ /* nop */
|
|
/* 0206B144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206B148 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206B14C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B14C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B14C */ if (_t6) goto L_0206B150; else goto L_0206B164;
|
|
L_0206B150: ; // 0x206b150
|
|
/* 0206B150 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206B150 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206B154 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206B154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206B158 */ cpu->ctr = cpu->r[0];
|
|
/* 0206B15C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B160 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B164: ; // 0x206b164
|
|
/* 0206B164 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B168 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206B16C */ Gambit_fn_0206B09C(cpu);
|
|
/* 0206B170 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B174 */ /* nop */
|
|
/* 0206B178 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206B17C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B180 */ Gambit_fn_0206AF1C(cpu);
|
|
/* 0206B184 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B184 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206B188 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B188 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B18C */ cpu->lr = cpu->r[0];
|
|
/* 0206B190 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B190 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B194 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B198 */ return;
|
|
}
|
|
|
|
// fn_0206B19C @ 0x206b19c
|
|
void Gambit_fn_0206B19C(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_0206B19C: ; // 0x206b19c
|
|
/* 0206B19C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206B19C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206B1A0 */ /* nop */
|
|
/* 0206B1A4 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0206B1A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206B1A8 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206B1AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206B1B0 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0206B1B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206B1B4 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B1B4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206B1B4 */ if (_t4) goto L_0206B1B8; else goto L_0206B1D0;
|
|
L_0206B1B8: ; // 0x206b1b8
|
|
/* 0206B1B8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B1BC */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206B1C0 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206B1C0 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206B1C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B1C8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B1C8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206B1C8 */ if (_t7) goto L_0206B1CC; else goto L_0206B1DC;
|
|
L_0206B1CC: ; // 0x206b1cc
|
|
/* 0206B1CC */ return;
|
|
L_0206B1D0: ; // 0x206b1d0
|
|
/* 0206B1D0 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B1D0 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206B1D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B1D8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B1D8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206B1D8 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206B1D8 */ goto L_0206B1DC;
|
|
L_0206B1DC: ; // 0x206b1dc
|
|
/* 0206B1DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206B1E0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206B1E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B1E4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B1E4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206B1E4 */ if (_t13) goto L_0206B1E8; else goto L_0206B1F0;
|
|
L_0206B1E8: ; // 0x206b1e8
|
|
/* 0206B1E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B1EC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206B1F0: ; // 0x206b1f0
|
|
/* 0206B1F0 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B1F0 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206B1F4 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206B1F4 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206B1F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B1FC */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B1FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206B200 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206B204 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B204 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206B204 */ if (_t18) goto L_0206B21C; else goto L_0206B208;
|
|
L_0206B208: ; // 0x206b208
|
|
/* 0206B208 */ /* nop */
|
|
/* 0206B20C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206B20C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206B210 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B214 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206B218 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B218 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206B21C: ; // 0x206b21c
|
|
/* 0206B21C */ cpu->ctr = cpu->r[11];
|
|
/* 0206B220 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206B224 @ 0x206b224
|
|
void Gambit_fn_0206B224(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_0206B224: ; // 0x206b224
|
|
/* 0206B224 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206B224 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206B228 */ /* nop */
|
|
/* 0206B22C */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 0206B22C */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206B230 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206B234 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206B238 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0206B238 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206B23C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B23C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206B23C */ if (_t4) goto L_0206B240; else goto L_0206B258;
|
|
L_0206B240: ; // 0x206b240
|
|
/* 0206B240 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B244 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206B248 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206B248 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206B24C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B250 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B250 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206B250 */ if (_t7) goto L_0206B254; else goto L_0206B264;
|
|
L_0206B254: ; // 0x206b254
|
|
/* 0206B254 */ return;
|
|
L_0206B258: ; // 0x206b258
|
|
/* 0206B258 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B258 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206B25C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B260 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B260 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206B260 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206B260 */ goto L_0206B264;
|
|
L_0206B264: ; // 0x206b264
|
|
/* 0206B264 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206B268 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206B268 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B26C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B26C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206B26C */ if (_t13) goto L_0206B270; else goto L_0206B278;
|
|
L_0206B270: ; // 0x206b270
|
|
/* 0206B270 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B274 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206B278: ; // 0x206b278
|
|
/* 0206B278 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B278 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206B27C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206B27C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206B280 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B284 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B284 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206B288 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206B28C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B28C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206B28C */ if (_t18) goto L_0206B2A4; else goto L_0206B290;
|
|
L_0206B290: ; // 0x206b290
|
|
/* 0206B290 */ /* nop */
|
|
/* 0206B294 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206B294 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206B298 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B29C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206B2A0 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B2A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206B2A4: ; // 0x206b2a4
|
|
/* 0206B2A4 */ cpu->ctr = cpu->r[11];
|
|
/* 0206B2A8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206B2AC @ 0x206b2ac
|
|
void Gambit_fn_0206B2AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206B2AC: ; // 0x206b2ac
|
|
/* 0206B2AC */ cpu->r[0] = cpu->lr;
|
|
/* 0206B2B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B2B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B2B0 */ cpu->r[1] = _t0;
|
|
/* 0206B2B4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B2B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206B2B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206B2BC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B2BC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206B2C0 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206B2C0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206B2C4 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206B2C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B2CC */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206B2CC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206B2D0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B2D0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B2D0 */ if (_t6) goto L_0206B2F8; else goto L_0206B2D4;
|
|
L_0206B2D4: ; // 0x206b2d4
|
|
/* 0206B2D4 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206B2D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206B2D8 */ /* nop */
|
|
/* 0206B2DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206B2E0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B2E0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206B2E0 */ if (_t9) goto L_0206B2E4; else goto L_0206B2F8;
|
|
L_0206B2E4: ; // 0x206b2e4
|
|
/* 0206B2E4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206B2E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B2E8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206B2E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B2EC */ cpu->ctr = cpu->r[0];
|
|
/* 0206B2F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B2F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B2F8: ; // 0x206b2f8
|
|
/* 0206B2F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B2FC */ Gambit_fn_0206B224(cpu);
|
|
/* 0206B300 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B304 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206B308 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B308 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206B30C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B30C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206B310 */ cpu->lr = cpu->r[0];
|
|
/* 0206B314 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B318 */ return;
|
|
}
|
|
|
|
// fn_0206B2B0 @ 0x206b2b0
|
|
void Gambit_fn_0206B2B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206B2B0: ; // 0x206b2b0
|
|
/* 0206B2B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B2B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B2B0 */ cpu->r[1] = _t0;
|
|
/* 0206B2B4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B2B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206B2B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206B2BC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B2BC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206B2C0 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206B2C0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206B2C4 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206B2C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B2CC */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206B2CC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206B2D0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B2D0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B2D0 */ if (_t6) goto L_0206B2F8; else goto L_0206B2D4;
|
|
L_0206B2D4: ; // 0x206b2d4
|
|
/* 0206B2D4 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206B2D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206B2D8 */ /* nop */
|
|
/* 0206B2DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206B2E0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B2E0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206B2E0 */ if (_t9) goto L_0206B2E4; else goto L_0206B2F8;
|
|
L_0206B2E4: ; // 0x206b2e4
|
|
/* 0206B2E4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206B2E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B2E8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206B2E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B2EC */ cpu->ctr = cpu->r[0];
|
|
/* 0206B2F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B2F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B2F8: ; // 0x206b2f8
|
|
/* 0206B2F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B2FC */ Gambit_fn_0206B224(cpu);
|
|
/* 0206B300 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B304 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206B308 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B308 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206B30C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B30C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206B310 */ cpu->lr = cpu->r[0];
|
|
/* 0206B314 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B318 */ return;
|
|
}
|
|
|
|
// fn_0206B31C @ 0x206b31c
|
|
void Gambit_fn_0206B31C(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_0206B31C: ; // 0x206b31c
|
|
/* 0206B31C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206B31C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206B320 */ /* nop */
|
|
/* 0206B324 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0206B324 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206B328 */ cpu->r[7] = cpu->r[0];
|
|
/* 0206B32C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0206B330 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 0206B330 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206B334 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B334 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206B334 */ if (_t4) goto L_0206B338; else goto L_0206B350;
|
|
L_0206B338: ; // 0x206b338
|
|
/* 0206B338 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B33C */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 0206B340 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206B340 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206B344 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206B348 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B348 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206B348 */ if (_t7) goto L_0206B34C; else goto L_0206B35C;
|
|
L_0206B34C: ; // 0x206b34c
|
|
/* 0206B34C */ return;
|
|
L_0206B350: ; // 0x206b350
|
|
/* 0206B350 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B350 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206B354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206B358 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B358 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206B358 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206B358 */ goto L_0206B35C;
|
|
L_0206B35C: ; // 0x206b35c
|
|
/* 0206B35C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0206B360 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206B360 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B364 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B364 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206B364 */ if (_t13) goto L_0206B368; else goto L_0206B370;
|
|
L_0206B368: ; // 0x206b368
|
|
/* 0206B368 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B36C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206B370: ; // 0x206b370
|
|
/* 0206B370 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B370 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206B374 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206B374 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206B378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0206B37C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B37C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206B380 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 0206B384 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B384 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206B384 */ if (_t18) goto L_0206B39C; else goto L_0206B388;
|
|
L_0206B388: ; // 0x206b388
|
|
/* 0206B388 */ /* nop */
|
|
/* 0206B38C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206B38C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206B390 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B394 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0206B398 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B398 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206B39C: ; // 0x206b39c
|
|
/* 0206B39C */ cpu->ctr = cpu->r[11];
|
|
/* 0206B3A0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206B3A4 @ 0x206b3a4
|
|
void Gambit_fn_0206B3A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206B3A4: ; // 0x206b3a4
|
|
/* 0206B3A4 */ cpu->r[0] = cpu->lr;
|
|
/* 0206B3A8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B3A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B3A8 */ cpu->r[1] = _t0;
|
|
/* 0206B3AC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B3AC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206B3B0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B3B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206B3B4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206B3B8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B3B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206B3BC */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206B3BC */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206B3C0 */ /* nop */
|
|
/* 0206B3C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206B3C8 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206B3CC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B3CC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B3CC */ if (_t6) goto L_0206B3D0; else goto L_0206B3E4;
|
|
L_0206B3D0: ; // 0x206b3d0
|
|
/* 0206B3D0 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206B3D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206B3D4 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206B3D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206B3D8 */ cpu->ctr = cpu->r[0];
|
|
/* 0206B3DC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B3E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B3E4: ; // 0x206b3e4
|
|
/* 0206B3E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B3E8 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206B3EC */ Gambit_fn_0206B31C(cpu);
|
|
/* 0206B3F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B3F4 */ /* nop */
|
|
/* 0206B3F8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206B3FC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B400 */ Gambit_fn_0206B19C(cpu);
|
|
/* 0206B404 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206B408 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B408 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B40C */ cpu->lr = cpu->r[0];
|
|
/* 0206B410 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B410 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B414 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B418 */ return;
|
|
}
|
|
|
|
// fn_0206B3A8 @ 0x206b3a8
|
|
void Gambit_fn_0206B3A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206B3A8: ; // 0x206b3a8
|
|
/* 0206B3A8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B3A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B3A8 */ cpu->r[1] = _t0;
|
|
/* 0206B3AC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B3AC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206B3B0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B3B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206B3B4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206B3B8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B3B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206B3BC */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206B3BC */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206B3C0 */ /* nop */
|
|
/* 0206B3C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206B3C8 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206B3CC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B3CC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B3CC */ if (_t6) goto L_0206B3D0; else goto L_0206B3E4;
|
|
L_0206B3D0: ; // 0x206b3d0
|
|
/* 0206B3D0 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206B3D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206B3D4 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206B3D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206B3D8 */ cpu->ctr = cpu->r[0];
|
|
/* 0206B3DC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B3E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B3E4: ; // 0x206b3e4
|
|
/* 0206B3E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B3E8 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206B3EC */ Gambit_fn_0206B31C(cpu);
|
|
/* 0206B3F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B3F4 */ /* nop */
|
|
/* 0206B3F8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206B3FC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B400 */ Gambit_fn_0206B19C(cpu);
|
|
/* 0206B404 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206B408 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B408 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B40C */ cpu->lr = cpu->r[0];
|
|
/* 0206B410 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B410 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B414 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B418 */ return;
|
|
}
|
|
|
|
// fn_0206B41C @ 0x206b41c
|
|
void Gambit_fn_0206B41C(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_0206B41C: ; // 0x206b41c
|
|
/* 0206B41C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206B41C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206B420 */ /* nop */
|
|
/* 0206B424 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0206B424 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206B428 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206B42C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206B430 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0206B430 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206B434 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B434 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206B434 */ if (_t4) goto L_0206B438; else goto L_0206B450;
|
|
L_0206B438: ; // 0x206b438
|
|
/* 0206B438 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B43C */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206B440 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206B440 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206B444 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B448 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B448 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206B448 */ if (_t7) goto L_0206B44C; else goto L_0206B45C;
|
|
L_0206B44C: ; // 0x206b44c
|
|
/* 0206B44C */ return;
|
|
L_0206B450: ; // 0x206b450
|
|
/* 0206B450 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B450 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206B454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B458 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B458 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206B458 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206B458 */ goto L_0206B45C;
|
|
L_0206B45C: ; // 0x206b45c
|
|
/* 0206B45C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206B460 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206B460 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B464 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B464 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206B464 */ if (_t13) goto L_0206B468; else goto L_0206B470;
|
|
L_0206B468: ; // 0x206b468
|
|
/* 0206B468 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B46C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206B470: ; // 0x206b470
|
|
/* 0206B470 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B470 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206B474 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206B474 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206B478 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B47C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B47C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206B480 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206B484 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B484 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206B484 */ if (_t18) goto L_0206B49C; else goto L_0206B488;
|
|
L_0206B488: ; // 0x206b488
|
|
/* 0206B488 */ /* nop */
|
|
/* 0206B48C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206B48C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206B490 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B494 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206B498 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B498 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206B49C: ; // 0x206b49c
|
|
/* 0206B49C */ cpu->ctr = cpu->r[11];
|
|
/* 0206B4A0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206B4A4 @ 0x206b4a4
|
|
void Gambit_fn_0206B4A4(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_0206B4A4: ; // 0x206b4a4
|
|
/* 0206B4A4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206B4A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206B4A8 */ /* nop */
|
|
/* 0206B4AC */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 0206B4AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206B4B0 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206B4B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206B4B8 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0206B4B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206B4BC */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B4BC */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206B4BC */ if (_t4) goto L_0206B4C0; else goto L_0206B4D8;
|
|
L_0206B4C0: ; // 0x206b4c0
|
|
/* 0206B4C0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B4C4 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206B4C8 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206B4C8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206B4CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B4D0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B4D0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206B4D0 */ if (_t7) goto L_0206B4D4; else goto L_0206B4E4;
|
|
L_0206B4D4: ; // 0x206b4d4
|
|
/* 0206B4D4 */ return;
|
|
L_0206B4D8: ; // 0x206b4d8
|
|
/* 0206B4D8 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B4D8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206B4DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B4E0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B4E0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206B4E0 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206B4E0 */ goto L_0206B4E4;
|
|
L_0206B4E4: ; // 0x206b4e4
|
|
/* 0206B4E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206B4E8 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206B4E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B4EC */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B4EC */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206B4EC */ if (_t13) goto L_0206B4F0; else goto L_0206B4F8;
|
|
L_0206B4F0: ; // 0x206b4f0
|
|
/* 0206B4F0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B4F4 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206B4F8: ; // 0x206b4f8
|
|
/* 0206B4F8 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B4F8 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206B4FC */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206B4FC */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206B500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B504 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B504 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206B508 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206B50C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B50C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206B50C */ if (_t18) goto L_0206B524; else goto L_0206B510;
|
|
L_0206B510: ; // 0x206b510
|
|
/* 0206B510 */ /* nop */
|
|
/* 0206B514 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206B514 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206B518 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B51C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206B520 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B520 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206B524: ; // 0x206b524
|
|
/* 0206B524 */ cpu->ctr = cpu->r[11];
|
|
/* 0206B528 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206B52C @ 0x206b52c
|
|
void Gambit_fn_0206B52C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206B52C: ; // 0x206b52c
|
|
/* 0206B52C */ cpu->r[0] = cpu->lr;
|
|
/* 0206B530 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B530 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B530 */ cpu->r[1] = _t0;
|
|
/* 0206B534 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B534 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206B538 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206B53C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B53C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206B540 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206B540 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206B544 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206B548 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B54C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206B54C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206B550 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B550 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B550 */ if (_t6) goto L_0206B578; else goto L_0206B554;
|
|
L_0206B554: ; // 0x206b554
|
|
/* 0206B554 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206B554 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206B558 */ /* nop */
|
|
/* 0206B55C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206B560 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B560 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206B560 */ if (_t9) goto L_0206B564; else goto L_0206B578;
|
|
L_0206B564: ; // 0x206b564
|
|
/* 0206B564 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206B564 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B568 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206B568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B56C */ cpu->ctr = cpu->r[0];
|
|
/* 0206B570 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B574 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B578: ; // 0x206b578
|
|
/* 0206B578 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B57C */ Gambit_fn_0206B4A4(cpu);
|
|
/* 0206B580 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B584 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206B588 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B588 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206B58C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B58C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206B590 */ cpu->lr = cpu->r[0];
|
|
/* 0206B594 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B598 */ return;
|
|
}
|
|
|
|
// fn_0206B530 @ 0x206b530
|
|
void Gambit_fn_0206B530(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206B530: ; // 0x206b530
|
|
/* 0206B530 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B530 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B530 */ cpu->r[1] = _t0;
|
|
/* 0206B534 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B534 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206B538 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206B53C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B53C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206B540 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206B540 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206B544 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206B548 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B54C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206B54C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206B550 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B550 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B550 */ if (_t6) goto L_0206B578; else goto L_0206B554;
|
|
L_0206B554: ; // 0x206b554
|
|
/* 0206B554 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206B554 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206B558 */ /* nop */
|
|
/* 0206B55C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206B560 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B560 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206B560 */ if (_t9) goto L_0206B564; else goto L_0206B578;
|
|
L_0206B564: ; // 0x206b564
|
|
/* 0206B564 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206B564 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B568 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206B568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B56C */ cpu->ctr = cpu->r[0];
|
|
/* 0206B570 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B574 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B578: ; // 0x206b578
|
|
/* 0206B578 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B57C */ Gambit_fn_0206B4A4(cpu);
|
|
/* 0206B580 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B584 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206B588 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B588 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206B58C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B58C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206B590 */ cpu->lr = cpu->r[0];
|
|
/* 0206B594 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B598 */ return;
|
|
}
|
|
|
|
// fn_0206B59C @ 0x206b59c
|
|
void Gambit_fn_0206B59C(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_0206B59C: ; // 0x206b59c
|
|
/* 0206B59C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206B59C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206B5A0 */ /* nop */
|
|
/* 0206B5A4 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0206B5A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206B5A8 */ cpu->r[7] = cpu->r[0];
|
|
/* 0206B5AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0206B5B0 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 0206B5B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206B5B4 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B5B4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206B5B4 */ if (_t4) goto L_0206B5B8; else goto L_0206B5D0;
|
|
L_0206B5B8: ; // 0x206b5b8
|
|
/* 0206B5B8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B5BC */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 0206B5C0 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206B5C0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206B5C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206B5C8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B5C8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206B5C8 */ if (_t7) goto L_0206B5CC; else goto L_0206B5DC;
|
|
L_0206B5CC: ; // 0x206b5cc
|
|
/* 0206B5CC */ return;
|
|
L_0206B5D0: ; // 0x206b5d0
|
|
/* 0206B5D0 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B5D0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206B5D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206B5D8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B5D8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206B5D8 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206B5D8 */ goto L_0206B5DC;
|
|
L_0206B5DC: ; // 0x206b5dc
|
|
/* 0206B5DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0206B5E0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206B5E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B5E4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B5E4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206B5E4 */ if (_t13) goto L_0206B5E8; else goto L_0206B5F0;
|
|
L_0206B5E8: ; // 0x206b5e8
|
|
/* 0206B5E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B5EC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206B5F0: ; // 0x206b5f0
|
|
/* 0206B5F0 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B5F0 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206B5F4 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206B5F4 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206B5F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0206B5FC */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B5FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206B600 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 0206B604 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B604 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206B604 */ if (_t18) goto L_0206B61C; else goto L_0206B608;
|
|
L_0206B608: ; // 0x206b608
|
|
/* 0206B608 */ /* nop */
|
|
/* 0206B60C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206B60C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206B610 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B614 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0206B618 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B618 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206B61C: ; // 0x206b61c
|
|
/* 0206B61C */ cpu->ctr = cpu->r[11];
|
|
/* 0206B620 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206B624 @ 0x206b624
|
|
void Gambit_fn_0206B624(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206B624: ; // 0x206b624
|
|
/* 0206B624 */ cpu->r[0] = cpu->lr;
|
|
/* 0206B628 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B628 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B628 */ cpu->r[1] = _t0;
|
|
/* 0206B62C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B62C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206B630 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B630 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206B634 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206B638 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B638 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206B63C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206B63C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206B640 */ /* nop */
|
|
/* 0206B644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206B648 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206B64C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B64C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B64C */ if (_t6) goto L_0206B650; else goto L_0206B664;
|
|
L_0206B650: ; // 0x206b650
|
|
/* 0206B650 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206B650 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206B654 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206B654 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206B658 */ cpu->ctr = cpu->r[0];
|
|
/* 0206B65C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B660 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B664: ; // 0x206b664
|
|
/* 0206B664 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B668 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206B66C */ Gambit_fn_0206B59C(cpu);
|
|
/* 0206B670 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B674 */ /* nop */
|
|
/* 0206B678 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206B67C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B680 */ Gambit_fn_0206B41C(cpu);
|
|
/* 0206B684 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B684 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206B688 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B688 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B68C */ cpu->lr = cpu->r[0];
|
|
/* 0206B690 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B690 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B694 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B698 */ return;
|
|
}
|
|
|
|
// fn_0206B628 @ 0x206b628
|
|
void Gambit_fn_0206B628(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206B628: ; // 0x206b628
|
|
/* 0206B628 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B628 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B628 */ cpu->r[1] = _t0;
|
|
/* 0206B62C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B62C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206B630 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B630 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206B634 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206B638 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B638 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206B63C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206B63C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206B640 */ /* nop */
|
|
/* 0206B644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206B648 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206B64C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B64C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B64C */ if (_t6) goto L_0206B650; else goto L_0206B664;
|
|
L_0206B650: ; // 0x206b650
|
|
/* 0206B650 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206B650 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206B654 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206B654 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206B658 */ cpu->ctr = cpu->r[0];
|
|
/* 0206B65C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B660 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B664: ; // 0x206b664
|
|
/* 0206B664 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B668 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206B66C */ Gambit_fn_0206B59C(cpu);
|
|
/* 0206B670 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B674 */ /* nop */
|
|
/* 0206B678 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206B67C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B680 */ Gambit_fn_0206B41C(cpu);
|
|
/* 0206B684 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B684 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206B688 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B688 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B68C */ cpu->lr = cpu->r[0];
|
|
/* 0206B690 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B690 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B694 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B698 */ return;
|
|
}
|
|
|
|
// fn_0206B69C @ 0x206b69c
|
|
void Gambit_fn_0206B69C(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_0206B69C: ; // 0x206b69c
|
|
/* 0206B69C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206B69C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206B6A0 */ /* nop */
|
|
/* 0206B6A4 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0206B6A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206B6A8 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206B6AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206B6B0 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0206B6B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206B6B4 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B6B4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206B6B4 */ if (_t4) goto L_0206B6B8; else goto L_0206B6D0;
|
|
L_0206B6B8: ; // 0x206b6b8
|
|
/* 0206B6B8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B6BC */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206B6C0 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206B6C0 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206B6C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B6C8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B6C8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206B6C8 */ if (_t7) goto L_0206B6CC; else goto L_0206B6DC;
|
|
L_0206B6CC: ; // 0x206b6cc
|
|
/* 0206B6CC */ return;
|
|
L_0206B6D0: ; // 0x206b6d0
|
|
/* 0206B6D0 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B6D0 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206B6D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B6D8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B6D8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206B6D8 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206B6D8 */ goto L_0206B6DC;
|
|
L_0206B6DC: ; // 0x206b6dc
|
|
/* 0206B6DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206B6E0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206B6E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B6E4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B6E4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206B6E4 */ if (_t13) goto L_0206B6E8; else goto L_0206B6F0;
|
|
L_0206B6E8: ; // 0x206b6e8
|
|
/* 0206B6E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B6EC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206B6F0: ; // 0x206b6f0
|
|
/* 0206B6F0 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B6F0 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206B6F4 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206B6F4 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206B6F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B6FC */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B6FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206B700 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206B704 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B704 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206B704 */ if (_t18) goto L_0206B71C; else goto L_0206B708;
|
|
L_0206B708: ; // 0x206b708
|
|
/* 0206B708 */ /* nop */
|
|
/* 0206B70C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206B70C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206B710 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B714 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206B718 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B718 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206B71C: ; // 0x206b71c
|
|
/* 0206B71C */ cpu->ctr = cpu->r[11];
|
|
/* 0206B720 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206B724 @ 0x206b724
|
|
void Gambit_fn_0206B724(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_0206B724: ; // 0x206b724
|
|
/* 0206B724 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206B724 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206B728 */ /* nop */
|
|
/* 0206B72C */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 0206B72C */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206B730 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206B734 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206B738 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0206B738 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206B73C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B73C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206B73C */ if (_t4) goto L_0206B740; else goto L_0206B758;
|
|
L_0206B740: ; // 0x206b740
|
|
/* 0206B740 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B744 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206B748 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206B748 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206B74C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B750 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B750 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206B750 */ if (_t7) goto L_0206B754; else goto L_0206B764;
|
|
L_0206B754: ; // 0x206b754
|
|
/* 0206B754 */ return;
|
|
L_0206B758: ; // 0x206b758
|
|
/* 0206B758 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B758 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206B75C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B760 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B760 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206B760 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206B760 */ goto L_0206B764;
|
|
L_0206B764: ; // 0x206b764
|
|
/* 0206B764 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206B768 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206B768 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B76C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B76C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206B76C */ if (_t13) goto L_0206B770; else goto L_0206B778;
|
|
L_0206B770: ; // 0x206b770
|
|
/* 0206B770 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B774 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206B778: ; // 0x206b778
|
|
/* 0206B778 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B778 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206B77C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206B77C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206B780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B784 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B784 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206B788 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206B78C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B78C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206B78C */ if (_t18) goto L_0206B7A4; else goto L_0206B790;
|
|
L_0206B790: ; // 0x206b790
|
|
/* 0206B790 */ /* nop */
|
|
/* 0206B794 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206B794 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206B798 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B79C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206B7A0 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B7A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206B7A4: ; // 0x206b7a4
|
|
/* 0206B7A4 */ cpu->ctr = cpu->r[11];
|
|
/* 0206B7A8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206B7AC @ 0x206b7ac
|
|
void Gambit_fn_0206B7AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206B7AC: ; // 0x206b7ac
|
|
/* 0206B7AC */ cpu->r[0] = cpu->lr;
|
|
/* 0206B7B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B7B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B7B0 */ cpu->r[1] = _t0;
|
|
/* 0206B7B4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B7B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206B7B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206B7BC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B7BC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206B7C0 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206B7C0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206B7C4 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206B7C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B7CC */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206B7CC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206B7D0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B7D0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B7D0 */ if (_t6) goto L_0206B7F8; else goto L_0206B7D4;
|
|
L_0206B7D4: ; // 0x206b7d4
|
|
/* 0206B7D4 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206B7D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206B7D8 */ /* nop */
|
|
/* 0206B7DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206B7E0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B7E0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206B7E0 */ if (_t9) goto L_0206B7E4; else goto L_0206B7F8;
|
|
L_0206B7E4: ; // 0x206b7e4
|
|
/* 0206B7E4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206B7E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B7E8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206B7E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B7EC */ cpu->ctr = cpu->r[0];
|
|
/* 0206B7F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B7F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B7F8: ; // 0x206b7f8
|
|
/* 0206B7F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B7FC */ Gambit_fn_0206B724(cpu);
|
|
/* 0206B800 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B804 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206B808 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B808 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206B80C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B80C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206B810 */ cpu->lr = cpu->r[0];
|
|
/* 0206B814 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B818 */ return;
|
|
}
|
|
|
|
// fn_0206B7B0 @ 0x206b7b0
|
|
void Gambit_fn_0206B7B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206B7B0: ; // 0x206b7b0
|
|
/* 0206B7B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B7B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B7B0 */ cpu->r[1] = _t0;
|
|
/* 0206B7B4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B7B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206B7B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206B7BC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B7BC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206B7C0 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206B7C0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206B7C4 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206B7C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B7CC */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206B7CC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206B7D0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B7D0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B7D0 */ if (_t6) goto L_0206B7F8; else goto L_0206B7D4;
|
|
L_0206B7D4: ; // 0x206b7d4
|
|
/* 0206B7D4 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206B7D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206B7D8 */ /* nop */
|
|
/* 0206B7DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206B7E0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B7E0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206B7E0 */ if (_t9) goto L_0206B7E4; else goto L_0206B7F8;
|
|
L_0206B7E4: ; // 0x206b7e4
|
|
/* 0206B7E4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206B7E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B7E8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206B7E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B7EC */ cpu->ctr = cpu->r[0];
|
|
/* 0206B7F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B7F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B7F8: ; // 0x206b7f8
|
|
/* 0206B7F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B7FC */ Gambit_fn_0206B724(cpu);
|
|
/* 0206B800 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206B804 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206B808 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B808 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206B80C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B80C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206B810 */ cpu->lr = cpu->r[0];
|
|
/* 0206B814 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B818 */ return;
|
|
}
|
|
|
|
// fn_0206B81C @ 0x206b81c
|
|
void Gambit_fn_0206B81C(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_0206B81C: ; // 0x206b81c
|
|
/* 0206B81C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206B81C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206B820 */ /* nop */
|
|
/* 0206B824 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0206B824 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206B828 */ cpu->r[7] = cpu->r[0];
|
|
/* 0206B82C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0206B830 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 0206B830 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206B834 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B834 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206B834 */ if (_t4) goto L_0206B838; else goto L_0206B850;
|
|
L_0206B838: ; // 0x206b838
|
|
/* 0206B838 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B83C */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 0206B840 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206B840 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206B844 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206B848 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B848 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206B848 */ if (_t7) goto L_0206B84C; else goto L_0206B85C;
|
|
L_0206B84C: ; // 0x206b84c
|
|
/* 0206B84C */ return;
|
|
L_0206B850: ; // 0x206b850
|
|
/* 0206B850 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B850 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206B854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206B858 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B858 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206B858 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206B858 */ goto L_0206B85C;
|
|
L_0206B85C: ; // 0x206b85c
|
|
/* 0206B85C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0206B860 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206B860 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B864 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B864 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206B864 */ if (_t13) goto L_0206B868; else goto L_0206B870;
|
|
L_0206B868: ; // 0x206b868
|
|
/* 0206B868 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B86C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206B870: ; // 0x206b870
|
|
/* 0206B870 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B870 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206B874 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206B874 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206B878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0206B87C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B87C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206B880 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 0206B884 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B884 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206B884 */ if (_t18) goto L_0206B89C; else goto L_0206B888;
|
|
L_0206B888: ; // 0x206b888
|
|
/* 0206B888 */ /* nop */
|
|
/* 0206B88C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206B88C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206B890 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B894 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0206B898 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B898 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206B89C: ; // 0x206b89c
|
|
/* 0206B89C */ cpu->ctr = cpu->r[11];
|
|
/* 0206B8A0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206B8A4 @ 0x206b8a4
|
|
void Gambit_fn_0206B8A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206B8A4: ; // 0x206b8a4
|
|
/* 0206B8A4 */ cpu->r[0] = cpu->lr;
|
|
/* 0206B8A8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B8A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B8A8 */ cpu->r[1] = _t0;
|
|
/* 0206B8AC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B8AC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206B8B0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B8B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206B8B4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206B8B8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B8B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206B8BC */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206B8BC */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206B8C0 */ /* nop */
|
|
/* 0206B8C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206B8C8 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206B8CC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B8CC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B8CC */ if (_t6) goto L_0206B8D0; else goto L_0206B8E4;
|
|
L_0206B8D0: ; // 0x206b8d0
|
|
/* 0206B8D0 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206B8D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206B8D4 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206B8D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206B8D8 */ cpu->ctr = cpu->r[0];
|
|
/* 0206B8DC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B8E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B8E4: ; // 0x206b8e4
|
|
/* 0206B8E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B8E8 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206B8EC */ Gambit_fn_0206B81C(cpu);
|
|
/* 0206B8F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B8F4 */ /* nop */
|
|
/* 0206B8F8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206B8FC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B900 */ Gambit_fn_0206B69C(cpu);
|
|
/* 0206B904 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B904 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206B908 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B908 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B90C */ cpu->lr = cpu->r[0];
|
|
/* 0206B910 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B910 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B914 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B918 */ return;
|
|
}
|
|
|
|
// fn_0206B8A8 @ 0x206b8a8
|
|
void Gambit_fn_0206B8A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206B8A8: ; // 0x206b8a8
|
|
/* 0206B8A8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206B8A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206B8A8 */ cpu->r[1] = _t0;
|
|
/* 0206B8AC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B8AC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206B8B0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B8B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206B8B4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206B8B8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B8B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206B8BC */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206B8BC */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206B8C0 */ /* nop */
|
|
/* 0206B8C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206B8C8 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206B8CC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B8CC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206B8CC */ if (_t6) goto L_0206B8D0; else goto L_0206B8E4;
|
|
L_0206B8D0: ; // 0x206b8d0
|
|
/* 0206B8D0 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206B8D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206B8D4 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206B8D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206B8D8 */ cpu->ctr = cpu->r[0];
|
|
/* 0206B8DC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B8E0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206B8E4: ; // 0x206b8e4
|
|
/* 0206B8E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B8E8 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206B8EC */ Gambit_fn_0206B81C(cpu);
|
|
/* 0206B8F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B8F4 */ /* nop */
|
|
/* 0206B8F8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206B8FC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206B900 */ Gambit_fn_0206B69C(cpu);
|
|
/* 0206B904 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206B904 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206B908 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206B908 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206B90C */ cpu->lr = cpu->r[0];
|
|
/* 0206B910 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206B910 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B914 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206B918 */ return;
|
|
}
|
|
|
|
// fn_0206B91C @ 0x206b91c
|
|
void Gambit_fn_0206B91C(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_0206B91C: ; // 0x206b91c
|
|
/* 0206B91C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206B91C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206B920 */ /* nop */
|
|
/* 0206B924 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0206B924 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206B928 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206B92C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206B930 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0206B930 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206B934 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B934 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206B934 */ if (_t4) goto L_0206B938; else goto L_0206B950;
|
|
L_0206B938: ; // 0x206b938
|
|
/* 0206B938 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B93C */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206B940 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206B940 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206B944 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B948 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B948 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206B948 */ if (_t7) goto L_0206B94C; else goto L_0206B95C;
|
|
L_0206B94C: ; // 0x206b94c
|
|
/* 0206B94C */ return;
|
|
L_0206B950: ; // 0x206b950
|
|
/* 0206B950 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B950 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206B954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B958 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B958 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206B958 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206B958 */ goto L_0206B95C;
|
|
L_0206B95C: ; // 0x206b95c
|
|
/* 0206B95C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206B960 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206B960 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B964 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B964 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206B964 */ if (_t13) goto L_0206B968; else goto L_0206B970;
|
|
L_0206B968: ; // 0x206b968
|
|
/* 0206B968 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B96C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206B970: ; // 0x206b970
|
|
/* 0206B970 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B970 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206B974 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206B974 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206B978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206B97C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B97C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206B980 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206B984 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B984 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206B984 */ if (_t18) goto L_0206B99C; else goto L_0206B988;
|
|
L_0206B988: ; // 0x206b988
|
|
/* 0206B988 */ /* nop */
|
|
/* 0206B98C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206B98C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206B990 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B994 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206B998 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206B998 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206B99C: ; // 0x206b99c
|
|
/* 0206B99C */ cpu->ctr = cpu->r[11];
|
|
/* 0206B9A0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206B9A4 @ 0x206b9a4
|
|
void Gambit_fn_0206B9A4(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_0206B9A4: ; // 0x206b9a4
|
|
/* 0206B9A4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206B9A4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206B9A8 */ /* nop */
|
|
/* 0206B9AC */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 0206B9AC */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206B9B0 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206B9B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206B9B8 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0206B9B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206B9BC */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B9BC */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206B9BC */ if (_t4) goto L_0206B9C0; else goto L_0206B9D8;
|
|
L_0206B9C0: ; // 0x206b9c0
|
|
/* 0206B9C0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B9C4 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206B9C8 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206B9C8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206B9CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B9D0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B9D0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206B9D0 */ if (_t7) goto L_0206B9D4; else goto L_0206B9E4;
|
|
L_0206B9D4: ; // 0x206b9d4
|
|
/* 0206B9D4 */ return;
|
|
L_0206B9D8: ; // 0x206b9d8
|
|
/* 0206B9D8 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B9D8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206B9DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206B9E0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206B9E0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206B9E0 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206B9E0 */ goto L_0206B9E4;
|
|
L_0206B9E4: ; // 0x206b9e4
|
|
/* 0206B9E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206B9E8 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206B9E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206B9EC */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206B9EC */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206B9EC */ if (_t13) goto L_0206B9F0; else goto L_0206B9F8;
|
|
L_0206B9F0: ; // 0x206b9f0
|
|
/* 0206B9F0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206B9F4 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206B9F8: ; // 0x206b9f8
|
|
/* 0206B9F8 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206B9F8 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206B9FC */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206B9FC */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206BA00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206BA04 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206BA04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206BA08 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206BA0C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206BA0C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206BA0C */ if (_t18) goto L_0206BA24; else goto L_0206BA10;
|
|
L_0206BA10: ; // 0x206ba10
|
|
/* 0206BA10 */ /* nop */
|
|
/* 0206BA14 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206BA14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206BA18 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206BA1C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206BA20 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206BA20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206BA24: ; // 0x206ba24
|
|
/* 0206BA24 */ cpu->ctr = cpu->r[11];
|
|
/* 0206BA28 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206BA2C @ 0x206ba2c
|
|
void Gambit_fn_0206BA2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206BA2C: ; // 0x206ba2c
|
|
/* 0206BA2C */ cpu->r[0] = cpu->lr;
|
|
/* 0206BA30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206BA30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206BA30 */ cpu->r[1] = _t0;
|
|
/* 0206BA34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BA34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206BA38 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206BA3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BA3C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206BA40 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206BA40 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206BA44 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206BA48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206BA4C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206BA4C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206BA50 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BA50 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206BA50 */ if (_t6) goto L_0206BA78; else goto L_0206BA54;
|
|
L_0206BA54: ; // 0x206ba54
|
|
/* 0206BA54 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206BA54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206BA58 */ /* nop */
|
|
/* 0206BA5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206BA60 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BA60 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206BA60 */ if (_t9) goto L_0206BA64; else goto L_0206BA78;
|
|
L_0206BA64: ; // 0x206ba64
|
|
/* 0206BA64 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206BA64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206BA68 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206BA68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206BA6C */ cpu->ctr = cpu->r[0];
|
|
/* 0206BA70 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206BA74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206BA78: ; // 0x206ba78
|
|
/* 0206BA78 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206BA7C */ Gambit_fn_0206B9A4(cpu);
|
|
/* 0206BA80 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206BA84 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206BA88 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BA88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206BA8C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BA8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206BA90 */ cpu->lr = cpu->r[0];
|
|
/* 0206BA94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206BA98 */ return;
|
|
}
|
|
|
|
// fn_0206BA30 @ 0x206ba30
|
|
void Gambit_fn_0206BA30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206BA30: ; // 0x206ba30
|
|
/* 0206BA30 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206BA30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206BA30 */ cpu->r[1] = _t0;
|
|
/* 0206BA34 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BA34 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206BA38 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206BA3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BA3C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206BA40 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206BA40 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206BA44 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206BA48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206BA4C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206BA4C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206BA50 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BA50 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206BA50 */ if (_t6) goto L_0206BA78; else goto L_0206BA54;
|
|
L_0206BA54: ; // 0x206ba54
|
|
/* 0206BA54 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206BA54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206BA58 */ /* nop */
|
|
/* 0206BA5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206BA60 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BA60 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206BA60 */ if (_t9) goto L_0206BA64; else goto L_0206BA78;
|
|
L_0206BA64: ; // 0x206ba64
|
|
/* 0206BA64 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206BA64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206BA68 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206BA68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206BA6C */ cpu->ctr = cpu->r[0];
|
|
/* 0206BA70 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206BA74 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206BA78: ; // 0x206ba78
|
|
/* 0206BA78 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206BA7C */ Gambit_fn_0206B9A4(cpu);
|
|
/* 0206BA80 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206BA84 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206BA88 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BA88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206BA8C */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BA8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206BA90 */ cpu->lr = cpu->r[0];
|
|
/* 0206BA94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206BA98 */ return;
|
|
}
|
|
|
|
// fn_0206BA9C @ 0x206ba9c
|
|
void Gambit_fn_0206BA9C(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_0206BA9C: ; // 0x206ba9c
|
|
/* 0206BA9C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206BA9C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206BAA0 */ /* nop */
|
|
/* 0206BAA4 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0206BAA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206BAA8 */ cpu->r[7] = cpu->r[0];
|
|
/* 0206BAAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0206BAB0 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 0206BAB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206BAB4 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206BAB4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206BAB4 */ if (_t4) goto L_0206BAB8; else goto L_0206BAD0;
|
|
L_0206BAB8: ; // 0x206bab8
|
|
/* 0206BAB8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206BABC */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 0206BAC0 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206BAC0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206BAC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206BAC8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BAC8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206BAC8 */ if (_t7) goto L_0206BACC; else goto L_0206BADC;
|
|
L_0206BACC: ; // 0x206bacc
|
|
/* 0206BACC */ return;
|
|
L_0206BAD0: ; // 0x206bad0
|
|
/* 0206BAD0 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206BAD0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206BAD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206BAD8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BAD8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206BAD8 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206BAD8 */ goto L_0206BADC;
|
|
L_0206BADC: ; // 0x206badc
|
|
/* 0206BADC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0206BAE0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206BAE0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206BAE4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206BAE4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206BAE4 */ if (_t13) goto L_0206BAE8; else goto L_0206BAF0;
|
|
L_0206BAE8: ; // 0x206bae8
|
|
/* 0206BAE8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206BAEC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206BAF0: ; // 0x206baf0
|
|
/* 0206BAF0 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206BAF0 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206BAF4 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206BAF4 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206BAF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0206BAFC */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206BAFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206BB00 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 0206BB04 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206BB04 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206BB04 */ if (_t18) goto L_0206BB1C; else goto L_0206BB08;
|
|
L_0206BB08: ; // 0x206bb08
|
|
/* 0206BB08 */ /* nop */
|
|
/* 0206BB0C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206BB0C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206BB10 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206BB14 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0206BB18 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206BB18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206BB1C: ; // 0x206bb1c
|
|
/* 0206BB1C */ cpu->ctr = cpu->r[11];
|
|
/* 0206BB20 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206BB24 @ 0x206bb24
|
|
void Gambit_fn_0206BB24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206BB24: ; // 0x206bb24
|
|
/* 0206BB24 */ cpu->r[0] = cpu->lr;
|
|
/* 0206BB28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206BB28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206BB28 */ cpu->r[1] = _t0;
|
|
/* 0206BB2C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BB2C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206BB30 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BB30 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206BB34 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206BB38 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BB38 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206BB3C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206BB3C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206BB40 */ /* nop */
|
|
/* 0206BB44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206BB48 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206BB4C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BB4C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206BB4C */ if (_t6) goto L_0206BB50; else goto L_0206BB64;
|
|
L_0206BB50: ; // 0x206bb50
|
|
/* 0206BB50 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206BB50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206BB54 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206BB54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206BB58 */ cpu->ctr = cpu->r[0];
|
|
/* 0206BB5C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BB60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206BB64: ; // 0x206bb64
|
|
/* 0206BB64 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BB68 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206BB6C */ Gambit_fn_0206BA9C(cpu);
|
|
/* 0206BB70 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BB74 */ /* nop */
|
|
/* 0206BB78 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206BB7C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BB80 */ Gambit_fn_0206B91C(cpu);
|
|
/* 0206BB84 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BB84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206BB88 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BB88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206BB8C */ cpu->lr = cpu->r[0];
|
|
/* 0206BB90 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BB90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206BB94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206BB98 */ return;
|
|
}
|
|
|
|
// fn_0206BB28 @ 0x206bb28
|
|
void Gambit_fn_0206BB28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206BB28: ; // 0x206bb28
|
|
/* 0206BB28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206BB28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206BB28 */ cpu->r[1] = _t0;
|
|
/* 0206BB2C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BB2C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206BB30 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BB30 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206BB34 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206BB38 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BB38 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206BB3C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206BB3C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206BB40 */ /* nop */
|
|
/* 0206BB44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206BB48 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206BB4C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BB4C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206BB4C */ if (_t6) goto L_0206BB50; else goto L_0206BB64;
|
|
L_0206BB50: ; // 0x206bb50
|
|
/* 0206BB50 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206BB50 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206BB54 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206BB54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206BB58 */ cpu->ctr = cpu->r[0];
|
|
/* 0206BB5C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BB60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206BB64: ; // 0x206bb64
|
|
/* 0206BB64 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BB68 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206BB6C */ Gambit_fn_0206BA9C(cpu);
|
|
/* 0206BB70 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BB74 */ /* nop */
|
|
/* 0206BB78 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206BB7C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BB80 */ Gambit_fn_0206B91C(cpu);
|
|
/* 0206BB84 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BB84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206BB88 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BB88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206BB8C */ cpu->lr = cpu->r[0];
|
|
/* 0206BB90 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BB90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206BB94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206BB98 */ return;
|
|
}
|
|
|
|
// fn_0206BB9C @ 0x206bb9c
|
|
void Gambit_fn_0206BB9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0206BB9C: ; // 0x206bb9c
|
|
/* 0206BB9C */ cpu->r[0] = cpu->lr;
|
|
/* 0206BBA0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0206BBA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206BBA0 */ cpu->r[1] = _t0;
|
|
/* 0206BBA4 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BBA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206BBA8 */ cpu->r[10] = 0x10000000u;
|
|
/* 0206BBAC */ cpu->r[10] = cpu->r[10] + 0x00007A74u;
|
|
/* 0206BBB0 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206BBB4 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BBB4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206BBB8 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206BBBC */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BBBC */ rbrew_write32(cpu->mem, _t3, cpu->r[10]);
|
|
/* 0206BBC0 */ cpu->r[0] = cpu->r[0] + 0x000079DCu;
|
|
/* 0206BBC4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206BBC8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BBC8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0206BBCC */ Gambit_fn_027B1F84(cpu);
|
|
/* 0206BBD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BBD4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BBD4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206BBD4 */ if (_t6) goto L_0206BBEC; else goto L_0206BBD8;
|
|
L_0206BBD8: ; // 0x206bbd8
|
|
/* 0206BBD8 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 0206BBD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206BBDC */ _t8 = cpu->r[11] + 0x000000ECu;
|
|
/* 0206BBDC */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206BBE0 */ cpu->ctr = cpu->r[12];
|
|
/* 0206BBE4 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206BBE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206BBEC: ; // 0x206bbec
|
|
/* 0206BBEC */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BBEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206BBF0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BBF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206BBF4 */ cpu->lr = cpu->r[0];
|
|
/* 0206BBF8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0206BBFC */ return;
|
|
}
|
|
|
|
// fn_0206BBA0 @ 0x206bba0
|
|
void Gambit_fn_0206BBA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0206BBA0: ; // 0x206bba0
|
|
/* 0206BBA0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0206BBA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206BBA0 */ cpu->r[1] = _t0;
|
|
/* 0206BBA4 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BBA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206BBA8 */ cpu->r[10] = 0x10000000u;
|
|
/* 0206BBAC */ cpu->r[10] = cpu->r[10] + 0x00007A74u;
|
|
/* 0206BBB0 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206BBB4 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BBB4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206BBB8 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206BBBC */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BBBC */ rbrew_write32(cpu->mem, _t3, cpu->r[10]);
|
|
/* 0206BBC0 */ cpu->r[0] = cpu->r[0] + 0x000079DCu;
|
|
/* 0206BBC4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206BBC8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BBC8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0206BBCC */ Gambit_fn_027B1F84(cpu);
|
|
/* 0206BBD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BBD4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BBD4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206BBD4 */ if (_t6) goto L_0206BBEC; else goto L_0206BBD8;
|
|
L_0206BBD8: ; // 0x206bbd8
|
|
/* 0206BBD8 */ _t7 = cpu->r[3] + 0x00000004u;
|
|
/* 0206BBD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206BBDC */ _t8 = cpu->r[11] + 0x000000ECu;
|
|
/* 0206BBDC */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206BBE0 */ cpu->ctr = cpu->r[12];
|
|
/* 0206BBE4 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206BBE8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206BBEC: ; // 0x206bbec
|
|
/* 0206BBEC */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BBEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206BBF0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BBF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206BBF4 */ cpu->lr = cpu->r[0];
|
|
/* 0206BBF8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0206BBFC */ return;
|
|
}
|
|
|
|
// fn_0206BC00 @ 0x206bc00
|
|
void Gambit_fn_0206BC00(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;
|
|
|
|
L_0206BC00: ; // 0x206bc00
|
|
/* 0206BC00 */ cpu->r[0] = cpu->lr;
|
|
/* 0206BC04 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0206BC04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206BC04 */ cpu->r[1] = _t0;
|
|
/* 0206BC08 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BC08 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0206BC0C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BC0C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0206BC10 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0206BC10 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0206BC14 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BC14 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0206BC18 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206BC18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206BC1C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BC1C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206BC20 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BC20 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206BC20 */ if (_t7) goto L_0206BC24; else goto L_0206BC34;
|
|
L_0206BC24: ; // 0x206bc24
|
|
/* 0206BC24 */ cpu->r[3] = 0x00000038u;
|
|
/* 0206BC28 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206BC2C */ cpu->r[30] = cpu->r[3];
|
|
/* 0206BC2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206BC30 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BC30 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206BC30 */ if (_t9) goto L_0206BE24; else goto L_0206BC34;
|
|
L_0206BC34: ; // 0x206bc34
|
|
/* 0206BC34 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BC34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BC38 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BC38 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0206BC38 */ if (_t11) goto L_0206BC3C; else goto L_0206BC4C;
|
|
L_0206BC3C: ; // 0x206bc3c
|
|
/* 0206BC3C */ cpu->r[3] = 0x00000008u;
|
|
/* 0206BC40 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206BC44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BC48 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BC48 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206BC48 */ if (_t13) goto L_0206BC60; else goto L_0206BC4C;
|
|
L_0206BC4C: ; // 0x206bc4c
|
|
/* 0206BC4C */ cpu->r[8] = 0x10000000u;
|
|
/* 0206BC50 */ cpu->r[7] = 0x00000000u;
|
|
/* 0206BC54 */ cpu->r[8] = cpu->r[8] + 0x00007A0Cu;
|
|
/* 0206BC58 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 0206BC58 */ rbrew_write32(cpu->mem, _t14, cpu->r[7]);
|
|
/* 0206BC5C */ _t15 = cpu->r[3] + 0x00000004u;
|
|
/* 0206BC5C */ rbrew_write32(cpu->mem, _t15, cpu->r[8]);
|
|
L_0206BC60: ; // 0x206bc60
|
|
/* 0206BC60 */ cpu->r[9] = 0x10000000u;
|
|
/* 0206BC64 */ cpu->r[28] = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206BC64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0206BC68 */ cpu->r[9] = cpu->r[9] + 0x00007A34u;
|
|
/* 0206BC6C */ cpu->r[31] = 0x10110000u;
|
|
/* 0206BC70 */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 0206BC70 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 0206BC74 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BC74 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206BC74 */ if (_t18) goto L_0206BC78; else goto L_0206BCE4;
|
|
L_0206BC78: ; // 0x206bc78
|
|
/* 0206BC78 */ cpu->r[3] = 0x0000001Cu;
|
|
/* 0206BC7C */ Gambit_fn_02801A78(cpu);
|
|
/* 0206BC80 */ cpu->r[28] = cpu->r[3];
|
|
/* 0206BC80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0206BC84 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BC84 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0206BC84 */ if (_t20) goto L_0206BC88; else goto L_0206BCE4;
|
|
L_0206BC88: ; // 0x206bc88
|
|
/* 0206BC88 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206BC8C */ _t21 = cpu->r[31] + 0x0000739Au;
|
|
/* 0206BC8C */ cpu->r[31] = rbrew_read16(cpu->mem, _t21);
|
|
/* 0206BC90 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206BC94 */ Gambit_fn_026DD5C4(cpu);
|
|
/* 0206BC98 */ _t22 = cpu->r[30] + 0x00000018u;
|
|
/* 0206BC98 */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 0206BC9C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BCA0 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206BCA4 */ Gambit_fn_0206BB9C(cpu);
|
|
/* 0206BCA8 */ _t23 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206BCA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0206BCAC */ _t24 = cpu->r[8] + 0x00000000u;
|
|
/* 0206BCAC */ rbrew_write16(cpu->mem, _t24, (uint16_t)cpu->r[31]);
|
|
/* 0206BCB0 */ _t25 = cpu->r[30] + 0x00000020u;
|
|
/* 0206BCB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0206BCB4 */ _t26 = cpu->r[9] + 0x00000014u;
|
|
/* 0206BCB4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0206BCB8 */ cpu->ctr = cpu->r[10];
|
|
/* 0206BCBC */ cpu->r[3] = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206BCC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206BCC4 */ _t27 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206BCC4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0206BCC8 */ cpu->r[8] = cpu->r[6];
|
|
/* 0206BCCC */ _t28 = cpu->r[8] + 0x00000000u;
|
|
/* 0206BCCC */ cpu->r[0] = rbrew_read16(cpu->mem, _t28);
|
|
/* 0206BCD0 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206BCD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0206BCD8 */ cpu->r[0] = 0x00080000u;
|
|
/* 0206BCDC */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BCDC */ _t30 = _t29 & 0x00000001u;
|
|
/* 0206BCDC */ if (_t30) goto L_0206BCE0; else goto L_0206BDDC;
|
|
L_0206BCE0: ; // 0x206bce0
|
|
/* 0206BCE0 */ goto L_0206BE00;
|
|
L_0206BCE4: ; // 0x206bce4
|
|
/* 0206BCE4 */ cpu->r[29] = cpu->r[28];
|
|
/* 0206BCE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0206BCE8 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BCE8 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0206BCE8 */ if (_t32) goto L_0206BCEC; else goto L_0206BD10;
|
|
L_0206BCEC: ; // 0x206bcec
|
|
/* 0206BCEC */ cpu->r[3] = 0x0000001Cu;
|
|
/* 0206BCF0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206BCF4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0206BCF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0206BCF8 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BCF8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0206BCF8 */ if (_t34) goto L_0206BCFC; else goto L_0206BD10;
|
|
L_0206BCFC: ; // 0x206bcfc
|
|
/* 0206BCFC */ cpu->r[7] = 0x10000000u;
|
|
/* 0206BD00 */ _t35 = cpu->r[31] + 0x0000739Au;
|
|
/* 0206BD00 */ cpu->r[31] = rbrew_read16(cpu->mem, _t35);
|
|
/* 0206BD04 */ cpu->r[7] = cpu->r[7] + 0x00007A5Cu;
|
|
/* 0206BD08 */ _t36 = cpu->r[28] + 0x00000004u;
|
|
/* 0206BD08 */ rbrew_write32(cpu->mem, _t36, cpu->r[7]);
|
|
/* 0206BD0C */ goto L_0206BD88;
|
|
L_0206BD10: ; // 0x206bd10
|
|
/* 0206BD10 */ cpu->r[3] = cpu->r[29];
|
|
/* 0206BD10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BD14 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BD14 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0206BD14 */ if (_t38) goto L_0206BD18; else goto L_0206BD44;
|
|
L_0206BD18: ; // 0x206bd18
|
|
/* 0206BD18 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0206BD1C */ Gambit_fn_02801A78(cpu);
|
|
/* 0206BD20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BD24 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BD24 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0206BD24 */ if (_t40) goto L_0206BD28; else goto L_0206BD44;
|
|
L_0206BD28: ; // 0x206bd28
|
|
/* 0206BD28 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206BD2C */ _t41 = cpu->r[31] + 0x0000739Au;
|
|
/* 0206BD2C */ cpu->r[31] = rbrew_read16(cpu->mem, _t41);
|
|
/* 0206BD30 */ cpu->r[0] = cpu->r[0] + 0x00007A44u;
|
|
/* 0206BD34 */ _t42 = cpu->r[29] + 0x00000000u;
|
|
/* 0206BD34 */ cpu->r[6] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0206BD38 */ _t43 = cpu->r[29] + 0x00000004u;
|
|
/* 0206BD38 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 0206BD3C */ _t44 = cpu->r[6] + 0x00000000u;
|
|
/* 0206BD3C */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[31]);
|
|
/* 0206BD40 */ goto L_0206BD7C;
|
|
L_0206BD44: ; // 0x206bd44
|
|
/* 0206BD44 */ cpu->r[11] = 0x10000000u;
|
|
/* 0206BD48 */ cpu->r[10] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0206BD4C */ cpu->r[11] = cpu->r[11] + 0x00007A1Cu;
|
|
/* 0206BD50 */ _t45 = cpu->r[3] + 0x00000000u;
|
|
/* 0206BD50 */ rbrew_write32(cpu->mem, _t45, cpu->r[10]);
|
|
/* 0206BD54 */ cpu->r[12] = 0x00000008u;
|
|
/* 0206BD58 */ _t46 = cpu->r[3] + 0x00000004u;
|
|
/* 0206BD58 */ rbrew_write32(cpu->mem, _t46, cpu->r[11]);
|
|
/* 0206BD5C */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0206BD5C */ rbrew_write32(cpu->mem, _t47, cpu->r[12]);
|
|
/* 0206BD60 */ _t48 = cpu->r[31] + 0x0000739Au;
|
|
/* 0206BD60 */ cpu->r[31] = rbrew_read16(cpu->mem, _t48);
|
|
/* 0206BD64 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206BD68 */ _t49 = cpu->r[29] + 0x00000000u;
|
|
/* 0206BD68 */ cpu->r[6] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0206BD6C */ cpu->r[0] = cpu->r[0] + 0x00007A44u;
|
|
/* 0206BD70 */ _t50 = cpu->r[29] + 0x0000001Au;
|
|
/* 0206BD70 */ rbrew_write16(cpu->mem, _t50, (uint16_t)cpu->r[31]);
|
|
/* 0206BD74 */ _t51 = cpu->r[29] + 0x00000004u;
|
|
/* 0206BD74 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 0206BD78 */ _t52 = cpu->r[6] + 0x00000000u;
|
|
/* 0206BD78 */ rbrew_write16(cpu->mem, _t52, (uint16_t)cpu->r[31]);
|
|
L_0206BD7C: ; // 0x206bd7c
|
|
/* 0206BD7C */ cpu->r[7] = 0x10000000u;
|
|
/* 0206BD80 */ cpu->r[7] = cpu->r[7] + 0x00007A5Cu;
|
|
/* 0206BD84 */ _t53 = cpu->r[28] + 0x00000004u;
|
|
/* 0206BD84 */ rbrew_write32(cpu->mem, _t53, cpu->r[7]);
|
|
L_0206BD88: ; // 0x206bd88
|
|
/* 0206BD88 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206BD8C */ cpu->r[4] = cpu->r[3];
|
|
/* 0206BD90 */ Gambit_fn_026DD5C4(cpu);
|
|
/* 0206BD94 */ _t54 = cpu->r[30] + 0x00000018u;
|
|
/* 0206BD94 */ rbrew_write32(cpu->mem, _t54, cpu->r[3]);
|
|
/* 0206BD98 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206BD9C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BDA0 */ Gambit_fn_0206BB9C(cpu);
|
|
/* 0206BDA4 */ _t55 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206BDA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0206BDA8 */ _t56 = cpu->r[8] + 0x00000000u;
|
|
/* 0206BDA8 */ rbrew_write16(cpu->mem, _t56, (uint16_t)cpu->r[31]);
|
|
/* 0206BDAC */ _t57 = cpu->r[30] + 0x00000020u;
|
|
/* 0206BDAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0206BDB0 */ _t58 = cpu->r[9] + 0x00000014u;
|
|
/* 0206BDB0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0206BDB4 */ cpu->ctr = cpu->r[10];
|
|
/* 0206BDB8 */ cpu->r[3] = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206BDBC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206BDC0 */ _t59 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206BDC0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0206BDC4 */ cpu->r[8] = cpu->r[6];
|
|
/* 0206BDC8 */ _t60 = cpu->r[8] + 0x00000000u;
|
|
/* 0206BDC8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t60);
|
|
/* 0206BDCC */ cpu->r[12] = 0x00000000u;
|
|
/* 0206BDD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0206BDD4 */ cpu->r[0] = 0x00080000u;
|
|
/* 0206BDD8 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BDD8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0206BDD8 */ if (_t62) goto L_0206BCE0; else goto L_0206BDDC;
|
|
L_0206BDDC: ; // 0x206bddc
|
|
/* 0206BDDC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0206BDE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]);
|
|
/* 0206BDE4 */ cpu->r[8] = cpu->r[8] + 0x00000002u;
|
|
/* 0206BDE8 */ _t63 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0206BDE8 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0206BDE8 */ if (_t64) goto L_0206BDFC; else goto L_0206BDEC;
|
|
L_0206BDEC: ; // 0x206bdec
|
|
/* 0206BDEC */ _t65 = cpu->r[8] + 0x00000000u;
|
|
/* 0206BDEC */ cpu->r[11] = rbrew_read16(cpu->mem, _t65);
|
|
/* 0206BDF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 0206BDF4 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BDF4 */ _t67 = _t66 & 0x00000001u;
|
|
/* 0206BDF4 */ if (_t67) goto L_0206BDF8; else goto L_0206BDDC;
|
|
L_0206BDF8: ; // 0x206bdf8
|
|
/* 0206BDF8 */ goto L_0206BE00;
|
|
L_0206BDFC: ; // 0x206bdfc
|
|
/* 0206BDFC */ cpu->r[12] = 0x00000000u;
|
|
L_0206BE00: ; // 0x206be00
|
|
/* 0206BE00 */ _t68 = cpu->r[30] + 0x00000024u;
|
|
/* 0206BE00 */ cpu->r[9] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0206BE04 */ cpu->r[7] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 0206BE08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[7]);
|
|
/* 0206BE0C */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206BE0C */ _t70 = _t69 & 0x00000001u;
|
|
/* 0206BE0C */ if (_t70) goto L_0206BE10; else goto L_0206BE24;
|
|
L_0206BE10: ; // 0x206be10
|
|
/* 0206BE10 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 0206BE14 */ cpu->r[10] = 0x00002026u;
|
|
/* 0206BE18 */ cpu->r[12] = cpu->r[6] + cpu->r[0];
|
|
/* 0206BE1C */ _t71 = cpu->r[6] + cpu->r[0];
|
|
/* 0206BE1C */ rbrew_write16(cpu->mem, _t71, (uint16_t)cpu->r[10]);
|
|
/* 0206BE20 */ _t72 = cpu->r[12] + 0x00000002u;
|
|
/* 0206BE20 */ rbrew_write16(cpu->mem, _t72, (uint16_t)cpu->r[31]);
|
|
L_0206BE24: ; // 0x206be24
|
|
/* 0206BE24 */ _t73 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BE24 */ cpu->r[28] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0206BE28 */ _t74 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BE28 */ cpu->r[29] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0206BE2C */ _t75 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BE2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0206BE30 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BE34 */ _t76 = cpu->r[1] + 0x00000010u;
|
|
/* 0206BE34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0206BE38 */ cpu->lr = cpu->r[0];
|
|
/* 0206BE3C */ _t77 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BE3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0206BE40 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0206BE44 */ return;
|
|
}
|
|
|
|
// fn_0206BC04 @ 0x206bc04
|
|
void Gambit_fn_0206BC04(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;
|
|
|
|
L_0206BC04: ; // 0x206bc04
|
|
/* 0206BC04 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0206BC04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206BC04 */ cpu->r[1] = _t0;
|
|
/* 0206BC08 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BC08 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0206BC0C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BC0C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0206BC10 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0206BC10 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0206BC14 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BC14 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0206BC18 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206BC18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206BC1C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BC1C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206BC20 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BC20 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206BC20 */ if (_t7) goto L_0206BC24; else goto L_0206BC34;
|
|
L_0206BC24: ; // 0x206bc24
|
|
/* 0206BC24 */ cpu->r[3] = 0x00000038u;
|
|
/* 0206BC28 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206BC2C */ cpu->r[30] = cpu->r[3];
|
|
/* 0206BC2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206BC30 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BC30 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206BC30 */ if (_t9) goto L_0206BE24; else goto L_0206BC34;
|
|
L_0206BC34: ; // 0x206bc34
|
|
/* 0206BC34 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BC34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BC38 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BC38 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0206BC38 */ if (_t11) goto L_0206BC3C; else goto L_0206BC4C;
|
|
L_0206BC3C: ; // 0x206bc3c
|
|
/* 0206BC3C */ cpu->r[3] = 0x00000008u;
|
|
/* 0206BC40 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206BC44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BC48 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BC48 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206BC48 */ if (_t13) goto L_0206BC60; else goto L_0206BC4C;
|
|
L_0206BC4C: ; // 0x206bc4c
|
|
/* 0206BC4C */ cpu->r[8] = 0x10000000u;
|
|
/* 0206BC50 */ cpu->r[7] = 0x00000000u;
|
|
/* 0206BC54 */ cpu->r[8] = cpu->r[8] + 0x00007A0Cu;
|
|
/* 0206BC58 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 0206BC58 */ rbrew_write32(cpu->mem, _t14, cpu->r[7]);
|
|
/* 0206BC5C */ _t15 = cpu->r[3] + 0x00000004u;
|
|
/* 0206BC5C */ rbrew_write32(cpu->mem, _t15, cpu->r[8]);
|
|
L_0206BC60: ; // 0x206bc60
|
|
/* 0206BC60 */ cpu->r[9] = 0x10000000u;
|
|
/* 0206BC64 */ cpu->r[28] = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206BC64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0206BC68 */ cpu->r[9] = cpu->r[9] + 0x00007A34u;
|
|
/* 0206BC6C */ cpu->r[31] = 0x10110000u;
|
|
/* 0206BC70 */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 0206BC70 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 0206BC74 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BC74 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206BC74 */ if (_t18) goto L_0206BC78; else goto L_0206BCE4;
|
|
L_0206BC78: ; // 0x206bc78
|
|
/* 0206BC78 */ cpu->r[3] = 0x0000001Cu;
|
|
/* 0206BC7C */ Gambit_fn_02801A78(cpu);
|
|
/* 0206BC80 */ cpu->r[28] = cpu->r[3];
|
|
/* 0206BC80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0206BC84 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BC84 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0206BC84 */ if (_t20) goto L_0206BC88; else goto L_0206BCE4;
|
|
L_0206BC88: ; // 0x206bc88
|
|
/* 0206BC88 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206BC8C */ _t21 = cpu->r[31] + 0x0000739Au;
|
|
/* 0206BC8C */ cpu->r[31] = rbrew_read16(cpu->mem, _t21);
|
|
/* 0206BC90 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206BC94 */ Gambit_fn_026DD5C4(cpu);
|
|
/* 0206BC98 */ _t22 = cpu->r[30] + 0x00000018u;
|
|
/* 0206BC98 */ rbrew_write32(cpu->mem, _t22, cpu->r[3]);
|
|
/* 0206BC9C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BCA0 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206BCA4 */ Gambit_fn_0206BB9C(cpu);
|
|
/* 0206BCA8 */ _t23 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206BCA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0206BCAC */ _t24 = cpu->r[8] + 0x00000000u;
|
|
/* 0206BCAC */ rbrew_write16(cpu->mem, _t24, (uint16_t)cpu->r[31]);
|
|
/* 0206BCB0 */ _t25 = cpu->r[30] + 0x00000020u;
|
|
/* 0206BCB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0206BCB4 */ _t26 = cpu->r[9] + 0x00000014u;
|
|
/* 0206BCB4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0206BCB8 */ cpu->ctr = cpu->r[10];
|
|
/* 0206BCBC */ cpu->r[3] = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206BCC0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206BCC4 */ _t27 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206BCC4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0206BCC8 */ cpu->r[8] = cpu->r[6];
|
|
/* 0206BCCC */ _t28 = cpu->r[8] + 0x00000000u;
|
|
/* 0206BCCC */ cpu->r[0] = rbrew_read16(cpu->mem, _t28);
|
|
/* 0206BCD0 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206BCD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0206BCD8 */ cpu->r[0] = 0x00080000u;
|
|
/* 0206BCDC */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BCDC */ _t30 = _t29 & 0x00000001u;
|
|
/* 0206BCDC */ if (_t30) goto L_0206BCE0; else goto L_0206BDDC;
|
|
L_0206BCE0: ; // 0x206bce0
|
|
/* 0206BCE0 */ goto L_0206BE00;
|
|
L_0206BCE4: ; // 0x206bce4
|
|
/* 0206BCE4 */ cpu->r[29] = cpu->r[28];
|
|
/* 0206BCE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0206BCE8 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BCE8 */ _t32 = _t31 & 0x00000001u;
|
|
/* 0206BCE8 */ if (_t32) goto L_0206BCEC; else goto L_0206BD10;
|
|
L_0206BCEC: ; // 0x206bcec
|
|
/* 0206BCEC */ cpu->r[3] = 0x0000001Cu;
|
|
/* 0206BCF0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206BCF4 */ cpu->r[29] = cpu->r[3];
|
|
/* 0206BCF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 0206BCF8 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BCF8 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0206BCF8 */ if (_t34) goto L_0206BCFC; else goto L_0206BD10;
|
|
L_0206BCFC: ; // 0x206bcfc
|
|
/* 0206BCFC */ cpu->r[7] = 0x10000000u;
|
|
/* 0206BD00 */ _t35 = cpu->r[31] + 0x0000739Au;
|
|
/* 0206BD00 */ cpu->r[31] = rbrew_read16(cpu->mem, _t35);
|
|
/* 0206BD04 */ cpu->r[7] = cpu->r[7] + 0x00007A5Cu;
|
|
/* 0206BD08 */ _t36 = cpu->r[28] + 0x00000004u;
|
|
/* 0206BD08 */ rbrew_write32(cpu->mem, _t36, cpu->r[7]);
|
|
/* 0206BD0C */ goto L_0206BD88;
|
|
L_0206BD10: ; // 0x206bd10
|
|
/* 0206BD10 */ cpu->r[3] = cpu->r[29];
|
|
/* 0206BD10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BD14 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BD14 */ _t38 = _t37 & 0x00000001u;
|
|
/* 0206BD14 */ if (_t38) goto L_0206BD18; else goto L_0206BD44;
|
|
L_0206BD18: ; // 0x206bd18
|
|
/* 0206BD18 */ cpu->r[3] = 0x0000000Cu;
|
|
/* 0206BD1C */ Gambit_fn_02801A78(cpu);
|
|
/* 0206BD20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BD24 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BD24 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0206BD24 */ if (_t40) goto L_0206BD28; else goto L_0206BD44;
|
|
L_0206BD28: ; // 0x206bd28
|
|
/* 0206BD28 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206BD2C */ _t41 = cpu->r[31] + 0x0000739Au;
|
|
/* 0206BD2C */ cpu->r[31] = rbrew_read16(cpu->mem, _t41);
|
|
/* 0206BD30 */ cpu->r[0] = cpu->r[0] + 0x00007A44u;
|
|
/* 0206BD34 */ _t42 = cpu->r[29] + 0x00000000u;
|
|
/* 0206BD34 */ cpu->r[6] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0206BD38 */ _t43 = cpu->r[29] + 0x00000004u;
|
|
/* 0206BD38 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 0206BD3C */ _t44 = cpu->r[6] + 0x00000000u;
|
|
/* 0206BD3C */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[31]);
|
|
/* 0206BD40 */ goto L_0206BD7C;
|
|
L_0206BD44: ; // 0x206bd44
|
|
/* 0206BD44 */ cpu->r[11] = 0x10000000u;
|
|
/* 0206BD48 */ cpu->r[10] = cpu->r[29] + 0x0000000Cu;
|
|
/* 0206BD4C */ cpu->r[11] = cpu->r[11] + 0x00007A1Cu;
|
|
/* 0206BD50 */ _t45 = cpu->r[3] + 0x00000000u;
|
|
/* 0206BD50 */ rbrew_write32(cpu->mem, _t45, cpu->r[10]);
|
|
/* 0206BD54 */ cpu->r[12] = 0x00000008u;
|
|
/* 0206BD58 */ _t46 = cpu->r[3] + 0x00000004u;
|
|
/* 0206BD58 */ rbrew_write32(cpu->mem, _t46, cpu->r[11]);
|
|
/* 0206BD5C */ _t47 = cpu->r[3] + 0x00000008u;
|
|
/* 0206BD5C */ rbrew_write32(cpu->mem, _t47, cpu->r[12]);
|
|
/* 0206BD60 */ _t48 = cpu->r[31] + 0x0000739Au;
|
|
/* 0206BD60 */ cpu->r[31] = rbrew_read16(cpu->mem, _t48);
|
|
/* 0206BD64 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206BD68 */ _t49 = cpu->r[29] + 0x00000000u;
|
|
/* 0206BD68 */ cpu->r[6] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0206BD6C */ cpu->r[0] = cpu->r[0] + 0x00007A44u;
|
|
/* 0206BD70 */ _t50 = cpu->r[29] + 0x0000001Au;
|
|
/* 0206BD70 */ rbrew_write16(cpu->mem, _t50, (uint16_t)cpu->r[31]);
|
|
/* 0206BD74 */ _t51 = cpu->r[29] + 0x00000004u;
|
|
/* 0206BD74 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 0206BD78 */ _t52 = cpu->r[6] + 0x00000000u;
|
|
/* 0206BD78 */ rbrew_write16(cpu->mem, _t52, (uint16_t)cpu->r[31]);
|
|
L_0206BD7C: ; // 0x206bd7c
|
|
/* 0206BD7C */ cpu->r[7] = 0x10000000u;
|
|
/* 0206BD80 */ cpu->r[7] = cpu->r[7] + 0x00007A5Cu;
|
|
/* 0206BD84 */ _t53 = cpu->r[28] + 0x00000004u;
|
|
/* 0206BD84 */ rbrew_write32(cpu->mem, _t53, cpu->r[7]);
|
|
L_0206BD88: ; // 0x206bd88
|
|
/* 0206BD88 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206BD8C */ cpu->r[4] = cpu->r[3];
|
|
/* 0206BD90 */ Gambit_fn_026DD5C4(cpu);
|
|
/* 0206BD94 */ _t54 = cpu->r[30] + 0x00000018u;
|
|
/* 0206BD94 */ rbrew_write32(cpu->mem, _t54, cpu->r[3]);
|
|
/* 0206BD98 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206BD9C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BDA0 */ Gambit_fn_0206BB9C(cpu);
|
|
/* 0206BDA4 */ _t55 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206BDA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0206BDA8 */ _t56 = cpu->r[8] + 0x00000000u;
|
|
/* 0206BDA8 */ rbrew_write16(cpu->mem, _t56, (uint16_t)cpu->r[31]);
|
|
/* 0206BDAC */ _t57 = cpu->r[30] + 0x00000020u;
|
|
/* 0206BDAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t57);
|
|
/* 0206BDB0 */ _t58 = cpu->r[9] + 0x00000014u;
|
|
/* 0206BDB0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0206BDB4 */ cpu->ctr = cpu->r[10];
|
|
/* 0206BDB8 */ cpu->r[3] = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206BDBC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206BDC0 */ _t59 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206BDC0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t59);
|
|
/* 0206BDC4 */ cpu->r[8] = cpu->r[6];
|
|
/* 0206BDC8 */ _t60 = cpu->r[8] + 0x00000000u;
|
|
/* 0206BDC8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t60);
|
|
/* 0206BDCC */ cpu->r[12] = 0x00000000u;
|
|
/* 0206BDD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0206BDD4 */ cpu->r[0] = 0x00080000u;
|
|
/* 0206BDD8 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BDD8 */ _t62 = _t61 & 0x00000001u;
|
|
/* 0206BDD8 */ if (_t62) goto L_0206BCE0; else goto L_0206BDDC;
|
|
L_0206BDDC: ; // 0x206bddc
|
|
/* 0206BDDC */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0206BDE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]);
|
|
/* 0206BDE4 */ cpu->r[8] = cpu->r[8] + 0x00000002u;
|
|
/* 0206BDE8 */ _t63 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0206BDE8 */ _t64 = _t63 & 0x00000001u;
|
|
/* 0206BDE8 */ if (_t64) goto L_0206BDFC; else goto L_0206BDEC;
|
|
L_0206BDEC: ; // 0x206bdec
|
|
/* 0206BDEC */ _t65 = cpu->r[8] + 0x00000000u;
|
|
/* 0206BDEC */ cpu->r[11] = rbrew_read16(cpu->mem, _t65);
|
|
/* 0206BDF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 0206BDF4 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BDF4 */ _t67 = _t66 & 0x00000001u;
|
|
/* 0206BDF4 */ if (_t67) goto L_0206BDF8; else goto L_0206BDDC;
|
|
L_0206BDF8: ; // 0x206bdf8
|
|
/* 0206BDF8 */ goto L_0206BE00;
|
|
L_0206BDFC: ; // 0x206bdfc
|
|
/* 0206BDFC */ cpu->r[12] = 0x00000000u;
|
|
L_0206BE00: ; // 0x206be00
|
|
/* 0206BE00 */ _t68 = cpu->r[30] + 0x00000024u;
|
|
/* 0206BE00 */ cpu->r[9] = rbrew_read32(cpu->mem, _t68);
|
|
/* 0206BE04 */ cpu->r[7] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 0206BE08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[7]);
|
|
/* 0206BE0C */ _t69 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206BE0C */ _t70 = _t69 & 0x00000001u;
|
|
/* 0206BE0C */ if (_t70) goto L_0206BE10; else goto L_0206BE24;
|
|
L_0206BE10: ; // 0x206be10
|
|
/* 0206BE10 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 0206BE14 */ cpu->r[10] = 0x00002026u;
|
|
/* 0206BE18 */ cpu->r[12] = cpu->r[6] + cpu->r[0];
|
|
/* 0206BE1C */ _t71 = cpu->r[6] + cpu->r[0];
|
|
/* 0206BE1C */ rbrew_write16(cpu->mem, _t71, (uint16_t)cpu->r[10]);
|
|
/* 0206BE20 */ _t72 = cpu->r[12] + 0x00000002u;
|
|
/* 0206BE20 */ rbrew_write16(cpu->mem, _t72, (uint16_t)cpu->r[31]);
|
|
L_0206BE24: ; // 0x206be24
|
|
/* 0206BE24 */ _t73 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BE24 */ cpu->r[28] = rbrew_read32(cpu->mem, _t73);
|
|
/* 0206BE28 */ _t74 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BE28 */ cpu->r[29] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0206BE2C */ _t75 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BE2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0206BE30 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206BE34 */ _t76 = cpu->r[1] + 0x00000010u;
|
|
/* 0206BE34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t76);
|
|
/* 0206BE38 */ cpu->lr = cpu->r[0];
|
|
/* 0206BE3C */ _t77 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BE3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t77);
|
|
/* 0206BE40 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0206BE44 */ return;
|
|
}
|
|
|
|
// fn_0206BE48 @ 0x206be48
|
|
void Gambit_fn_0206BE48(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_0206BE48: ; // 0x206be48
|
|
/* 0206BE48 */ cpu->r[0] = cpu->lr;
|
|
/* 0206BE4C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0206BE4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206BE4C */ cpu->r[1] = _t0;
|
|
/* 0206BE50 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0206BE50 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206BE54 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BE54 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0206BE58 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BE58 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0206BE5C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BE5C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0206BE60 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BE60 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206BE64 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0206BE68 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206BE6C */ _t6 = cpu->r[29] + 0x00003400u;
|
|
/* 0206BE6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206BE6C */ cpu->r[29] = _t6;
|
|
/* 0206BE70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BE74 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BE74 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0206BE74 */ if (_t8) goto L_0206BE78; else goto L_0206BEC8;
|
|
L_0206BE78: ; // 0x206be78
|
|
/* 0206BE78 */ cpu->r[4] = cpu->r[30];
|
|
/* 0206BE7C */ cpu->r[3] = 0x00000038u;
|
|
/* 0206BE80 */ cpu->r[5] = 0x00000004u;
|
|
/* 0206BE84 */ Gambit_fn_02801ADC(cpu);
|
|
/* 0206BE88 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206BE8C */ cpu->r[28] = cpu->r[31] + 0x00000008u;
|
|
/* 0206BE8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0206BE90 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BE90 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206BE90 */ if (_t10) goto L_0206BEB0; else goto L_0206BE94;
|
|
L_0206BE94: ; // 0x206be94
|
|
/* 0206BE94 */ cpu->r[5] = 0x00000003u;
|
|
/* 0206BE98 */ cpu->r[4] = cpu->r[30];
|
|
/* 0206BE9C */ cpu->r[3] = cpu->r[28];
|
|
/* 0206BEA0 */ Gambit_fn_02821D88(cpu);
|
|
/* 0206BEA4 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206BEA8 */ cpu->r[0] = cpu->r[0] + 0x00007A94u;
|
|
/* 0206BEAC */ _t11 = cpu->r[28] + 0x0000000Cu;
|
|
/* 0206BEAC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0206BEB0: ; // 0x206beb0
|
|
/* 0206BEB0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206BEB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206BEB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BEB8 */ _t12 = cpu->r[12] + 0x00003404u;
|
|
/* 0206BEB8 */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 0206BEBC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BEBC */ _t14 = _t13 & 0x00000001u;
|
|
/* 0206BEBC */ if (_t14) goto L_0206BEC4; else goto L_0206BEC0;
|
|
L_0206BEC0: ; // 0x206bec0
|
|
/* 0206BEC0 */ Gambit_fn_0206BC00(cpu);
|
|
L_0206BEC4: ; // 0x206bec4
|
|
/* 0206BEC4 */ _t15 = cpu->r[29] + 0x00000000u;
|
|
/* 0206BEC4 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
L_0206BEC8: ; // 0x206bec8
|
|
/* 0206BEC8 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BEC8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206BECC */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BECC */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0206BED0 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BED0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0206BED4 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0206BED4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206BED8 */ cpu->lr = cpu->r[0];
|
|
/* 0206BEDC */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BEDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0206BEE0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0206BEE4 */ return;
|
|
}
|
|
|
|
// fn_0206BE4C @ 0x206be4c
|
|
void Gambit_fn_0206BE4C(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_0206BE4C: ; // 0x206be4c
|
|
/* 0206BE4C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0206BE4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206BE4C */ cpu->r[1] = _t0;
|
|
/* 0206BE50 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0206BE50 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206BE54 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BE54 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 0206BE58 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BE58 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0206BE5C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BE5C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 0206BE60 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BE60 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206BE64 */ cpu->r[29] = 0x101C0000u;
|
|
/* 0206BE68 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206BE6C */ _t6 = cpu->r[29] + 0x00003400u;
|
|
/* 0206BE6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206BE6C */ cpu->r[29] = _t6;
|
|
/* 0206BE70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BE74 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BE74 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0206BE74 */ if (_t8) goto L_0206BE78; else goto L_0206BEC8;
|
|
L_0206BE78: ; // 0x206be78
|
|
/* 0206BE78 */ cpu->r[4] = cpu->r[30];
|
|
/* 0206BE7C */ cpu->r[3] = 0x00000038u;
|
|
/* 0206BE80 */ cpu->r[5] = 0x00000004u;
|
|
/* 0206BE84 */ Gambit_fn_02801ADC(cpu);
|
|
/* 0206BE88 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206BE8C */ cpu->r[28] = cpu->r[31] + 0x00000008u;
|
|
/* 0206BE8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0206BE90 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BE90 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206BE90 */ if (_t10) goto L_0206BEB0; else goto L_0206BE94;
|
|
L_0206BE94: ; // 0x206be94
|
|
/* 0206BE94 */ cpu->r[5] = 0x00000003u;
|
|
/* 0206BE98 */ cpu->r[4] = cpu->r[30];
|
|
/* 0206BE9C */ cpu->r[3] = cpu->r[28];
|
|
/* 0206BEA0 */ Gambit_fn_02821D88(cpu);
|
|
/* 0206BEA4 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206BEA8 */ cpu->r[0] = cpu->r[0] + 0x00007A94u;
|
|
/* 0206BEAC */ _t11 = cpu->r[28] + 0x0000000Cu;
|
|
/* 0206BEAC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0206BEB0: ; // 0x206beb0
|
|
/* 0206BEB0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206BEB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206BEB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BEB8 */ _t12 = cpu->r[12] + 0x00003404u;
|
|
/* 0206BEB8 */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 0206BEBC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BEBC */ _t14 = _t13 & 0x00000001u;
|
|
/* 0206BEBC */ if (_t14) goto L_0206BEC4; else goto L_0206BEC0;
|
|
L_0206BEC0: ; // 0x206bec0
|
|
/* 0206BEC0 */ Gambit_fn_0206BC00(cpu);
|
|
L_0206BEC4: ; // 0x206bec4
|
|
/* 0206BEC4 */ _t15 = cpu->r[29] + 0x00000000u;
|
|
/* 0206BEC4 */ rbrew_write32(cpu->mem, _t15, cpu->r[3]);
|
|
L_0206BEC8: ; // 0x206bec8
|
|
/* 0206BEC8 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BEC8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206BECC */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BECC */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0206BED0 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BED0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0206BED4 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0206BED4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206BED8 */ cpu->lr = cpu->r[0];
|
|
/* 0206BEDC */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BEDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0206BEE0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0206BEE4 */ return;
|
|
}
|
|
|
|
// fn_0206BEE8 @ 0x206bee8
|
|
void Gambit_fn_0206BEE8(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_0206BEE8: ; // 0x206bee8
|
|
/* 0206BEE8 */ cpu->r[0] = cpu->lr;
|
|
/* 0206BEEC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0206BEEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206BEEC */ cpu->r[1] = _t0;
|
|
/* 0206BEF0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BEF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0206BEF4 */ cpu->r[28] = cpu->r[4];
|
|
/* 0206BEF8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BEF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206BEFC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BEFC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0206BF00 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206BF00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206BF04 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0206BF04 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0206BF08 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BF08 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206BF0C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BF0C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206BF0C */ if (_t7) goto L_0206BF70; else goto L_0206BF10;
|
|
L_0206BF10: ; // 0x206bf10
|
|
/* 0206BF10 */ cpu->r[6] = 0x10000000u;
|
|
/* 0206BF14 */ cpu->r[6] = cpu->r[6] + 0x00007A94u;
|
|
/* 0206BF18 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206BF1C */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206BF1C */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 0206BF20 */ _t9 = cpu->r[12] + 0x00003404u;
|
|
/* 0206BF20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206BF20 */ cpu->r[12] = _t9;
|
|
/* 0206BF24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0206BF28 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BF28 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0206BF28 */ if (_t11) goto L_0206BF2C; else goto L_0206BF54;
|
|
L_0206BF2C: ; // 0x206bf2c
|
|
/* 0206BF2C */ cpu->r[30] = 0x101C0000u;
|
|
/* 0206BF30 */ cpu->r[29] = 0x00000000u;
|
|
/* 0206BF34 */ _t12 = cpu->r[30] + 0x00003400u;
|
|
/* 0206BF34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206BF38 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 0206BF38 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 0206BF3C */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 0206BF3C */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206BF40 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0206BF40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206BF44 */ cpu->ctr = cpu->r[10];
|
|
/* 0206BF48 */ cpu->r[4] = 0x00000002u;
|
|
/* 0206BF4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206BF50 */ _t16 = cpu->r[30] + 0x00003400u;
|
|
/* 0206BF50 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_0206BF54: ; // 0x206bf54
|
|
/* 0206BF54 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206BF58 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206BF5C */ Gambit_fn_02821E68(cpu);
|
|
/* 0206BF60 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206BF60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206BF64 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BF64 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206BF64 */ if (_t18) goto L_0206BF70; else goto L_0206BF68;
|
|
L_0206BF68: ; // 0x206bf68
|
|
/* 0206BF68 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206BF6C */ Gambit_fn_02801BB0(cpu);
|
|
L_0206BF70: ; // 0x206bf70
|
|
/* 0206BF70 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BF70 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206BF74 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BF74 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0206BF78 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BF78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0206BF7C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0206BF7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0206BF80 */ cpu->lr = cpu->r[0];
|
|
/* 0206BF84 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BF84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0206BF88 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0206BF8C */ return;
|
|
}
|
|
|
|
// fn_0206BEEC @ 0x206beec
|
|
void Gambit_fn_0206BEEC(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_0206BEEC: ; // 0x206beec
|
|
/* 0206BEEC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0206BEEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206BEEC */ cpu->r[1] = _t0;
|
|
/* 0206BEF0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BEF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 0206BEF4 */ cpu->r[28] = cpu->r[4];
|
|
/* 0206BEF8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BEF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206BEFC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BEFC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0206BF00 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206BF00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206BF04 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 0206BF04 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0206BF08 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BF08 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206BF0C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BF0C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206BF0C */ if (_t7) goto L_0206BF70; else goto L_0206BF10;
|
|
L_0206BF10: ; // 0x206bf10
|
|
/* 0206BF10 */ cpu->r[6] = 0x10000000u;
|
|
/* 0206BF14 */ cpu->r[6] = cpu->r[6] + 0x00007A94u;
|
|
/* 0206BF18 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206BF1C */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206BF1C */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 0206BF20 */ _t9 = cpu->r[12] + 0x00003404u;
|
|
/* 0206BF20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206BF20 */ cpu->r[12] = _t9;
|
|
/* 0206BF24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]);
|
|
/* 0206BF28 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BF28 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0206BF28 */ if (_t11) goto L_0206BF2C; else goto L_0206BF54;
|
|
L_0206BF2C: ; // 0x206bf2c
|
|
/* 0206BF2C */ cpu->r[30] = 0x101C0000u;
|
|
/* 0206BF30 */ cpu->r[29] = 0x00000000u;
|
|
/* 0206BF34 */ _t12 = cpu->r[30] + 0x00003400u;
|
|
/* 0206BF34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206BF38 */ _t13 = cpu->r[12] + 0x00000000u;
|
|
/* 0206BF38 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 0206BF3C */ _t14 = cpu->r[3] + 0x00000004u;
|
|
/* 0206BF3C */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206BF40 */ _t15 = cpu->r[8] + 0x0000000Cu;
|
|
/* 0206BF40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206BF44 */ cpu->ctr = cpu->r[10];
|
|
/* 0206BF48 */ cpu->r[4] = 0x00000002u;
|
|
/* 0206BF4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206BF50 */ _t16 = cpu->r[30] + 0x00003400u;
|
|
/* 0206BF50 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
L_0206BF54: ; // 0x206bf54
|
|
/* 0206BF54 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206BF58 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206BF5C */ Gambit_fn_02821E68(cpu);
|
|
/* 0206BF60 */ cpu->r[0] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206BF60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206BF64 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BF64 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206BF64 */ if (_t18) goto L_0206BF70; else goto L_0206BF68;
|
|
L_0206BF68: ; // 0x206bf68
|
|
/* 0206BF68 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206BF6C */ Gambit_fn_02801BB0(cpu);
|
|
L_0206BF70: ; // 0x206bf70
|
|
/* 0206BF70 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0206BF70 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206BF74 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206BF74 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0206BF78 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206BF78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0206BF7C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0206BF7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0206BF80 */ cpu->lr = cpu->r[0];
|
|
/* 0206BF84 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0206BF84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0206BF88 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0206BF8C */ return;
|
|
}
|
|
|
|
// fn_0206BF90 @ 0x206bf90
|
|
void Gambit_fn_0206BF90(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_0206BF90: ; // 0x206bf90
|
|
/* 0206BF90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206BF94 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BF94 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0206BF94 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206BF94 */ goto L_0206BF98;
|
|
L_0206BF98: ; // 0x206bf98
|
|
/* 0206BF98 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206BF98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206BF9C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206BF9C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0206BF9C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206BF9C */ goto L_0206BFA0;
|
|
L_0206BFA0: ; // 0x206bfa0
|
|
/* 0206BFA0 */ 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_0206BFA4 @ 0x206bfa4
|
|
void Gambit_fn_0206BFA4(CPUState* cpu) {
|
|
L_0206BFA4: ; // 0x206bfa4
|
|
/* 0206BFA4 */ return;
|
|
}
|
|
|
|
// fn_0206BFA8 @ 0x206bfa8
|
|
void Gambit_fn_0206BFA8(CPUState* cpu) {
|
|
L_0206BFA8: ; // 0x206bfa8
|
|
/* 0206BFA8 */ return;
|
|
}
|
|
|
|
// fn_0206BFAC @ 0x206bfac
|
|
void Gambit_fn_0206BFAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0206BFAC: ; // 0x206bfac
|
|
/* 0206BFAC */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 0206BFAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206BFB0 */ cpu->r[9] = 0x10110000u;
|
|
/* 0206BFB4 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0206BFB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206BFB8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 0206BFBC */ _t2 = cpu->r[9] + 0x0000739Au;
|
|
/* 0206BFBC */ cpu->r[0] = rbrew_read16(cpu->mem, _t2);
|
|
/* 0206BFC0 */ cpu->r[12] = cpu->r[12] + cpu->r[10];
|
|
/* 0206BFC4 */ _t3 = cpu->r[12] + 0xFFFFFFFEu;
|
|
/* 0206BFC4 */ rbrew_write16(cpu->mem, _t3, (uint16_t)cpu->r[0]);
|
|
/* 0206BFC8 */ return;
|
|
}
|
|
|
|
// fn_0206BFCC @ 0x206bfcc
|
|
void Gambit_fn_0206BFCC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206BFCC: ; // 0x206bfcc
|
|
/* 0206BFCC */ cpu->r[12] = 0x10000000u;
|
|
/* 0206BFD0 */ _t0 = cpu->r[12] + 0x00007A80u;
|
|
/* 0206BFD0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0206BFD4 */ return;
|
|
}
|
|
|
|
// fn_0206BFD8 @ 0x206bfd8
|
|
void Gambit_fn_0206BFD8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206BFD8: ; // 0x206bfd8
|
|
/* 0206BFD8 */ cpu->r[12] = 0x10000000u;
|
|
/* 0206BFDC */ _t0 = cpu->r[12] + 0x00007A84u;
|
|
/* 0206BFDC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0206BFE0 */ return;
|
|
}
|
|
|
|
// fn_0206BFE4 @ 0x206bfe4
|
|
void Gambit_fn_0206BFE4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206BFE4: ; // 0x206bfe4
|
|
/* 0206BFE4 */ cpu->r[12] = 0x10000000u;
|
|
/* 0206BFE8 */ _t0 = cpu->r[12] + 0x00007A88u;
|
|
/* 0206BFE8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0206BFEC */ return;
|
|
}
|
|
|
|
// fn_0206BFF0 @ 0x206bff0
|
|
void Gambit_fn_0206BFF0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206BFF0: ; // 0x206bff0
|
|
/* 0206BFF0 */ cpu->r[12] = 0x10000000u;
|
|
/* 0206BFF4 */ _t0 = cpu->r[12] + 0x00007A8Cu;
|
|
/* 0206BFF4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0206BFF8 */ return;
|
|
}
|
|
|
|
// fn_0206BFFC @ 0x206bffc
|
|
void Gambit_fn_0206BFFC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206BFFC: ; // 0x206bffc
|
|
/* 0206BFFC */ cpu->r[12] = 0x10000000u;
|
|
/* 0206C000 */ _t0 = cpu->r[12] + 0x00007A8Cu;
|
|
/* 0206C000 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0206C004 */ return;
|
|
}
|
|
|
|
// fn_0206C008 @ 0x206c008
|
|
void Gambit_fn_0206C008(CPUState* cpu) {
|
|
L_0206C008: ; // 0x206c008
|
|
/* 0206C008 */ cpu->r[3] = 0x00000004u;
|
|
/* 0206C00C */ return;
|
|
}
|
|
|
|
// fn_0206C010 @ 0x206c010
|
|
void Gambit_fn_0206C010(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206C010: ; // 0x206c010
|
|
/* 0206C010 */ cpu->r[12] = 0x10000000u;
|
|
/* 0206C014 */ _t0 = cpu->r[12] + 0x00007A90u;
|
|
/* 0206C014 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 0206C018 */ return;
|
|
}
|
|
|
|
// fn_0206C01C @ 0x206c01c
|
|
void Gambit_fn_0206C01C(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_0206C01C: ; // 0x206c01c
|
|
/* 0206C01C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206C020 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C020 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0206C020 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206C020 */ goto L_0206C024;
|
|
L_0206C024: ; // 0x206c024
|
|
/* 0206C024 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206C024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206C028 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C028 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0206C028 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206C028 */ goto L_0206C02C;
|
|
L_0206C02C: ; // 0x206c02c
|
|
/* 0206C02C */ 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_0206C030 @ 0x206c030
|
|
void Gambit_fn_0206C030(CPUState* cpu) {
|
|
L_0206C030: ; // 0x206c030
|
|
/* 0206C030 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206C034 */ return;
|
|
}
|
|
|
|
// fn_0206C038 @ 0x206c038
|
|
void Gambit_fn_0206C038(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0206C038: ; // 0x206c038
|
|
/* 0206C038 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C03C */ _t0 = cpu->r[1] + 0xFFFFFEF0u;
|
|
/* 0206C03C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C03C */ cpu->r[1] = _t0;
|
|
/* 0206C040 */ _t1 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0206C040 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C044 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C048 */ _t2 = cpu->r[1] + 0x00000108u;
|
|
/* 0206C048 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206C04C */ _t3 = cpu->r[1] + 0x00000104u;
|
|
/* 0206C04C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0206C050 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0206C054 */ _t4 = cpu->r[1] + 0x00000114u;
|
|
/* 0206C054 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0206C058 */ cpu->r[29] = cpu->r[4];
|
|
/* 0206C05C */ _t5 = cpu->r[12] + 0xFFFF8608u;
|
|
/* 0206C05C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206C060 */ cpu->r[30] = 0x00000001u;
|
|
/* 0206C064 */ cpu->r[3] = cpu->r[29];
|
|
/* 0206C068 */ _t6 = cpu->r[12] + 0x0000015Cu;
|
|
/* 0206C068 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[30]);
|
|
/* 0206C06C */ Gambit_fn_0206BE48(cpu);
|
|
/* 0206C070 */ cpu->r[3] = cpu->r[29];
|
|
/* 0206C074 */ Gambit_fn_020B2F58(cpu);
|
|
/* 0206C078 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 0206C078 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206C07C */ _t8 = cpu->r[10] + 0x0000002Cu;
|
|
/* 0206C07C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206C080 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C084 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C088 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206C08C */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C090 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C094 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206C098 */ Gambit_fn_020B23A4(cpu);
|
|
/* 0206C09C */ cpu->r[5] = cpu->r[30];
|
|
/* 0206C0A0 */ cpu->r[4] = 0x00000018u;
|
|
/* 0206C0A4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C0A8 */ Gambit_fn_026E9378(cpu);
|
|
/* 0206C0AC */ cpu->r[5] = cpu->r[30];
|
|
/* 0206C0B0 */ cpu->r[4] = 0x00000019u;
|
|
/* 0206C0B4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C0B8 */ Gambit_fn_026E9378(cpu);
|
|
/* 0206C0BC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C0C0 */ cpu->r[4] = 0x0000001Au;
|
|
/* 0206C0C4 */ cpu->r[5] = cpu->r[30];
|
|
/* 0206C0C8 */ Gambit_fn_026E9378(cpu);
|
|
/* 0206C0CC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C0D0 */ cpu->r[4] = 0x0000001Bu;
|
|
/* 0206C0D4 */ cpu->r[5] = 0x00000001u;
|
|
/* 0206C0D8 */ Gambit_fn_026E9378(cpu);
|
|
/* 0206C0DC */ cpu->r[3] = 0x101C0000u;
|
|
/* 0206C0E0 */ _t9 = cpu->r[3] + 0x00003630u;
|
|
/* 0206C0E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206C0E4 */ _t10 = cpu->r[1] + 0x000000F4u;
|
|
/* 0206C0E4 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 0206C0E8 */ Gambit_fn_020B2FF8(cpu);
|
|
/* 0206C0EC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C0F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C0F4 */ Gambit_fn_026E8CD0(cpu);
|
|
/* 0206C0F8 */ _t11 = cpu->r[1] + 0x00000104u;
|
|
/* 0206C0F8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C0FC */ _t12 = cpu->r[1] + 0x00000114u;
|
|
/* 0206C0FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C100 */ _t13 = cpu->r[1] + 0x00000108u;
|
|
/* 0206C100 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C104 */ cpu->lr = cpu->r[0];
|
|
/* 0206C108 */ _t14 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0206C108 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206C10C */ cpu->r[1] = cpu->r[1] + 0x00000110u;
|
|
/* 0206C110 */ return;
|
|
}
|
|
|
|
// fn_0206C03C @ 0x206c03c
|
|
void Gambit_fn_0206C03C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0206C03C: ; // 0x206c03c
|
|
/* 0206C03C */ _t0 = cpu->r[1] + 0xFFFFFEF0u;
|
|
/* 0206C03C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C03C */ cpu->r[1] = _t0;
|
|
/* 0206C040 */ _t1 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0206C040 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C044 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C048 */ _t2 = cpu->r[1] + 0x00000108u;
|
|
/* 0206C048 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206C04C */ _t3 = cpu->r[1] + 0x00000104u;
|
|
/* 0206C04C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 0206C050 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0206C054 */ _t4 = cpu->r[1] + 0x00000114u;
|
|
/* 0206C054 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0206C058 */ cpu->r[29] = cpu->r[4];
|
|
/* 0206C05C */ _t5 = cpu->r[12] + 0xFFFF8608u;
|
|
/* 0206C05C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206C060 */ cpu->r[30] = 0x00000001u;
|
|
/* 0206C064 */ cpu->r[3] = cpu->r[29];
|
|
/* 0206C068 */ _t6 = cpu->r[12] + 0x0000015Cu;
|
|
/* 0206C068 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[30]);
|
|
/* 0206C06C */ Gambit_fn_0206BE48(cpu);
|
|
/* 0206C070 */ cpu->r[3] = cpu->r[29];
|
|
/* 0206C074 */ Gambit_fn_020B2F58(cpu);
|
|
/* 0206C078 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 0206C078 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206C07C */ _t8 = cpu->r[10] + 0x0000002Cu;
|
|
/* 0206C07C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206C080 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C084 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C088 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206C08C */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C090 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C094 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206C098 */ Gambit_fn_020B23A4(cpu);
|
|
/* 0206C09C */ cpu->r[5] = cpu->r[30];
|
|
/* 0206C0A0 */ cpu->r[4] = 0x00000018u;
|
|
/* 0206C0A4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C0A8 */ Gambit_fn_026E9378(cpu);
|
|
/* 0206C0AC */ cpu->r[5] = cpu->r[30];
|
|
/* 0206C0B0 */ cpu->r[4] = 0x00000019u;
|
|
/* 0206C0B4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C0B8 */ Gambit_fn_026E9378(cpu);
|
|
/* 0206C0BC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C0C0 */ cpu->r[4] = 0x0000001Au;
|
|
/* 0206C0C4 */ cpu->r[5] = cpu->r[30];
|
|
/* 0206C0C8 */ Gambit_fn_026E9378(cpu);
|
|
/* 0206C0CC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C0D0 */ cpu->r[4] = 0x0000001Bu;
|
|
/* 0206C0D4 */ cpu->r[5] = 0x00000001u;
|
|
/* 0206C0D8 */ Gambit_fn_026E9378(cpu);
|
|
/* 0206C0DC */ cpu->r[3] = 0x101C0000u;
|
|
/* 0206C0E0 */ _t9 = cpu->r[3] + 0x00003630u;
|
|
/* 0206C0E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206C0E4 */ _t10 = cpu->r[1] + 0x000000F4u;
|
|
/* 0206C0E4 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 0206C0E8 */ Gambit_fn_020B2FF8(cpu);
|
|
/* 0206C0EC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C0F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C0F4 */ Gambit_fn_026E8CD0(cpu);
|
|
/* 0206C0F8 */ _t11 = cpu->r[1] + 0x00000104u;
|
|
/* 0206C0F8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C0FC */ _t12 = cpu->r[1] + 0x00000114u;
|
|
/* 0206C0FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C100 */ _t13 = cpu->r[1] + 0x00000108u;
|
|
/* 0206C100 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C104 */ cpu->lr = cpu->r[0];
|
|
/* 0206C108 */ _t14 = cpu->r[1] + 0x0000010Cu;
|
|
/* 0206C108 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206C10C */ cpu->r[1] = cpu->r[1] + 0x00000110u;
|
|
/* 0206C110 */ return;
|
|
}
|
|
|
|
// fn_0206C114 @ 0x206c114
|
|
void Gambit_fn_0206C114(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206C114: ; // 0x206c114
|
|
/* 0206C114 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0206C118 */ _t0 = cpu->r[3] + 0x00003630u;
|
|
/* 0206C118 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C11C */ return;
|
|
}
|
|
|
|
// fn_0206C120 @ 0x206c120
|
|
void Gambit_fn_0206C120(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_0206C120: ; // 0x206c120
|
|
/* 0206C120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206C124 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C124 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0206C124 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206C124 */ goto L_0206C128;
|
|
L_0206C128: ; // 0x206c128
|
|
/* 0206C128 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206C128 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206C12C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C12C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0206C12C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206C12C */ goto L_0206C130;
|
|
L_0206C130: ; // 0x206c130
|
|
/* 0206C130 */ 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_0206C134 @ 0x206c134
|
|
void Gambit_fn_0206C134(CPUState* cpu) {
|
|
L_0206C134: ; // 0x206c134
|
|
/* 0206C134 */ return;
|
|
}
|
|
|
|
// fn_0206C138 @ 0x206c138
|
|
void Gambit_fn_0206C138(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206C138: ; // 0x206c138
|
|
/* 0206C138 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0206C13C */ goto L_0206C354;
|
|
L_0206C354: ; // 0x206c354
|
|
/* 0206C354 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C358 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C358 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C358 */ cpu->r[1] = _t0;
|
|
/* 0206C35C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C35C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C360 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C360 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206C364 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206C364 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206C368 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206C36C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C36C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206C370 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C370 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206C370 */ if (_t5) goto L_0206C3B4; else goto L_0206C374;
|
|
L_0206C374: ; // 0x206c374
|
|
/* 0206C374 */ cpu->r[11] = 0x10000000u;
|
|
/* 0206C378 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C37C */ cpu->r[11] = cpu->r[11] + 0x00007D08u;
|
|
/* 0206C380 */ cpu->r[0] = cpu->r[0] + 0x00007CF8u;
|
|
/* 0206C384 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206C388 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206C388 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0206C38C */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C390 */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206C390 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0206C394 */ cpu->r[0] = cpu->r[0] + 0x00007D18u;
|
|
/* 0206C398 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206C39C */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 0206C39C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0206C3A0 */ Gambit_fn_02068798(cpu);
|
|
/* 0206C3A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206C3A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206C3A8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C3A8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206C3A8 */ if (_t10) goto L_0206C3B4; else goto L_0206C3AC;
|
|
L_0206C3AC: ; // 0x206c3ac
|
|
/* 0206C3AC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206C3B0 */ Gambit_fn_02801BB0(cpu);
|
|
L_0206C3B4: ; // 0x206c3b4
|
|
/* 0206C3B4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C3B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C3B8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C3B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C3BC */ cpu->lr = cpu->r[0];
|
|
/* 0206C3C0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C3C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C3C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C3C8 */ return;
|
|
}
|
|
|
|
// fn_0206C140 @ 0x206c140
|
|
void Gambit_fn_0206C140(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_0206C140: ; // 0x206c140
|
|
/* 0206C140 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0206C144 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_0206C148 @ 0x206c148
|
|
void Gambit_fn_0206C148(CPUState* cpu) {
|
|
L_0206C148: ; // 0x206c148
|
|
/* 0206C148 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0206C14C */ goto L_0206C3CC;
|
|
L_0206C3CC: ; // 0x206c3cc
|
|
/* 0206C3CC */ return;
|
|
}
|
|
|
|
// fn_0206C150 @ 0x206c150
|
|
void Gambit_fn_0206C150(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206C150: ; // 0x206c150
|
|
/* 0206C150 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0206C154 */ goto L_0206C3D0;
|
|
L_0206C3D0: ; // 0x206c3d0
|
|
/* 0206C3D0 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0206C3D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C3D4 */ return;
|
|
}
|
|
|
|
// fn_0206C158 @ 0x206c158
|
|
void Gambit_fn_0206C158(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0206C158: ; // 0x206c158
|
|
/* 0206C158 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C15C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0206C15C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C15C */ cpu->r[1] = _t0;
|
|
/* 0206C160 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C160 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C164 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206C168 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206C168 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C16C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C16C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206C16C */ if (_t4) goto L_0206C170; else goto L_0206C180;
|
|
L_0206C170: ; // 0x206c170
|
|
/* 0206C170 */ cpu->r[3] = 0x000001E4u;
|
|
/* 0206C174 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206C178 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C178 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206C17C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C17C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C17C */ if (_t6) goto L_0206C1E4; else goto L_0206C180;
|
|
L_0206C180: ; // 0x206c180
|
|
/* 0206C180 */ cpu->r[12] = 0x10000000u;
|
|
/* 0206C184 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C188 */ cpu->r[11] = 0x10000000u;
|
|
/* 0206C18C */ cpu->r[12] = cpu->r[12] + 0x00007B2Cu;
|
|
/* 0206C190 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C194 */ cpu->r[11] = cpu->r[11] + 0x00007B54u;
|
|
/* 0206C198 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C198 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0206C19C */ cpu->r[5] = 0x00000000u;
|
|
/* 0206C1A0 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C1A0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0206C1A4 */ Gambit_fn_02068860(cpu);
|
|
/* 0206C1A8 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C1AC */ cpu->r[11] = 0x10000000u;
|
|
/* 0206C1B0 */ cpu->r[0] = cpu->r[0] + 0x00007CF8u;
|
|
/* 0206C1B4 */ cpu->r[11] = cpu->r[11] + 0x00007D08u;
|
|
/* 0206C1B8 */ cpu->r[12] = 0x10000000u;
|
|
/* 0206C1BC */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206C1BC */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0206C1C0 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C1C4 */ cpu->r[12] = cpu->r[12] + 0x00007B98u;
|
|
/* 0206C1C8 */ _t10 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0206C1C8 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0206C1CC */ cpu->r[0] = cpu->r[0] + 0x00007D18u;
|
|
/* 0206C1D0 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0206C1D0 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 0206C1D4 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206C1D8 */ _t12 = cpu->r[31] + 0x000001C8u;
|
|
/* 0206C1D8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0206C1DC */ _t13 = cpu->r[31] + 0x000001DCu;
|
|
/* 0206C1DC */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 0206C1E0 */ _t14 = cpu->r[31] + 0x000001E0u;
|
|
/* 0206C1E0 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
L_0206C1E4: ; // 0x206c1e4
|
|
/* 0206C1E4 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206C1E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206C1E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C1EC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C1EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206C1F0 */ cpu->lr = cpu->r[0];
|
|
/* 0206C1F4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0206C1F8 */ return;
|
|
}
|
|
|
|
// fn_0206C15C @ 0x206c15c
|
|
void Gambit_fn_0206C15C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0206C15C: ; // 0x206c15c
|
|
/* 0206C15C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0206C15C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C15C */ cpu->r[1] = _t0;
|
|
/* 0206C160 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C160 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C164 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206C168 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206C168 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C16C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C16C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206C16C */ if (_t4) goto L_0206C170; else goto L_0206C180;
|
|
L_0206C170: ; // 0x206c170
|
|
/* 0206C170 */ cpu->r[3] = 0x000001E4u;
|
|
/* 0206C174 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206C178 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C178 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206C17C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C17C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C17C */ if (_t6) goto L_0206C1E4; else goto L_0206C180;
|
|
L_0206C180: ; // 0x206c180
|
|
/* 0206C180 */ cpu->r[12] = 0x10000000u;
|
|
/* 0206C184 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C188 */ cpu->r[11] = 0x10000000u;
|
|
/* 0206C18C */ cpu->r[12] = cpu->r[12] + 0x00007B2Cu;
|
|
/* 0206C190 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C194 */ cpu->r[11] = cpu->r[11] + 0x00007B54u;
|
|
/* 0206C198 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C198 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0206C19C */ cpu->r[5] = 0x00000000u;
|
|
/* 0206C1A0 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C1A0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0206C1A4 */ Gambit_fn_02068860(cpu);
|
|
/* 0206C1A8 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C1AC */ cpu->r[11] = 0x10000000u;
|
|
/* 0206C1B0 */ cpu->r[0] = cpu->r[0] + 0x00007CF8u;
|
|
/* 0206C1B4 */ cpu->r[11] = cpu->r[11] + 0x00007D08u;
|
|
/* 0206C1B8 */ cpu->r[12] = 0x10000000u;
|
|
/* 0206C1BC */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206C1BC */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0206C1C0 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C1C4 */ cpu->r[12] = cpu->r[12] + 0x00007B98u;
|
|
/* 0206C1C8 */ _t10 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0206C1C8 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0206C1CC */ cpu->r[0] = cpu->r[0] + 0x00007D18u;
|
|
/* 0206C1D0 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 0206C1D0 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 0206C1D4 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206C1D8 */ _t12 = cpu->r[31] + 0x000001C8u;
|
|
/* 0206C1D8 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0206C1DC */ _t13 = cpu->r[31] + 0x000001DCu;
|
|
/* 0206C1DC */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 0206C1E0 */ _t14 = cpu->r[31] + 0x000001E0u;
|
|
/* 0206C1E0 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
L_0206C1E4: ; // 0x206c1e4
|
|
/* 0206C1E4 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206C1E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206C1E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C1EC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C1EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206C1F0 */ cpu->lr = cpu->r[0];
|
|
/* 0206C1F4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0206C1F8 */ return;
|
|
}
|
|
|
|
// fn_0206C218 @ 0x206c218
|
|
void Gambit_fn_0206C218(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_0206C218: ; // 0x206c218
|
|
/* 0206C218 */ _t0 = cpu->r[3] + 0x000001DCu;
|
|
/* 0206C218 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C21C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0206C220 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C220 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0206C220 */ if (_t2) goto L_0206C22C; else goto L_0206C224;
|
|
L_0206C224: ; // 0x206c224
|
|
/* 0206C224 */ _t3 = cpu->r[12] + 0x000002F2u;
|
|
/* 0206C224 */ cpu->r[3] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206C228 */ return;
|
|
L_0206C22C: ; // 0x206c22c
|
|
/* 0206C22C */ cpu->r[3] = 0x00000000u;
|
|
/* 0206C230 */ return;
|
|
}
|
|
|
|
// fn_0206C234 @ 0x206c234
|
|
void Gambit_fn_0206C234(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_0206C234: ; // 0x206c234
|
|
/* 0206C234 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C238 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0206C238 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C238 */ cpu->r[1] = _t0;
|
|
/* 0206C23C */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206C23C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0206C240 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0206C240 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206C244 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0206C244 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0206C248 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C24C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C250 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206C250 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0206C254 */ cpu->r[29] = 0x10000000u;
|
|
/* 0206C258 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C25C */ cpu->r[29] = cpu->r[29] + 0x00007B2Cu;
|
|
/* 0206C260 */ cpu->r[0] = cpu->r[0] + 0x00007B68u;
|
|
/* 0206C264 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C264 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0206C268 */ cpu->r[30] = 0x10000000u;
|
|
/* 0206C26C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C26C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0206C270 */ cpu->r[30] = cpu->r[30] + 0x00007B64u;
|
|
/* 0206C274 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C274 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 0206C278 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C27C */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0206C27C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0206C280 */ Gambit_fn_027EBB94(cpu);
|
|
/* 0206C284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206C288 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C288 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206C288 */ if (_t10) goto L_0206C294; else goto L_0206C28C;
|
|
L_0206C28C: ; // 0x206c28c
|
|
/* 0206C28C */ cpu->r[4] = 0x00000000u;
|
|
/* 0206C290 */ Gambit_fn_027EEDF0(cpu);
|
|
L_0206C294: ; // 0x206c294
|
|
/* 0206C294 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C294 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0206C298 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C29C */ cpu->r[12] = 0x10000000u;
|
|
/* 0206C2A0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C2A0 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 0206C2A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C2A8 */ cpu->r[12] = cpu->r[12] + 0x00007B78u;
|
|
/* 0206C2AC */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C2AC */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 0206C2B0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C2B4 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 0206C2B4 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 0206C2B8 */ Gambit_fn_027EC4B4(cpu);
|
|
/* 0206C2BC */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C2C0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C2C0 */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 0206C2C4 */ cpu->r[0] = cpu->r[0] + 0x00007B88u;
|
|
/* 0206C2C8 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206C2CC */ _t16 = cpu->r[31] + 0x000001DCu;
|
|
/* 0206C2CC */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 0206C2D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206C2D4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C2D8 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C2D8 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0206C2DC */ Gambit_fn_020E40BC(cpu);
|
|
/* 0206C2E0 */ _t18 = cpu->r[31] + 0x000001E0u;
|
|
/* 0206C2E0 */ rbrew_write32(cpu->mem, _t18, cpu->r[3]);
|
|
/* 0206C2E4 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206C2E4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206C2E8 */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206C2E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0206C2EC */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 0206C2EC */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0206C2F0 */ cpu->lr = cpu->r[0];
|
|
/* 0206C2F4 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 0206C2F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0206C2F8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0206C2FC */ return;
|
|
}
|
|
|
|
// fn_0206C238 @ 0x206c238
|
|
void Gambit_fn_0206C238(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_0206C238: ; // 0x206c238
|
|
/* 0206C238 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0206C238 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C238 */ cpu->r[1] = _t0;
|
|
/* 0206C23C */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206C23C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0206C240 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0206C240 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206C244 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0206C244 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0206C248 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C24C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C250 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206C250 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0206C254 */ cpu->r[29] = 0x10000000u;
|
|
/* 0206C258 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C25C */ cpu->r[29] = cpu->r[29] + 0x00007B2Cu;
|
|
/* 0206C260 */ cpu->r[0] = cpu->r[0] + 0x00007B68u;
|
|
/* 0206C264 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C264 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0206C268 */ cpu->r[30] = 0x10000000u;
|
|
/* 0206C26C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C26C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0206C270 */ cpu->r[30] = cpu->r[30] + 0x00007B64u;
|
|
/* 0206C274 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C274 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 0206C278 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C27C */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 0206C27C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 0206C280 */ Gambit_fn_027EBB94(cpu);
|
|
/* 0206C284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206C288 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C288 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206C288 */ if (_t10) goto L_0206C294; else goto L_0206C28C;
|
|
L_0206C28C: ; // 0x206c28c
|
|
/* 0206C28C */ cpu->r[4] = 0x00000000u;
|
|
/* 0206C290 */ Gambit_fn_027EEDF0(cpu);
|
|
L_0206C294: ; // 0x206c294
|
|
/* 0206C294 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C294 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 0206C298 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C29C */ cpu->r[12] = 0x10000000u;
|
|
/* 0206C2A0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C2A0 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 0206C2A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C2A8 */ cpu->r[12] = cpu->r[12] + 0x00007B78u;
|
|
/* 0206C2AC */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C2AC */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 0206C2B0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C2B4 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 0206C2B4 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 0206C2B8 */ Gambit_fn_027EC4B4(cpu);
|
|
/* 0206C2BC */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C2C0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C2C0 */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 0206C2C4 */ cpu->r[0] = cpu->r[0] + 0x00007B88u;
|
|
/* 0206C2C8 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206C2CC */ _t16 = cpu->r[31] + 0x000001DCu;
|
|
/* 0206C2CC */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 0206C2D0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206C2D4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C2D8 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C2D8 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0206C2DC */ Gambit_fn_020E40BC(cpu);
|
|
/* 0206C2E0 */ _t18 = cpu->r[31] + 0x000001E0u;
|
|
/* 0206C2E0 */ rbrew_write32(cpu->mem, _t18, cpu->r[3]);
|
|
/* 0206C2E4 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206C2E4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206C2E8 */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206C2E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0206C2EC */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 0206C2EC */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0206C2F0 */ cpu->lr = cpu->r[0];
|
|
/* 0206C2F4 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 0206C2F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0206C2F8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0206C2FC */ return;
|
|
}
|
|
|
|
// fn_0206C300 @ 0x206c300
|
|
void Gambit_fn_0206C300(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0206C300: ; // 0x206c300
|
|
/* 0206C300 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C304 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0206C304 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0206C308 */ cpu->r[10] = cpu->r[3];
|
|
/* 0206C30C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0206C30C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0206C30C */ cpu->r[1] = _t1;
|
|
/* 0206C310 */ Gambit_fn_0206C218(cpu);
|
|
/* 0206C314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206C318 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C318 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0206C318 */ if (_t3) goto L_0206C330; else goto L_0206C31C;
|
|
L_0206C31C: ; // 0x206c31c
|
|
/* 0206C31C */ _t4 = cpu->r[10] + 0x00000000u;
|
|
/* 0206C31C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206C320 */ _t5 = cpu->r[12] + 0x00000094u;
|
|
/* 0206C320 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206C324 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C328 */ cpu->r[3] = cpu->r[10];
|
|
/* 0206C32C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206C330: ; // 0x206c330
|
|
/* 0206C330 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C330 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206C334 */ cpu->lr = cpu->r[0];
|
|
/* 0206C338 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C33C */ return;
|
|
}
|
|
|
|
// fn_0206C30C @ 0x206c30c
|
|
void Gambit_fn_0206C30C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206C30C: ; // 0x206c30c
|
|
/* 0206C30C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0206C30C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C30C */ cpu->r[1] = _t0;
|
|
/* 0206C310 */ Gambit_fn_0206C218(cpu);
|
|
/* 0206C314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206C318 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C318 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0206C318 */ if (_t2) goto L_0206C330; else goto L_0206C31C;
|
|
L_0206C31C: ; // 0x206c31c
|
|
/* 0206C31C */ _t3 = cpu->r[10] + 0x00000000u;
|
|
/* 0206C31C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206C320 */ _t4 = cpu->r[12] + 0x00000094u;
|
|
/* 0206C320 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206C324 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C328 */ cpu->r[3] = cpu->r[10];
|
|
/* 0206C32C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206C330: ; // 0x206c330
|
|
/* 0206C330 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C330 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206C334 */ cpu->lr = cpu->r[0];
|
|
/* 0206C338 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C33C */ return;
|
|
}
|
|
|
|
// fn_0206C340 @ 0x206c340
|
|
void Gambit_fn_0206C340(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_0206C340: ; // 0x206c340
|
|
/* 0206C340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206C344 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C344 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0206C344 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206C344 */ goto L_0206C348;
|
|
L_0206C348: ; // 0x206c348
|
|
/* 0206C348 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206C348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206C34C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C34C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0206C34C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206C34C */ goto L_0206C350;
|
|
L_0206C350: ; // 0x206c350
|
|
/* 0206C350 */ 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_0206C354 @ 0x206c354
|
|
void Gambit_fn_0206C354(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206C354: ; // 0x206c354
|
|
/* 0206C354 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C358 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C358 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C358 */ cpu->r[1] = _t0;
|
|
/* 0206C35C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C35C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C360 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C360 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206C364 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206C364 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206C368 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206C36C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C36C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206C370 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C370 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206C370 */ if (_t5) goto L_0206C3B4; else goto L_0206C374;
|
|
L_0206C374: ; // 0x206c374
|
|
/* 0206C374 */ cpu->r[11] = 0x10000000u;
|
|
/* 0206C378 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C37C */ cpu->r[11] = cpu->r[11] + 0x00007D08u;
|
|
/* 0206C380 */ cpu->r[0] = cpu->r[0] + 0x00007CF8u;
|
|
/* 0206C384 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206C388 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206C388 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0206C38C */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C390 */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206C390 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0206C394 */ cpu->r[0] = cpu->r[0] + 0x00007D18u;
|
|
/* 0206C398 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206C39C */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 0206C39C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0206C3A0 */ Gambit_fn_02068798(cpu);
|
|
/* 0206C3A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206C3A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206C3A8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C3A8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206C3A8 */ if (_t10) goto L_0206C3B4; else goto L_0206C3AC;
|
|
L_0206C3AC: ; // 0x206c3ac
|
|
/* 0206C3AC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206C3B0 */ Gambit_fn_02801BB0(cpu);
|
|
L_0206C3B4: ; // 0x206c3b4
|
|
/* 0206C3B4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C3B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C3B8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C3B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C3BC */ cpu->lr = cpu->r[0];
|
|
/* 0206C3C0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C3C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C3C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C3C8 */ return;
|
|
}
|
|
|
|
// fn_0206C358 @ 0x206c358
|
|
void Gambit_fn_0206C358(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206C358: ; // 0x206c358
|
|
/* 0206C358 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C358 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C358 */ cpu->r[1] = _t0;
|
|
/* 0206C35C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C35C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C360 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C360 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206C364 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206C364 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206C368 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206C36C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C36C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206C370 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C370 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206C370 */ if (_t5) goto L_0206C3B4; else goto L_0206C374;
|
|
L_0206C374: ; // 0x206c374
|
|
/* 0206C374 */ cpu->r[11] = 0x10000000u;
|
|
/* 0206C378 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C37C */ cpu->r[11] = cpu->r[11] + 0x00007D08u;
|
|
/* 0206C380 */ cpu->r[0] = cpu->r[0] + 0x00007CF8u;
|
|
/* 0206C384 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206C388 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206C388 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0206C38C */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C390 */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206C390 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0206C394 */ cpu->r[0] = cpu->r[0] + 0x00007D18u;
|
|
/* 0206C398 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206C39C */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 0206C39C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0206C3A0 */ Gambit_fn_02068798(cpu);
|
|
/* 0206C3A4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206C3A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206C3A8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C3A8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206C3A8 */ if (_t10) goto L_0206C3B4; else goto L_0206C3AC;
|
|
L_0206C3AC: ; // 0x206c3ac
|
|
/* 0206C3AC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206C3B0 */ Gambit_fn_02801BB0(cpu);
|
|
L_0206C3B4: ; // 0x206c3b4
|
|
/* 0206C3B4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C3B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C3B8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C3B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C3BC */ cpu->lr = cpu->r[0];
|
|
/* 0206C3C0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C3C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C3C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C3C8 */ return;
|
|
}
|
|
|
|
// fn_0206C3CC @ 0x206c3cc
|
|
void Gambit_fn_0206C3CC(CPUState* cpu) {
|
|
L_0206C3CC: ; // 0x206c3cc
|
|
/* 0206C3CC */ return;
|
|
}
|
|
|
|
// fn_0206C3D0 @ 0x206c3d0
|
|
void Gambit_fn_0206C3D0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206C3D0: ; // 0x206c3d0
|
|
/* 0206C3D0 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0206C3D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C3D4 */ return;
|
|
}
|
|
|
|
// fn_0206C3D8 @ 0x206c3d8
|
|
void Gambit_fn_0206C3D8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206C3D8: ; // 0x206c3d8
|
|
/* 0206C3D8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0206C3D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C3DC */ return;
|
|
}
|
|
|
|
// fn_0206C3E0 @ 0x206c3e0
|
|
void Gambit_fn_0206C3E0(CPUState* cpu) {
|
|
L_0206C3E0: ; // 0x206c3e0
|
|
/* 0206C3E0 */ return;
|
|
}
|
|
|
|
// fn_0206C3E4 @ 0x206c3e4
|
|
void Gambit_fn_0206C3E4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206C3E4: ; // 0x206c3e4
|
|
/* 0206C3E4 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0206C3E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C3E8 */ return;
|
|
}
|
|
|
|
// fn_0206C3EC @ 0x206c3ec
|
|
void Gambit_fn_0206C3EC(CPUState* cpu) {
|
|
L_0206C3EC: ; // 0x206c3ec
|
|
/* 0206C3EC */ return;
|
|
}
|
|
|
|
// fn_0206C3F0 @ 0x206c3f0
|
|
void Gambit_fn_0206C3F0(CPUState* cpu) {
|
|
L_0206C3F0: ; // 0x206c3f0
|
|
/* 0206C3F0 */ return;
|
|
}
|
|
|
|
// fn_0206C3F4 @ 0x206c3f4
|
|
void Gambit_fn_0206C3F4(CPUState* cpu) {
|
|
L_0206C3F4: ; // 0x206c3f4
|
|
/* 0206C3F4 */ return;
|
|
}
|
|
|
|
// fn_0206C3F8 @ 0x206c3f8
|
|
void Gambit_fn_0206C3F8(CPUState* cpu) {
|
|
L_0206C3F8: ; // 0x206c3f8
|
|
/* 0206C3F8 */ return;
|
|
}
|
|
|
|
// fn_0206C3FC @ 0x206c3fc
|
|
void Gambit_fn_0206C3FC(CPUState* cpu) {
|
|
L_0206C3FC: ; // 0x206c3fc
|
|
/* 0206C3FC */ return;
|
|
}
|
|
|
|
// fn_0206C400 @ 0x206c400
|
|
void Gambit_fn_0206C400(CPUState* cpu) {
|
|
L_0206C400: ; // 0x206c400
|
|
/* 0206C400 */ cpu->r[3] = 0x00000001u;
|
|
/* 0206C404 */ return;
|
|
}
|
|
|
|
// fn_0206C408 @ 0x206c408
|
|
void Gambit_fn_0206C408(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0206C408: ; // 0x206c408
|
|
/* 0206C408 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0206C408 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C40C */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0206C40C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206C410 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C414 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206C418 @ 0x206c418
|
|
void Gambit_fn_0206C418(CPUState* cpu) {
|
|
L_0206C418: ; // 0x206c418
|
|
/* 0206C418 */ return;
|
|
}
|
|
|
|
// fn_0206C41C @ 0x206c41c
|
|
void Gambit_fn_0206C41C(CPUState* cpu) {
|
|
L_0206C41C: ; // 0x206c41c
|
|
/* 0206C41C */ cpu->r[3] = 0x00000000u;
|
|
/* 0206C420 */ return;
|
|
}
|
|
|
|
// fn_0206C424 @ 0x206c424
|
|
void Gambit_fn_0206C424(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206C424: ; // 0x206c424
|
|
/* 0206C424 */ cpu->r[9] = 0x101D0000u;
|
|
/* 0206C428 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 0206C428 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C428 */ cpu->r[9] = _t0;
|
|
/* 0206C42C */ cpu->r[12] = 0x101D0000u;
|
|
/* 0206C430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206C434 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 0206C438 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C438 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0206C438 */ if (_t2) goto L_0206C43C; else goto L_0206C450;
|
|
L_0206C43C: ; // 0x206c43c
|
|
/* 0206C43C */ cpu->r[7] = 0x10000000u;
|
|
/* 0206C440 */ cpu->r[0] = 0x00000001u;
|
|
/* 0206C444 */ cpu->r[7] = cpu->r[7] + 0x00007B44u;
|
|
/* 0206C448 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 0206C448 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206C44C */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0206C44C */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_0206C450: ; // 0x206c450
|
|
/* 0206C450 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0206C454 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C454 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C454 */ if (_t6) goto L_0206C458; else goto L_0206C460;
|
|
L_0206C458: ; // 0x206c458
|
|
/* 0206C458 */ cpu->r[3] = 0x00000001u;
|
|
/* 0206C45C */ return;
|
|
L_0206C460: ; // 0x206c460
|
|
/* 0206C460 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0206C464 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 0206C464 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206C464 */ cpu->r[7] = _t7;
|
|
/* 0206C468 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0206C46C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0206C470 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 0206C474 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C474 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206C474 */ if (_t9) goto L_0206C478; else goto L_0206C48C;
|
|
L_0206C478: ; // 0x206c478
|
|
/* 0206C478 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C47C */ cpu->r[9] = 0x00000001u;
|
|
/* 0206C480 */ cpu->r[0] = cpu->r[0] + 0x00007B1Cu;
|
|
/* 0206C484 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 0206C484 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0206C488 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0206C488 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0206C48C: ; // 0x206c48c
|
|
/* 0206C48C */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0206C490 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 0206C494 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 0206C498 */ return;
|
|
}
|
|
|
|
// fn_0206C49C @ 0x206c49c
|
|
void Gambit_fn_0206C49C(CPUState* cpu) {
|
|
L_0206C49C: ; // 0x206c49c
|
|
/* 0206C49C */ return;
|
|
}
|
|
|
|
// fn_0206C4A0 @ 0x206c4a0
|
|
void Gambit_fn_0206C4A0(CPUState* cpu) {
|
|
L_0206C4A0: ; // 0x206c4a0
|
|
/* 0206C4A0 */ return;
|
|
}
|
|
|
|
// fn_0206C4A4 @ 0x206c4a4
|
|
void Gambit_fn_0206C4A4(CPUState* cpu) {
|
|
L_0206C4A4: ; // 0x206c4a4
|
|
/* 0206C4A4 */ return;
|
|
}
|
|
|
|
// fn_0206C4A8 @ 0x206c4a8
|
|
void Gambit_fn_0206C4A8(CPUState* cpu) {
|
|
L_0206C4A8: ; // 0x206c4a8
|
|
/* 0206C4A8 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206C4AC */ return;
|
|
}
|
|
|
|
// fn_0206C4B0 @ 0x206c4b0
|
|
void Gambit_fn_0206C4B0(CPUState* cpu) {
|
|
L_0206C4B0: ; // 0x206c4b0
|
|
/* 0206C4B0 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206C4B4 */ return;
|
|
}
|
|
|
|
// fn_0206C4B8 @ 0x206c4b8
|
|
void Gambit_fn_0206C4B8(CPUState* cpu) {
|
|
L_0206C4B8: ; // 0x206c4b8
|
|
/* 0206C4B8 */ return;
|
|
}
|
|
|
|
// fn_0206C4BC @ 0x206c4bc
|
|
void Gambit_fn_0206C4BC(CPUState* cpu) {
|
|
L_0206C4BC: ; // 0x206c4bc
|
|
/* 0206C4BC */ return;
|
|
}
|
|
|
|
// fn_0206C4C0 @ 0x206c4c0
|
|
void Gambit_fn_0206C4C0(CPUState* cpu) {
|
|
L_0206C4C0: ; // 0x206c4c0
|
|
/* 0206C4C0 */ return;
|
|
}
|
|
|
|
// fn_0206C4C4 @ 0x206c4c4
|
|
void Gambit_fn_0206C4C4(CPUState* cpu) {
|
|
L_0206C4C4: ; // 0x206c4c4
|
|
/* 0206C4C4 */ return;
|
|
}
|
|
|
|
// fn_0206C4C8 @ 0x206c4c8
|
|
void Gambit_fn_0206C4C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0206C4C8: ; // 0x206c4c8
|
|
/* 0206C4C8 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C4CC */ _t0 = cpu->r[1] + 0xFFFFFF48u;
|
|
/* 0206C4CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C4CC */ cpu->r[1] = _t0;
|
|
/* 0206C4D0 */ _t1 = cpu->r[1] + 0x000000B4u;
|
|
/* 0206C4D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C4D4 */ _t2 = cpu->r[1] + 0x000000BCu;
|
|
/* 0206C4D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C4D8 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 0206C4D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206C4DC */ _t4 = cpu->r[11] + 0x00000064u;
|
|
/* 0206C4DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206C4E0 */ cpu->ctr = cpu->r[9];
|
|
/* 0206C4E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C4E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206C4EC */ cpu->r[4] = cpu->r[3];
|
|
/* 0206C4F0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C4F4 */ Gambit_fn_026D6C54(cpu);
|
|
/* 0206C4F8 */ cpu->r[3] = 0x00000244u;
|
|
/* 0206C4FC */ Gambit_fn_02801A78(cpu);
|
|
/* 0206C500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206C504 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C504 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C504 */ if (_t6) goto L_0206C50C; else goto L_0206C508;
|
|
L_0206C508: ; // 0x206c508
|
|
/* 0206C508 */ Gambit_fn_0206CA24(cpu);
|
|
L_0206C50C: ; // 0x206c50c
|
|
/* 0206C50C */ _t7 = cpu->r[31] + 0x00000028u;
|
|
/* 0206C50C */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 0206C510 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 0206C510 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206C514 */ _t9 = cpu->r[8] + 0x00000034u;
|
|
/* 0206C514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206C518 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C51C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C520 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206C524 */ cpu->r[3] = 0x000001E4u;
|
|
/* 0206C528 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206C52C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206C530 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C530 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0206C530 */ if (_t11) goto L_0206C538; else goto L_0206C534;
|
|
L_0206C534: ; // 0x206c534
|
|
/* 0206C534 */ Gambit_fn_0206C158(cpu);
|
|
L_0206C538: ; // 0x206c538
|
|
/* 0206C538 */ _t12 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0206C538 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 0206C53C */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 0206C53C */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C540 */ _t14 = cpu->r[12] + 0x00000034u;
|
|
/* 0206C540 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206C544 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C548 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C54C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206C550 */ _t15 = cpu->r[1] + 0x000000BCu;
|
|
/* 0206C550 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206C554 */ _t16 = cpu->r[1] + 0x000000B4u;
|
|
/* 0206C554 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206C558 */ cpu->lr = cpu->r[0];
|
|
/* 0206C55C */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 0206C560 */ return;
|
|
}
|
|
|
|
// fn_0206C4CC @ 0x206c4cc
|
|
void Gambit_fn_0206C4CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0206C4CC: ; // 0x206c4cc
|
|
/* 0206C4CC */ _t0 = cpu->r[1] + 0xFFFFFF48u;
|
|
/* 0206C4CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C4CC */ cpu->r[1] = _t0;
|
|
/* 0206C4D0 */ _t1 = cpu->r[1] + 0x000000B4u;
|
|
/* 0206C4D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C4D4 */ _t2 = cpu->r[1] + 0x000000BCu;
|
|
/* 0206C4D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C4D8 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 0206C4D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206C4DC */ _t4 = cpu->r[11] + 0x00000064u;
|
|
/* 0206C4DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206C4E0 */ cpu->ctr = cpu->r[9];
|
|
/* 0206C4E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C4E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206C4EC */ cpu->r[4] = cpu->r[3];
|
|
/* 0206C4F0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C4F4 */ Gambit_fn_026D6C54(cpu);
|
|
/* 0206C4F8 */ cpu->r[3] = 0x00000244u;
|
|
/* 0206C4FC */ Gambit_fn_02801A78(cpu);
|
|
/* 0206C500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206C504 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C504 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C504 */ if (_t6) goto L_0206C50C; else goto L_0206C508;
|
|
L_0206C508: ; // 0x206c508
|
|
/* 0206C508 */ Gambit_fn_0206CA24(cpu);
|
|
L_0206C50C: ; // 0x206c50c
|
|
/* 0206C50C */ _t7 = cpu->r[31] + 0x00000028u;
|
|
/* 0206C50C */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 0206C510 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 0206C510 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206C514 */ _t9 = cpu->r[8] + 0x00000034u;
|
|
/* 0206C514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206C518 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C51C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C520 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206C524 */ cpu->r[3] = 0x000001E4u;
|
|
/* 0206C528 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206C52C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206C530 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C530 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0206C530 */ if (_t11) goto L_0206C538; else goto L_0206C534;
|
|
L_0206C534: ; // 0x206c534
|
|
/* 0206C534 */ Gambit_fn_0206C158(cpu);
|
|
L_0206C538: ; // 0x206c538
|
|
/* 0206C538 */ _t12 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0206C538 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 0206C53C */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 0206C53C */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C540 */ _t14 = cpu->r[12] + 0x00000034u;
|
|
/* 0206C540 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206C544 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C548 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C54C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206C550 */ _t15 = cpu->r[1] + 0x000000BCu;
|
|
/* 0206C550 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206C554 */ _t16 = cpu->r[1] + 0x000000B4u;
|
|
/* 0206C554 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206C558 */ cpu->lr = cpu->r[0];
|
|
/* 0206C55C */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 0206C560 */ return;
|
|
}
|
|
|
|
// fn_0206C564 @ 0x206c564
|
|
void Gambit_fn_0206C564(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0206C4C8: ; // 0x206c4c8
|
|
/* 0206C4C8 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C4CC */ _t0 = cpu->r[1] + 0xFFFFFF48u;
|
|
/* 0206C4CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C4CC */ cpu->r[1] = _t0;
|
|
/* 0206C4D0 */ _t1 = cpu->r[1] + 0x000000B4u;
|
|
/* 0206C4D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C4D4 */ _t2 = cpu->r[1] + 0x000000BCu;
|
|
/* 0206C4D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C4D8 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 0206C4D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206C4DC */ _t4 = cpu->r[11] + 0x00000064u;
|
|
/* 0206C4DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206C4E0 */ cpu->ctr = cpu->r[9];
|
|
/* 0206C4E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C4E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206C4EC */ cpu->r[4] = cpu->r[3];
|
|
/* 0206C4F0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C4F4 */ Gambit_fn_026D6C54(cpu);
|
|
/* 0206C4F8 */ cpu->r[3] = 0x00000244u;
|
|
/* 0206C4FC */ Gambit_fn_02801A78(cpu);
|
|
/* 0206C500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206C504 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C504 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C504 */ if (_t6) goto L_0206C50C; else goto L_0206C508;
|
|
L_0206C508: ; // 0x206c508
|
|
/* 0206C508 */ Gambit_fn_0206CA24(cpu);
|
|
L_0206C50C: ; // 0x206c50c
|
|
/* 0206C50C */ _t7 = cpu->r[31] + 0x00000028u;
|
|
/* 0206C50C */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 0206C510 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 0206C510 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206C514 */ _t9 = cpu->r[8] + 0x00000034u;
|
|
/* 0206C514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206C518 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C51C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C520 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206C524 */ cpu->r[3] = 0x000001E4u;
|
|
/* 0206C528 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206C52C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206C530 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C530 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0206C530 */ if (_t11) goto L_0206C538; else goto L_0206C534;
|
|
L_0206C534: ; // 0x206c534
|
|
/* 0206C534 */ Gambit_fn_0206C158(cpu);
|
|
L_0206C538: ; // 0x206c538
|
|
/* 0206C538 */ _t12 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0206C538 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 0206C53C */ _t13 = cpu->r[3] + 0x00000000u;
|
|
/* 0206C53C */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C540 */ _t14 = cpu->r[12] + 0x00000034u;
|
|
/* 0206C540 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206C544 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C548 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206C54C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206C550 */ _t15 = cpu->r[1] + 0x000000BCu;
|
|
/* 0206C550 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206C554 */ _t16 = cpu->r[1] + 0x000000B4u;
|
|
/* 0206C554 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206C558 */ cpu->lr = cpu->r[0];
|
|
/* 0206C55C */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 0206C560 */ return;
|
|
L_0206C564: ; // 0x206c564
|
|
/* 0206C564 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0206C568 */ goto L_0206C4C8;
|
|
}
|
|
|
|
// fn_0206C56C @ 0x206c56c
|
|
void Gambit_fn_0206C56C(CPUState* cpu) {
|
|
L_0206C56C: ; // 0x206c56c
|
|
/* 0206C56C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0206C570 */ goto L_0206C704;
|
|
L_0206C704: ; // 0x206c704
|
|
/* 0206C704 */ return;
|
|
}
|
|
|
|
// fn_0206C574 @ 0x206c574
|
|
void Gambit_fn_0206C574(CPUState* cpu) {
|
|
L_0206C574: ; // 0x206c574
|
|
/* 0206C574 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0206C578 */ goto L_0206C708;
|
|
L_0206C708: ; // 0x206c708
|
|
/* 0206C708 */ return;
|
|
}
|
|
|
|
// fn_0206C57C @ 0x206c57c
|
|
void Gambit_fn_0206C57C(CPUState* cpu) {
|
|
L_0206C57C: ; // 0x206c57c
|
|
/* 0206C57C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0206C580 */ goto L_0206C70C;
|
|
L_0206C70C: ; // 0x206c70c
|
|
/* 0206C70C */ return;
|
|
}
|
|
|
|
// fn_0206C584 @ 0x206c584
|
|
void Gambit_fn_0206C584(CPUState* cpu) {
|
|
L_0206C584: ; // 0x206c584
|
|
/* 0206C584 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0206C588 */ goto L_0206C710;
|
|
L_0206C710: ; // 0x206c710
|
|
/* 0206C710 */ return;
|
|
}
|
|
|
|
// fn_0206C58C @ 0x206c58c
|
|
void Gambit_fn_0206C58C(CPUState* cpu) {
|
|
L_0206C58C: ; // 0x206c58c
|
|
/* 0206C58C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0206C590 */ goto L_0206C714;
|
|
L_0206C714: ; // 0x206c714
|
|
/* 0206C714 */ return;
|
|
}
|
|
|
|
// fn_0206C594 @ 0x206c594
|
|
void Gambit_fn_0206C594(CPUState* cpu) {
|
|
L_0206C594: ; // 0x206c594
|
|
/* 0206C594 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0206C598 */ goto L_0206C718;
|
|
L_0206C718: ; // 0x206c718
|
|
/* 0206C718 */ cpu->r[3] = 0x00000001u;
|
|
/* 0206C71C */ return;
|
|
}
|
|
|
|
// fn_0206C59C @ 0x206c59c
|
|
void Gambit_fn_0206C59C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206C59C: ; // 0x206c59c
|
|
/* 0206C59C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0206C5A0 */ goto L_0206C720;
|
|
L_0206C720: ; // 0x206c720
|
|
/* 0206C720 */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 0206C720 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 0206C724 */ return;
|
|
}
|
|
|
|
// fn_0206C5A4 @ 0x206c5a4
|
|
void Gambit_fn_0206C5A4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206C5A4: ; // 0x206c5a4
|
|
/* 0206C5A4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0206C5A8 */ goto L_0206C730;
|
|
L_0206C730: ; // 0x206c730
|
|
/* 0206C730 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 0206C730 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 0206C734 */ return;
|
|
}
|
|
|
|
// fn_0206C5AC @ 0x206c5ac
|
|
void Gambit_fn_0206C5AC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206C5AC: ; // 0x206c5ac
|
|
/* 0206C5AC */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0206C5B0 */ goto L_0206C738;
|
|
L_0206C738: ; // 0x206c738
|
|
/* 0206C738 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 0206C738 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C73C */ return;
|
|
}
|
|
|
|
// fn_0206C5B4 @ 0x206c5b4
|
|
void Gambit_fn_0206C5B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206C5B4: ; // 0x206c5b4
|
|
/* 0206C5B4 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C5B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C5B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C5B8 */ cpu->r[1] = _t0;
|
|
/* 0206C5BC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C5BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C5C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C5C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206C5C4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C5C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C5C8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C5C8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206C5C8 */ if (_t4) goto L_0206C5CC; else goto L_0206C5DC;
|
|
L_0206C5CC: ; // 0x206c5cc
|
|
/* 0206C5CC */ cpu->r[3] = 0x00000030u;
|
|
/* 0206C5D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206C5D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C5D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206C5D8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C5D8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C5D8 */ if (_t6) goto L_0206C620; else goto L_0206C5DC;
|
|
L_0206C5DC: ; // 0x206c5dc
|
|
/* 0206C5DC */ cpu->r[4] = 0x10000000u;
|
|
/* 0206C5E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C5E4 */ cpu->r[5] = 0x00000020u;
|
|
/* 0206C5E8 */ cpu->r[4] = cpu->r[4] + 0x00007D90u;
|
|
/* 0206C5EC */ Gambit_fn_026DD9F0(cpu);
|
|
/* 0206C5F0 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C5F4 */ cpu->r[12] = 0x10000000u;
|
|
/* 0206C5F8 */ cpu->r[0] = cpu->r[0] + 0x00007E4Cu;
|
|
/* 0206C5FC */ cpu->r[12] = cpu->r[12] + 0x00007DD4u;
|
|
/* 0206C600 */ cpu->r[11] = 0x10000000u;
|
|
/* 0206C604 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206C604 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0206C608 */ cpu->r[11] = cpu->r[11] + 0x00007E5Cu;
|
|
/* 0206C60C */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0206C60C */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0206C610 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206C614 */ _t9 = cpu->r[31] + 0x00000010u;
|
|
/* 0206C614 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 0206C618 */ _t10 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0206C618 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 0206C61C */ _t11 = cpu->r[31] + 0x00000028u;
|
|
/* 0206C61C */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_0206C620: ; // 0x206c620
|
|
/* 0206C620 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C620 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C624 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C628 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C628 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C62C */ cpu->lr = cpu->r[0];
|
|
/* 0206C630 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C634 */ return;
|
|
}
|
|
|
|
// fn_0206C5B8 @ 0x206c5b8
|
|
void Gambit_fn_0206C5B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206C5B8: ; // 0x206c5b8
|
|
/* 0206C5B8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C5B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C5B8 */ cpu->r[1] = _t0;
|
|
/* 0206C5BC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C5BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C5C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C5C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206C5C4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C5C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C5C8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C5C8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206C5C8 */ if (_t4) goto L_0206C5CC; else goto L_0206C5DC;
|
|
L_0206C5CC: ; // 0x206c5cc
|
|
/* 0206C5CC */ cpu->r[3] = 0x00000030u;
|
|
/* 0206C5D0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206C5D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C5D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206C5D8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C5D8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C5D8 */ if (_t6) goto L_0206C620; else goto L_0206C5DC;
|
|
L_0206C5DC: ; // 0x206c5dc
|
|
/* 0206C5DC */ cpu->r[4] = 0x10000000u;
|
|
/* 0206C5E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C5E4 */ cpu->r[5] = 0x00000020u;
|
|
/* 0206C5E8 */ cpu->r[4] = cpu->r[4] + 0x00007D90u;
|
|
/* 0206C5EC */ Gambit_fn_026DD9F0(cpu);
|
|
/* 0206C5F0 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206C5F4 */ cpu->r[12] = 0x10000000u;
|
|
/* 0206C5F8 */ cpu->r[0] = cpu->r[0] + 0x00007E4Cu;
|
|
/* 0206C5FC */ cpu->r[12] = cpu->r[12] + 0x00007DD4u;
|
|
/* 0206C600 */ cpu->r[11] = 0x10000000u;
|
|
/* 0206C604 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206C604 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0206C608 */ cpu->r[11] = cpu->r[11] + 0x00007E5Cu;
|
|
/* 0206C60C */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0206C60C */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0206C610 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206C614 */ _t9 = cpu->r[31] + 0x00000010u;
|
|
/* 0206C614 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 0206C618 */ _t10 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0206C618 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 0206C61C */ _t11 = cpu->r[31] + 0x00000028u;
|
|
/* 0206C61C */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_0206C620: ; // 0x206c620
|
|
/* 0206C620 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C620 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C624 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C628 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C628 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C62C */ cpu->lr = cpu->r[0];
|
|
/* 0206C630 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C634 */ return;
|
|
}
|
|
|
|
// fn_0206C638 @ 0x206c638
|
|
void Gambit_fn_0206C638(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_0206C638: ; // 0x206c638
|
|
/* 0206C638 */ _t0 = cpu->r[3] + 0x00000028u;
|
|
/* 0206C638 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C63C */ goto L_0206CBC0;
|
|
L_0206CBC0: ; // 0x206cbc0
|
|
/* 0206CBC0 */ cpu->r[0] = cpu->lr;
|
|
/* 0206CBC4 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206CBC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0206CBC4 */ cpu->r[1] = _t1;
|
|
/* 0206CBC8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CBC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206CBCC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CBCC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0206CBD0 */ cpu->r[31] = cpu->r[5];
|
|
/* 0206CBD4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206CBD8 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CBD8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0206CBDC */ Gambit_fn_0206CB74(cpu);
|
|
/* 0206CBE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000006u);
|
|
/* 0206CBE4 */ cpu->r[12] = cpu->r[30] + 0x0000022Cu;
|
|
/* 0206CBE8 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206CBE8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206CBE8 */ if (_t6) goto L_0206CBEC; else goto L_0206CBF4;
|
|
L_0206CBEC: ; // 0x206cbec
|
|
/* 0206CBEC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0206CBF0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206CBF4: ; // 0x206cbf4
|
|
/* 0206CBF4 */ _t7 = cpu->r[12] + 0x00000000u;
|
|
/* 0206CBF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206CBF8 */ Gambit_fn_02801194(cpu);
|
|
/* 0206CBFC */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CBFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206CC00 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CC00 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206CC04 */ cpu->lr = cpu->r[0];
|
|
/* 0206CC08 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CC08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206CC0C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206CC10 */ return;
|
|
}
|
|
|
|
// fn_0206C640 @ 0x206c640
|
|
void Gambit_fn_0206C640(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0206C640: ; // 0x206c640
|
|
/* 0206C640 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C644 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C644 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C644 */ cpu->r[1] = _t0;
|
|
/* 0206C648 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C648 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C64C */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C650 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C650 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C654 */ _t3 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0206C654 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206C658 */ cpu->r[5] = 0x00000001u;
|
|
/* 0206C65C */ Gambit_fn_027ECB34(cpu);
|
|
/* 0206C660 */ _t4 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0206C660 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206C664 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 0206C664 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206C668 */ _t6 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0206C668 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206C66C */ cpu->ctr = cpu->r[0];
|
|
/* 0206C670 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206C674 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C674 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206C678 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C678 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206C67C */ cpu->lr = cpu->r[0];
|
|
/* 0206C680 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C684 */ return;
|
|
}
|
|
|
|
// fn_0206C644 @ 0x206c644
|
|
void Gambit_fn_0206C644(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0206C644: ; // 0x206c644
|
|
/* 0206C644 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C644 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C644 */ cpu->r[1] = _t0;
|
|
/* 0206C648 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C648 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C64C */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C650 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C650 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C654 */ _t3 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0206C654 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206C658 */ cpu->r[5] = 0x00000001u;
|
|
/* 0206C65C */ Gambit_fn_027ECB34(cpu);
|
|
/* 0206C660 */ _t4 = cpu->r[31] + 0x0000002Cu;
|
|
/* 0206C660 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206C664 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 0206C664 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206C668 */ _t6 = cpu->r[12] + 0x0000008Cu;
|
|
/* 0206C668 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206C66C */ cpu->ctr = cpu->r[0];
|
|
/* 0206C670 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206C674 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C674 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206C678 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C678 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206C67C */ cpu->lr = cpu->r[0];
|
|
/* 0206C680 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C684 */ return;
|
|
}
|
|
|
|
// fn_0206C688 @ 0x206c688
|
|
void Gambit_fn_0206C688(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0206C1FC: ; // 0x206c1fc
|
|
/* 0206C1FC */ _t0 = cpu->r[3] + 0x000001DCu;
|
|
/* 0206C1FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0206C204 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C204 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0206C204 */ if (_t2) goto L_0206C210; else goto L_0206C208;
|
|
L_0206C208: ; // 0x206c208
|
|
/* 0206C208 */ _t3 = cpu->r[12] + 0x00000134u;
|
|
/* 0206C208 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0206C20C */ return;
|
|
L_0206C210: ; // 0x206c210
|
|
/* 0206C210 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206C214 */ return;
|
|
L_0206C688: ; // 0x206c688
|
|
/* 0206C688 */ _t4 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0206C688 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206C68C */ goto L_0206C1FC;
|
|
}
|
|
|
|
// fn_0206C690 @ 0x206c690
|
|
void Gambit_fn_0206C690(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0206C218: ; // 0x206c218
|
|
/* 0206C218 */ _t0 = cpu->r[3] + 0x000001DCu;
|
|
/* 0206C218 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C21C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0206C220 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C220 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0206C220 */ if (_t2) goto L_0206C22C; else goto L_0206C224;
|
|
L_0206C224: ; // 0x206c224
|
|
/* 0206C224 */ _t3 = cpu->r[12] + 0x000002F2u;
|
|
/* 0206C224 */ cpu->r[3] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206C228 */ return;
|
|
L_0206C22C: ; // 0x206c22c
|
|
/* 0206C22C */ cpu->r[3] = 0x00000000u;
|
|
/* 0206C230 */ return;
|
|
L_0206C690: ; // 0x206c690
|
|
/* 0206C690 */ _t4 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0206C690 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206C694 */ goto L_0206C218;
|
|
}
|
|
|
|
// fn_0206C698 @ 0x206c698
|
|
void Gambit_fn_0206C698(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206C698: ; // 0x206c698
|
|
/* 0206C698 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 0206C69C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0206C69C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C69C */ cpu->r[1] = _t0;
|
|
/* 0206C6A0 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0206C6A4 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0206C6A8 */ _t1 = cpu->r[10] + 0xFFFFD508u;
|
|
/* 0206C6A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0206C6A8 */ cpu->r[10] = _t1;
|
|
/* 0206C6AC */ cpu->r[7] = 0x101E0000u;
|
|
/* 0206C6B0 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0206C6B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0206C6B4 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0206C6B8 */ cpu->r[8] = 0x101E0000u;
|
|
/* 0206C6BC */ _t3 = cpu->r[7] + 0xFFFFD518u;
|
|
/* 0206C6BC */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0206C6BC */ cpu->r[7] = _t3;
|
|
/* 0206C6C0 */ _t4 = cpu->r[8] + 0xFFFFD510u;
|
|
/* 0206C6C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0206C6C0 */ cpu->r[8] = _t4;
|
|
/* 0206C6C4 */ cpu->r[0] = 0x00000002u;
|
|
/* 0206C6C8 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0206C6C8 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0206C6CC */ cpu->r[8] = 0x101E0000u;
|
|
/* 0206C6D0 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C6D0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0206C6D4 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0206C6D8 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0206C6D8 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0206C6DC */ _t8 = cpu->r[8] + 0xFFFFD528u;
|
|
/* 0206C6DC */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0206C6DC */ cpu->r[8] = _t8;
|
|
/* 0206C6E0 */ _t9 = cpu->r[12] + 0xFFFFD520u;
|
|
/* 0206C6E0 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0206C6E0 */ cpu->r[12] = _t9;
|
|
/* 0206C6E4 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0206C6E4 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0206C6E8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0206C6EC */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0206C6EC */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0206C6F0 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0206C6F4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C6F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C6F8 */ _t13 = cpu->r[11] + 0xFFFFD530u;
|
|
/* 0206C6F8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0206C6FC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0206C700 */ return;
|
|
}
|
|
|
|
// fn_0206C69C @ 0x206c69c
|
|
void Gambit_fn_0206C69C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206C69C: ; // 0x206c69c
|
|
/* 0206C69C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0206C69C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C69C */ cpu->r[1] = _t0;
|
|
/* 0206C6A0 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0206C6A4 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 0206C6A8 */ _t1 = cpu->r[10] + 0xFFFFD508u;
|
|
/* 0206C6A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 0206C6A8 */ cpu->r[10] = _t1;
|
|
/* 0206C6AC */ cpu->r[7] = 0x101E0000u;
|
|
/* 0206C6B0 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 0206C6B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0206C6B4 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 0206C6B8 */ cpu->r[8] = 0x101E0000u;
|
|
/* 0206C6BC */ _t3 = cpu->r[7] + 0xFFFFD518u;
|
|
/* 0206C6BC */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 0206C6BC */ cpu->r[7] = _t3;
|
|
/* 0206C6C0 */ _t4 = cpu->r[8] + 0xFFFFD510u;
|
|
/* 0206C6C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 0206C6C0 */ cpu->r[8] = _t4;
|
|
/* 0206C6C4 */ cpu->r[0] = 0x00000002u;
|
|
/* 0206C6C8 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 0206C6C8 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0206C6CC */ cpu->r[8] = 0x101E0000u;
|
|
/* 0206C6D0 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C6D0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0206C6D4 */ cpu->r[12] = 0x101E0000u;
|
|
/* 0206C6D8 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 0206C6D8 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0206C6DC */ _t8 = cpu->r[8] + 0xFFFFD528u;
|
|
/* 0206C6DC */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 0206C6DC */ cpu->r[8] = _t8;
|
|
/* 0206C6E0 */ _t9 = cpu->r[12] + 0xFFFFD520u;
|
|
/* 0206C6E0 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 0206C6E0 */ cpu->r[12] = _t9;
|
|
/* 0206C6E4 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0206C6E4 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0206C6E8 */ cpu->r[0] = 0x00000004u;
|
|
/* 0206C6EC */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 0206C6EC */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0206C6F0 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0206C6F4 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C6F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C6F8 */ _t13 = cpu->r[11] + 0xFFFFD530u;
|
|
/* 0206C6F8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0206C6FC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0206C700 */ return;
|
|
}
|
|
|
|
// fn_0206C704 @ 0x206c704
|
|
void Gambit_fn_0206C704(CPUState* cpu) {
|
|
L_0206C704: ; // 0x206c704
|
|
/* 0206C704 */ return;
|
|
}
|
|
|
|
// fn_0206C708 @ 0x206c708
|
|
void Gambit_fn_0206C708(CPUState* cpu) {
|
|
L_0206C708: ; // 0x206c708
|
|
/* 0206C708 */ return;
|
|
}
|
|
|
|
// fn_0206C70C @ 0x206c70c
|
|
void Gambit_fn_0206C70C(CPUState* cpu) {
|
|
L_0206C70C: ; // 0x206c70c
|
|
/* 0206C70C */ return;
|
|
}
|
|
|
|
// fn_0206C710 @ 0x206c710
|
|
void Gambit_fn_0206C710(CPUState* cpu) {
|
|
L_0206C710: ; // 0x206c710
|
|
/* 0206C710 */ return;
|
|
}
|
|
|
|
// fn_0206C714 @ 0x206c714
|
|
void Gambit_fn_0206C714(CPUState* cpu) {
|
|
L_0206C714: ; // 0x206c714
|
|
/* 0206C714 */ return;
|
|
}
|
|
|
|
// fn_0206C718 @ 0x206c718
|
|
void Gambit_fn_0206C718(CPUState* cpu) {
|
|
L_0206C718: ; // 0x206c718
|
|
/* 0206C718 */ cpu->r[3] = 0x00000001u;
|
|
/* 0206C71C */ return;
|
|
}
|
|
|
|
// fn_0206C720 @ 0x206c720
|
|
void Gambit_fn_0206C720(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206C720: ; // 0x206c720
|
|
/* 0206C720 */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 0206C720 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 0206C724 */ return;
|
|
}
|
|
|
|
// fn_0206C728 @ 0x206c728
|
|
void Gambit_fn_0206C728(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206C728: ; // 0x206c728
|
|
/* 0206C728 */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 0206C728 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C72C */ return;
|
|
}
|
|
|
|
// fn_0206C730 @ 0x206c730
|
|
void Gambit_fn_0206C730(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206C730: ; // 0x206c730
|
|
/* 0206C730 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 0206C730 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 0206C734 */ return;
|
|
}
|
|
|
|
// fn_0206C738 @ 0x206c738
|
|
void Gambit_fn_0206C738(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206C738: ; // 0x206c738
|
|
/* 0206C738 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 0206C738 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C73C */ return;
|
|
}
|
|
|
|
// fn_0206C740 @ 0x206c740
|
|
void Gambit_fn_0206C740(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206C740: ; // 0x206c740
|
|
/* 0206C740 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0206C740 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206C744 */ return;
|
|
}
|
|
|
|
// fn_0206C748 @ 0x206c748
|
|
void Gambit_fn_0206C748(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206C748: ; // 0x206c748
|
|
/* 0206C748 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C74C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C74C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C74C */ cpu->r[1] = _t0;
|
|
/* 0206C750 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C750 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C754 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C754 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C758 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206C758 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206C75C */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C760 */ /* nop */
|
|
/* 0206C764 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206C768 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C76C */ Gambit_fn_0206C784(cpu);
|
|
/* 0206C770 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C770 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206C774 */ cpu->lr = cpu->r[0];
|
|
/* 0206C778 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C778 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206C77C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C780 */ return;
|
|
}
|
|
|
|
// fn_0206C74C @ 0x206c74c
|
|
void Gambit_fn_0206C74C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0206C74C: ; // 0x206c74c
|
|
/* 0206C74C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C74C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C74C */ cpu->r[1] = _t0;
|
|
/* 0206C750 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C750 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C754 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C754 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C758 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 0206C758 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206C75C */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C760 */ /* nop */
|
|
/* 0206C764 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206C768 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C76C */ Gambit_fn_0206C784(cpu);
|
|
/* 0206C770 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C770 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206C774 */ cpu->lr = cpu->r[0];
|
|
/* 0206C778 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C778 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206C77C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C780 */ return;
|
|
}
|
|
|
|
// fn_0206C784 @ 0x206c784
|
|
void Gambit_fn_0206C784(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_0206C784: ; // 0x206c784
|
|
/* 0206C784 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206C784 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206C788 */ /* nop */
|
|
/* 0206C78C */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0206C78C */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206C790 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206C794 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206C798 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 0206C798 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206C79C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206C79C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206C79C */ if (_t4) goto L_0206C7A0; else goto L_0206C7B8;
|
|
L_0206C7A0: ; // 0x206c7a0
|
|
/* 0206C7A0 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206C7A4 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206C7A8 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206C7A8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206C7AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206C7B0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C7B0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206C7B0 */ if (_t7) goto L_0206C7B4; else goto L_0206C7C4;
|
|
L_0206C7B4: ; // 0x206c7b4
|
|
/* 0206C7B4 */ return;
|
|
L_0206C7B8: ; // 0x206c7b8
|
|
/* 0206C7B8 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206C7B8 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206C7BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206C7C0 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C7C0 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206C7C0 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206C7C0 */ goto L_0206C7C4;
|
|
L_0206C7C4: ; // 0x206c7c4
|
|
/* 0206C7C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206C7C8 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206C7C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C7CC */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206C7CC */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206C7CC */ if (_t13) goto L_0206C7D0; else goto L_0206C7D8;
|
|
L_0206C7D0: ; // 0x206c7d0
|
|
/* 0206C7D0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206C7D4 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206C7D8: ; // 0x206c7d8
|
|
/* 0206C7D8 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206C7D8 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206C7DC */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206C7DC */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206C7E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206C7E4 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206C7E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206C7E8 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206C7EC */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206C7EC */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206C7EC */ if (_t18) goto L_0206C804; else goto L_0206C7F0;
|
|
L_0206C7F0: ; // 0x206c7f0
|
|
/* 0206C7F0 */ /* nop */
|
|
/* 0206C7F4 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206C7F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206C7F8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206C7FC */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206C800 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206C800 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206C804: ; // 0x206c804
|
|
/* 0206C804 */ cpu->ctr = cpu->r[11];
|
|
/* 0206C808 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206C80C @ 0x206c80c
|
|
void Gambit_fn_0206C80C(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_0206C80C: ; // 0x206c80c
|
|
/* 0206C80C */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206C80C */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206C810 */ /* nop */
|
|
/* 0206C814 */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 0206C814 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206C818 */ cpu->r[8] = cpu->r[0];
|
|
/* 0206C81C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 0206C820 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 0206C820 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206C824 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206C824 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206C824 */ if (_t4) goto L_0206C828; else goto L_0206C840;
|
|
L_0206C828: ; // 0x206c828
|
|
/* 0206C828 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206C82C */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 0206C830 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206C830 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206C834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206C838 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C838 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206C838 */ if (_t7) goto L_0206C83C; else goto L_0206C84C;
|
|
L_0206C83C: ; // 0x206c83c
|
|
/* 0206C83C */ return;
|
|
L_0206C840: ; // 0x206c840
|
|
/* 0206C840 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206C840 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206C844 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0206C848 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C848 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206C848 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206C848 */ goto L_0206C84C;
|
|
L_0206C84C: ; // 0x206c84c
|
|
/* 0206C84C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 0206C850 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206C850 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C854 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206C854 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206C854 */ if (_t13) goto L_0206C858; else goto L_0206C860;
|
|
L_0206C858: ; // 0x206c858
|
|
/* 0206C858 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206C85C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206C860: ; // 0x206c860
|
|
/* 0206C860 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206C860 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206C864 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206C864 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206C868 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206C86C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206C86C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206C870 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0206C874 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206C874 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206C874 */ if (_t18) goto L_0206C88C; else goto L_0206C878;
|
|
L_0206C878: ; // 0x206c878
|
|
/* 0206C878 */ /* nop */
|
|
/* 0206C87C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206C87C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206C880 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206C884 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 0206C888 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206C888 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206C88C: ; // 0x206c88c
|
|
/* 0206C88C */ cpu->ctr = cpu->r[11];
|
|
/* 0206C890 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206C894 @ 0x206c894
|
|
void Gambit_fn_0206C894(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206C894: ; // 0x206c894
|
|
/* 0206C894 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C898 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C898 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C898 */ cpu->r[1] = _t0;
|
|
/* 0206C89C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C89C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C8A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C8A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C8A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C8A8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206C8A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206C8AC */ cpu->r[12] = 0x00000000u;
|
|
/* 0206C8B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206C8B4 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206C8B4 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206C8B8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C8B8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C8B8 */ if (_t6) goto L_0206C8E0; else goto L_0206C8BC;
|
|
L_0206C8BC: ; // 0x206c8bc
|
|
/* 0206C8BC */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206C8BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206C8C0 */ /* nop */
|
|
/* 0206C8C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206C8C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C8C8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206C8C8 */ if (_t9) goto L_0206C8CC; else goto L_0206C8E0;
|
|
L_0206C8CC: ; // 0x206c8cc
|
|
/* 0206C8CC */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206C8CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206C8D0 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206C8D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C8D4 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C8D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206C8E0: ; // 0x206c8e0
|
|
/* 0206C8E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8E4 */ Gambit_fn_0206C80C(cpu);
|
|
/* 0206C8E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8EC */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206C8F0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C8F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C8F4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C8F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C8F8 */ cpu->lr = cpu->r[0];
|
|
/* 0206C8FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C900 */ return;
|
|
}
|
|
|
|
// fn_0206C898 @ 0x206c898
|
|
void Gambit_fn_0206C898(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206C898: ; // 0x206c898
|
|
/* 0206C898 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C898 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C898 */ cpu->r[1] = _t0;
|
|
/* 0206C89C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C89C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C8A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C8A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C8A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C8A8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206C8A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206C8AC */ cpu->r[12] = 0x00000000u;
|
|
/* 0206C8B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206C8B4 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206C8B4 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206C8B8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C8B8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C8B8 */ if (_t6) goto L_0206C8E0; else goto L_0206C8BC;
|
|
L_0206C8BC: ; // 0x206c8bc
|
|
/* 0206C8BC */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206C8BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206C8C0 */ /* nop */
|
|
/* 0206C8C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206C8C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C8C8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206C8C8 */ if (_t9) goto L_0206C8CC; else goto L_0206C8E0;
|
|
L_0206C8CC: ; // 0x206c8cc
|
|
/* 0206C8CC */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206C8CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206C8D0 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206C8D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C8D4 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C8D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206C8E0: ; // 0x206c8e0
|
|
/* 0206C8E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8E4 */ Gambit_fn_0206C80C(cpu);
|
|
/* 0206C8E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8EC */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206C8F0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C8F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C8F4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C8F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C8F8 */ cpu->lr = cpu->r[0];
|
|
/* 0206C8FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C900 */ return;
|
|
}
|
|
|
|
// fn_0206C904 @ 0x206c904
|
|
void Gambit_fn_0206C904(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_0206C904: ; // 0x206c904
|
|
/* 0206C904 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0206C904 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 0206C908 */ /* nop */
|
|
/* 0206C90C */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 0206C90C */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206C910 */ cpu->r[7] = cpu->r[0];
|
|
/* 0206C914 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 0206C918 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 0206C918 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0206C91C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206C91C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206C91C */ if (_t4) goto L_0206C920; else goto L_0206C938;
|
|
L_0206C920: ; // 0x206c920
|
|
/* 0206C920 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206C924 */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 0206C928 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 0206C928 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0206C92C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206C930 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C930 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206C930 */ if (_t7) goto L_0206C934; else goto L_0206C944;
|
|
L_0206C934: ; // 0x206c934
|
|
/* 0206C934 */ return;
|
|
L_0206C938: ; // 0x206c938
|
|
/* 0206C938 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 0206C938 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0206C93C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206C940 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C940 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206C940 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206C940 */ goto L_0206C944;
|
|
L_0206C944: ; // 0x206c944
|
|
/* 0206C944 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 0206C948 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 0206C948 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C94C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206C94C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206C94C */ if (_t13) goto L_0206C950; else goto L_0206C958;
|
|
L_0206C950: ; // 0x206c950
|
|
/* 0206C950 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206C954 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206C958: ; // 0x206c958
|
|
/* 0206C958 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 0206C958 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0206C95C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0206C95C */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 0206C960 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0206C964 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0206C964 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206C968 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 0206C96C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206C96C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206C96C */ if (_t18) goto L_0206C984; else goto L_0206C970;
|
|
L_0206C970: ; // 0x206c970
|
|
/* 0206C970 */ /* nop */
|
|
/* 0206C974 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0206C974 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206C978 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0206C97C */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 0206C980 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 0206C980 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0206C984: ; // 0x206c984
|
|
/* 0206C984 */ cpu->ctr = cpu->r[11];
|
|
/* 0206C988 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206C98C @ 0x206c98c
|
|
void Gambit_fn_0206C98C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206C98C: ; // 0x206c98c
|
|
/* 0206C98C */ cpu->r[0] = cpu->lr;
|
|
/* 0206C990 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C990 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C990 */ cpu->r[1] = _t0;
|
|
/* 0206C994 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C994 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206C998 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C998 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206C99C */ cpu->r[30] = cpu->r[3];
|
|
/* 0206C9A0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C9A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206C9A4 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206C9A4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206C9A8 */ /* nop */
|
|
/* 0206C9AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206C9B0 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206C9B4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C9B4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C9B4 */ if (_t6) goto L_0206C9B8; else goto L_0206C9CC;
|
|
L_0206C9B8: ; // 0x206c9b8
|
|
/* 0206C9B8 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206C9B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206C9BC */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206C9BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206C9C0 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C9C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206C9C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206C9CC: ; // 0x206c9cc
|
|
/* 0206C9CC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206C9D0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206C9D4 */ Gambit_fn_0206C904(cpu);
|
|
/* 0206C9D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206C9DC */ /* nop */
|
|
/* 0206C9E0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206C9E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206C9E8 */ Gambit_fn_0206C784(cpu);
|
|
/* 0206C9EC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C9EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206C9F0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C9F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206C9F4 */ cpu->lr = cpu->r[0];
|
|
/* 0206C9F8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C9F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C9FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206CA00 */ return;
|
|
}
|
|
|
|
// fn_0206C990 @ 0x206c990
|
|
void Gambit_fn_0206C990(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206C990: ; // 0x206c990
|
|
/* 0206C990 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C990 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C990 */ cpu->r[1] = _t0;
|
|
/* 0206C994 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C994 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206C998 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C998 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206C99C */ cpu->r[30] = cpu->r[3];
|
|
/* 0206C9A0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C9A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206C9A4 */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206C9A4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0206C9A8 */ /* nop */
|
|
/* 0206C9AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 0206C9B0 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206C9B4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C9B4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C9B4 */ if (_t6) goto L_0206C9B8; else goto L_0206C9CC;
|
|
L_0206C9B8: ; // 0x206c9b8
|
|
/* 0206C9B8 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 0206C9B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206C9BC */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 0206C9BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206C9C0 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C9C4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206C9C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206C9CC: ; // 0x206c9cc
|
|
/* 0206C9CC */ cpu->r[3] = cpu->r[30];
|
|
/* 0206C9D0 */ cpu->r[4] = cpu->r[31];
|
|
/* 0206C9D4 */ Gambit_fn_0206C904(cpu);
|
|
/* 0206C9D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206C9DC */ /* nop */
|
|
/* 0206C9E0 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0206C9E4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206C9E8 */ Gambit_fn_0206C784(cpu);
|
|
/* 0206C9EC */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C9EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206C9F0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0206C9F0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206C9F4 */ cpu->lr = cpu->r[0];
|
|
/* 0206C9F8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C9F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C9FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206CA00 */ return;
|
|
}
|
|
|
|
// fn_0206CA04 @ 0x206ca04
|
|
void Gambit_fn_0206CA04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0206CA04: ; // 0x206ca04
|
|
/* 0206CA04 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0206CA08 */ goto L_0206CD14;
|
|
L_0206CD14: ; // 0x206cd14
|
|
/* 0206CD14 */ cpu->r[0] = cpu->lr;
|
|
/* 0206CD18 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206CD18 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CD18 */ cpu->r[1] = _t0;
|
|
/* 0206CD1C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CD1C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206CD20 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CD20 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206CD24 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206CD24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206CD28 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206CD2C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CD2C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206CD30 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CD30 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206CD30 */ if (_t5) goto L_0206CDA0; else goto L_0206CD34;
|
|
L_0206CD34: ; // 0x206cd34
|
|
/* 0206CD34 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CD38 */ cpu->r[12] = 0x10010000u;
|
|
/* 0206CD3C */ cpu->r[0] = cpu->r[0] + 0xFFFF80A8u;
|
|
/* 0206CD40 */ cpu->r[12] = cpu->r[12] + 0xFFFF80C8u;
|
|
/* 0206CD44 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206CD44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0206CD48 */ cpu->r[11] = 0x10010000u;
|
|
/* 0206CD4C */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 0206CD4C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0206CD50 */ cpu->r[11] = cpu->r[11] + 0xFFFF80B8u;
|
|
/* 0206CD54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206CD58 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206CD58 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0206CD5C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CD5C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206CD5C */ if (_t10) goto L_0206CD90; else goto L_0206CD60;
|
|
L_0206CD60: ; // 0x206cd60
|
|
/* 0206CD60 */ cpu->r[10] = 0x10010000u;
|
|
/* 0206CD64 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CD68 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 0206CD6C */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 0206CD70 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206CD74 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206CD74 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0206CD78 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CD7C */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206CD7C */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0206CD80 */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 0206CD84 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206CD88 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 0206CD88 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0206CD8C */ Gambit_fn_02068798(cpu);
|
|
L_0206CD90: ; // 0x206cd90
|
|
/* 0206CD90 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206CD90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206CD94 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CD94 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0206CD94 */ if (_t15) goto L_0206CDA0; else goto L_0206CD98;
|
|
L_0206CD98: ; // 0x206cd98
|
|
/* 0206CD98 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206CD9C */ Gambit_fn_02801BB0(cpu);
|
|
L_0206CDA0: ; // 0x206cda0
|
|
/* 0206CDA0 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CDA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206CDA4 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CDA4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0206CDA8 */ cpu->lr = cpu->r[0];
|
|
/* 0206CDAC */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CDAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0206CDB0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206CDB4 */ return;
|
|
}
|
|
|
|
// fn_0206CA0C @ 0x206ca0c
|
|
void Gambit_fn_0206CA0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_0206CA0C: ; // 0x206ca0c
|
|
/* 0206CA0C */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0206CA10 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_0206CA14 @ 0x206ca14
|
|
void Gambit_fn_0206CA14(CPUState* cpu) {
|
|
L_0206CA14: ; // 0x206ca14
|
|
/* 0206CA14 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0206CA18 */ goto L_0206CDB8;
|
|
L_0206CDB8: ; // 0x206cdb8
|
|
/* 0206CDB8 */ return;
|
|
}
|
|
|
|
// fn_0206CA1C @ 0x206ca1c
|
|
void Gambit_fn_0206CA1C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206CA1C: ; // 0x206ca1c
|
|
/* 0206CA1C */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0206CA20 */ goto L_0206CDBC;
|
|
L_0206CDBC: ; // 0x206cdbc
|
|
/* 0206CDBC */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0206CDBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206CDC0 */ return;
|
|
}
|
|
|
|
// fn_0206CA24 @ 0x206ca24
|
|
void Gambit_fn_0206CA24(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_0206CA24: ; // 0x206ca24
|
|
/* 0206CA24 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0206CA24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CA24 */ cpu->r[1] = _t0;
|
|
/* 0206CA28 */ cpu->r[0] = cpu->lr;
|
|
/* 0206CA2C */ /* nop */
|
|
/* 0206CA30 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206CA30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206CA34 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 0206CA34 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0206CA38 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CA38 */ _t3 = _t2 & 0x00000001u;
|
|
/* 0206CA38 */ if (_t3) goto L_0206CA3C; else goto L_0206CA4C;
|
|
L_0206CA3C: ; // 0x206ca3c
|
|
/* 0206CA3C */ cpu->r[3] = 0x00000244u;
|
|
/* 0206CA40 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206CA44 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206CA44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206CA48 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CA48 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206CA48 */ if (_t5) goto L_0206CAEC; else goto L_0206CA4C;
|
|
L_0206CA4C: ; // 0x206ca4c
|
|
/* 0206CA4C */ cpu->r[4] = 0x10000000u;
|
|
/* 0206CA50 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206CA54 */ cpu->r[5] = 0x00000000u;
|
|
/* 0206CA58 */ cpu->r[4] = cpu->r[4] + 0x00007F0Cu;
|
|
/* 0206CA5C */ Gambit_fn_020B82F0(cpu);
|
|
/* 0206CA60 */ cpu->r[8] = 0x10000000u;
|
|
/* 0206CA64 */ cpu->r[9] = 0x10010000u;
|
|
/* 0206CA68 */ cpu->r[8] = cpu->r[8] + 0x00007F40u;
|
|
/* 0206CA6C */ cpu->r[9] = cpu->r[9] + 0xFFFF80A8u;
|
|
/* 0206CA70 */ cpu->r[10] = 0x10010000u;
|
|
/* 0206CA74 */ _t6 = cpu->r[31] + 0x00000000u;
|
|
/* 0206CA74 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 0206CA78 */ cpu->r[10] = cpu->r[10] + 0xFFFF80B8u;
|
|
/* 0206CA7C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206CA7C */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 0206CA80 */ cpu->r[11] = 0x10010000u;
|
|
/* 0206CA84 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0206CA84 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 0206CA88 */ cpu->r[11] = cpu->r[11] + 0xFFFF80C8u;
|
|
/* 0206CA8C */ cpu->r[28] = 0x00000000u;
|
|
/* 0206CA90 */ _t9 = cpu->r[31] + 0x000001C8u;
|
|
/* 0206CA90 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 0206CA94 */ cpu->r[29] = cpu->r[31] + 0x0000022Cu;
|
|
/* 0206CA98 */ _t10 = cpu->r[31] + 0x00000228u;
|
|
/* 0206CA98 */ rbrew_write32(cpu->mem, _t10, cpu->r[28]);
|
|
/* 0206CA9C */ cpu->r[27] = cpu->r[29];
|
|
/* 0206CAA0 */ _t11 = cpu->r[31] + 0x00000224u;
|
|
/* 0206CAA0 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 0206CAA4 */ goto L_0206CAB0;
|
|
L_0206CAA8: ; // 0x206caa8
|
|
/* 0206CAA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x00000006u);
|
|
/* 0206CAAC */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206CAAC */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206CAAC */ if (_t13) goto L_0206CAB0; else goto L_0206CAB8;
|
|
L_0206CAB0: ; // 0x206cab0
|
|
/* 0206CAB0 */ cpu->r[30] = cpu->r[27];
|
|
/* 0206CAB4 */ goto L_0206CABC;
|
|
L_0206CAB8: ; // 0x206cab8
|
|
/* 0206CAB8 */ cpu->r[30] = cpu->r[29];
|
|
L_0206CABC: ; // 0x206cabc
|
|
/* 0206CABC */ cpu->r[3] = 0x0000036Cu;
|
|
/* 0206CAC0 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206CAC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206CAC8 */ cpu->r[0] = cpu->r[3];
|
|
/* 0206CACC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CACC */ _t15 = _t14 & 0x00000001u;
|
|
/* 0206CACC */ if (_t15) goto L_0206CAD8; else goto L_0206CAD0;
|
|
L_0206CAD0: ; // 0x206cad0
|
|
/* 0206CAD0 */ Gambit_fn_02800E08(cpu);
|
|
/* 0206CAD4 */ cpu->r[0] = cpu->r[3];
|
|
L_0206CAD8: ; // 0x206cad8
|
|
/* 0206CAD8 */ cpu->r[28] = cpu->r[28] + 0x00000001u;
|
|
/* 0206CADC */ _t16 = cpu->r[30] + 0x00000000u;
|
|
/* 0206CADC */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0206CAE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000006u);
|
|
/* 0206CAE4 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 0206CAE8 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206CAE8 */ _t18 = _t17 & 0x00000001u;
|
|
/* 0206CAE8 */ if (_t18) goto L_0206CAA8; else goto L_0206CAEC;
|
|
L_0206CAEC: ; // 0x206caec
|
|
/* 0206CAEC */ cpu->r[3] = cpu->r[31];
|
|
/* 0206CAF0 */ /* nop */
|
|
/* 0206CAF4 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 0206CAF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206CAF8 */ cpu->lr = cpu->r[0];
|
|
/* 0206CAFC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0206CB00 */ return;
|
|
}
|
|
|
|
// fn_0206CB04 @ 0x206cb04
|
|
void Gambit_fn_0206CB04(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206CB04: ; // 0x206cb04
|
|
/* 0206CB04 */ cpu->r[0] = cpu->lr;
|
|
/* 0206CB08 */ _t0 = cpu->r[1] + 0xFFFFFF48u;
|
|
/* 0206CB08 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CB08 */ cpu->r[1] = _t0;
|
|
/* 0206CB0C */ _t1 = cpu->r[1] + 0x000000B4u;
|
|
/* 0206CB0C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206CB10 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206CB14 */ cpu->r[5] = 0x00000000u;
|
|
/* 0206CB18 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CB18 */ rbrew_write16(cpu->mem, _t2, (uint16_t)cpu->r[5]);
|
|
/* 0206CB1C */ _t3 = cpu->r[1] + 0x000000B0u;
|
|
/* 0206CB1C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0206CB20 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CB20 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0206CB24 */ cpu->r[30] = cpu->r[4];
|
|
/* 0206CB28 */ _t5 = cpu->r[1] + 0x000000BCu;
|
|
/* 0206CB28 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206CB2C */ _t6 = cpu->r[31] + 0x00000228u;
|
|
/* 0206CB2C */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206CB30 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206CB34 */ _t7 = cpu->r[1] + 0x0000000Eu;
|
|
/* 0206CB34 */ rbrew_write16(cpu->mem, _t7, (uint16_t)cpu->r[5]);
|
|
/* 0206CB38 */ Gambit_fn_02800CB0(cpu);
|
|
/* 0206CB3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000006u);
|
|
/* 0206CB40 */ cpu->r[12] = cpu->r[31] + 0x0000022Cu;
|
|
/* 0206CB44 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206CB44 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206CB44 */ if (_t9) goto L_0206CB48; else goto L_0206CB50;
|
|
L_0206CB48: ; // 0x206cb48
|
|
/* 0206CB48 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0206CB4C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206CB50: ; // 0x206cb50
|
|
/* 0206CB50 */ _t10 = cpu->r[12] + 0x00000000u;
|
|
/* 0206CB50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206CB54 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206CB58 */ Gambit_fn_02801068(cpu);
|
|
/* 0206CB5C */ _t11 = cpu->r[1] + 0x000000BCu;
|
|
/* 0206CB5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206CB60 */ _t12 = cpu->r[1] + 0x000000B0u;
|
|
/* 0206CB60 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206CB64 */ cpu->lr = cpu->r[0];
|
|
/* 0206CB68 */ _t13 = cpu->r[1] + 0x000000B4u;
|
|
/* 0206CB68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206CB6C */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 0206CB70 */ return;
|
|
}
|
|
|
|
// fn_0206CB08 @ 0x206cb08
|
|
void Gambit_fn_0206CB08(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206CB08: ; // 0x206cb08
|
|
/* 0206CB08 */ _t0 = cpu->r[1] + 0xFFFFFF48u;
|
|
/* 0206CB08 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CB08 */ cpu->r[1] = _t0;
|
|
/* 0206CB0C */ _t1 = cpu->r[1] + 0x000000B4u;
|
|
/* 0206CB0C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206CB10 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206CB14 */ cpu->r[5] = 0x00000000u;
|
|
/* 0206CB18 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CB18 */ rbrew_write16(cpu->mem, _t2, (uint16_t)cpu->r[5]);
|
|
/* 0206CB1C */ _t3 = cpu->r[1] + 0x000000B0u;
|
|
/* 0206CB1C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 0206CB20 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CB20 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]);
|
|
/* 0206CB24 */ cpu->r[30] = cpu->r[4];
|
|
/* 0206CB28 */ _t5 = cpu->r[1] + 0x000000BCu;
|
|
/* 0206CB28 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206CB2C */ _t6 = cpu->r[31] + 0x00000228u;
|
|
/* 0206CB2C */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206CB30 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206CB34 */ _t7 = cpu->r[1] + 0x0000000Eu;
|
|
/* 0206CB34 */ rbrew_write16(cpu->mem, _t7, (uint16_t)cpu->r[5]);
|
|
/* 0206CB38 */ Gambit_fn_02800CB0(cpu);
|
|
/* 0206CB3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000006u);
|
|
/* 0206CB40 */ cpu->r[12] = cpu->r[31] + 0x0000022Cu;
|
|
/* 0206CB44 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206CB44 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206CB44 */ if (_t9) goto L_0206CB48; else goto L_0206CB50;
|
|
L_0206CB48: ; // 0x206cb48
|
|
/* 0206CB48 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0206CB4C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206CB50: ; // 0x206cb50
|
|
/* 0206CB50 */ _t10 = cpu->r[12] + 0x00000000u;
|
|
/* 0206CB50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206CB54 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206CB58 */ Gambit_fn_02801068(cpu);
|
|
/* 0206CB5C */ _t11 = cpu->r[1] + 0x000000BCu;
|
|
/* 0206CB5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206CB60 */ _t12 = cpu->r[1] + 0x000000B0u;
|
|
/* 0206CB60 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206CB64 */ cpu->lr = cpu->r[0];
|
|
/* 0206CB68 */ _t13 = cpu->r[1] + 0x000000B4u;
|
|
/* 0206CB68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206CB6C */ cpu->r[1] = cpu->r[1] + 0x000000B8u;
|
|
/* 0206CB70 */ return;
|
|
}
|
|
|
|
// fn_0206CB74 @ 0x206cb74
|
|
void Gambit_fn_0206CB74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0206CB74: ; // 0x206cb74
|
|
/* 0206CB74 */ cpu->r[0] = cpu->lr;
|
|
/* 0206CB78 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206CB78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CB78 */ cpu->r[1] = _t0;
|
|
/* 0206CB7C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CB7C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206CB80 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CB80 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206CB84 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206CB88 */ cpu->r[30] = cpu->r[5];
|
|
/* 0206CB8C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CB8C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206CB90 */ _t4 = cpu->r[31] + 0x00000224u;
|
|
/* 0206CB90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206CB94 */ cpu->r[5] = 0x00000001u;
|
|
/* 0206CB98 */ Gambit_fn_020CF800(cpu);
|
|
/* 0206CB9C */ cpu->r[4] = cpu->r[30];
|
|
/* 0206CBA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206CBA4 */ Gambit_fn_0206CB04(cpu);
|
|
/* 0206CBA8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CBA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206CBAC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CBAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206CBB0 */ cpu->lr = cpu->r[0];
|
|
/* 0206CBB4 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CBB4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206CBB8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206CBBC */ return;
|
|
}
|
|
|
|
// fn_0206CB78 @ 0x206cb78
|
|
void Gambit_fn_0206CB78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0206CB78: ; // 0x206cb78
|
|
/* 0206CB78 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206CB78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CB78 */ cpu->r[1] = _t0;
|
|
/* 0206CB7C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CB7C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206CB80 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CB80 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206CB84 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206CB88 */ cpu->r[30] = cpu->r[5];
|
|
/* 0206CB8C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CB8C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206CB90 */ _t4 = cpu->r[31] + 0x00000224u;
|
|
/* 0206CB90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0206CB94 */ cpu->r[5] = 0x00000001u;
|
|
/* 0206CB98 */ Gambit_fn_020CF800(cpu);
|
|
/* 0206CB9C */ cpu->r[4] = cpu->r[30];
|
|
/* 0206CBA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206CBA4 */ Gambit_fn_0206CB04(cpu);
|
|
/* 0206CBA8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CBA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0206CBAC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CBAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206CBB0 */ cpu->lr = cpu->r[0];
|
|
/* 0206CBB4 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CBB4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206CBB8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206CBBC */ return;
|
|
}
|
|
|
|
// fn_0206CBC4 @ 0x206cbc4
|
|
void Gambit_fn_0206CBC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0206CBC4: ; // 0x206cbc4
|
|
/* 0206CBC4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206CBC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CBC4 */ cpu->r[1] = _t0;
|
|
/* 0206CBC8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CBC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0206CBCC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CBCC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206CBD0 */ cpu->r[31] = cpu->r[5];
|
|
/* 0206CBD4 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206CBD8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CBD8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206CBDC */ Gambit_fn_0206CB74(cpu);
|
|
/* 0206CBE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000006u);
|
|
/* 0206CBE4 */ cpu->r[12] = cpu->r[30] + 0x0000022Cu;
|
|
/* 0206CBE8 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206CBE8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206CBE8 */ if (_t5) goto L_0206CBEC; else goto L_0206CBF4;
|
|
L_0206CBEC: ; // 0x206cbec
|
|
/* 0206CBEC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0206CBF0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0206CBF4: ; // 0x206cbf4
|
|
/* 0206CBF4 */ _t6 = cpu->r[12] + 0x00000000u;
|
|
/* 0206CBF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0206CBF8 */ Gambit_fn_02801194(cpu);
|
|
/* 0206CBFC */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CBFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206CC00 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CC00 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0206CC04 */ cpu->lr = cpu->r[0];
|
|
/* 0206CC08 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CC08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0206CC0C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206CC10 */ return;
|
|
}
|
|
|
|
// fn_0206CC14 @ 0x206cc14
|
|
void Gambit_fn_0206CC14(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_0206CC14: ; // 0x206cc14
|
|
/* 0206CC14 */ cpu->r[0] = cpu->lr;
|
|
/* 0206CC18 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0206CC18 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CC18 */ cpu->r[1] = _t0;
|
|
/* 0206CC1C */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206CC1C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0206CC20 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0206CC20 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206CC24 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0206CC24 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0206CC28 */ cpu->r[8] = 0x10000000u;
|
|
/* 0206CC2C */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206CC2C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0206CC30 */ cpu->r[29] = 0x10000000u;
|
|
/* 0206CC34 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206CC38 */ cpu->r[29] = cpu->r[29] + 0x00007ED4u;
|
|
/* 0206CC3C */ cpu->r[8] = cpu->r[8] + 0x00007F24u;
|
|
/* 0206CC40 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CC40 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0206CC44 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206CC48 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CC48 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 0206CC4C */ Gambit_fn_026D86B0(cpu);
|
|
/* 0206CC50 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0206CC54 */ _t7 = cpu->r[12] + 0xFFFFED9Cu;
|
|
/* 0206CC54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206CC54 */ cpu->r[12] = _t7;
|
|
/* 0206CC58 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206CC5C */ cpu->r[4] = 0x101D0000u;
|
|
/* 0206CC60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0206CC64 */ cpu->r[4] = cpu->r[4] + 0xFFFFEDDCu;
|
|
/* 0206CC68 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CC68 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206CC68 */ if (_t9) goto L_0206CC6C; else goto L_0206CC80;
|
|
L_0206CC6C: ; // 0x206cc6c
|
|
/* 0206CC6C */ cpu->r[0] = 0x10000000u;
|
|
/* 0206CC70 */ cpu->r[10] = 0x00000001u;
|
|
/* 0206CC74 */ cpu->r[0] = cpu->r[0] + 0x00007EFCu;
|
|
/* 0206CC78 */ _t10 = cpu->r[12] + 0x00000000u;
|
|
/* 0206CC78 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 0206CC7C */ _t11 = cpu->r[4] + 0x00000000u;
|
|
/* 0206CC7C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0206CC80: ; // 0x206cc80
|
|
/* 0206CC80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206CC84 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CC84 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206CC84 */ if (_t13) goto L_0206CCA4; else goto L_0206CC88;
|
|
L_0206CC88: ; // 0x206cc88
|
|
/* 0206CC88 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 0206CC88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206CC8C */ _t15 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0206CC8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206CC90 */ cpu->ctr = cpu->r[0];
|
|
/* 0206CC94 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206CC98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206CC9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206CCA0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CCA0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0206CCA0 */ if (_t17) goto L_0206CCA4; else goto L_0206CCA8;
|
|
L_0206CCA4: ; // 0x206cca4
|
|
/* 0206CCA4 */ cpu->r[31] = 0x00000000u;
|
|
L_0206CCA8: ; // 0x206cca8
|
|
/* 0206CCA8 */ cpu->r[11] = 0x10000000u;
|
|
/* 0206CCAC */ _t18 = cpu->r[30] + 0x00000224u;
|
|
/* 0206CCAC */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 0206CCB0 */ cpu->r[11] = cpu->r[11] + 0x00007F20u;
|
|
/* 0206CCB4 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CCB4 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 0206CCB8 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206CCBC */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CCBC */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 0206CCC0 */ cpu->r[0] = cpu->r[0] + 0x00007F34u;
|
|
/* 0206CCC4 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0206CCC8 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CCC8 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 0206CCCC */ cpu->r[3] = cpu->r[31];
|
|
/* 0206CCD0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206CCD4 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0206CCD4 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 0206CCD8 */ Gambit_fn_027EC294(cpu);
|
|
/* 0206CCDC */ _t23 = cpu->r[30] + 0x00000228u;
|
|
/* 0206CCDC */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
/* 0206CCE0 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206CCE0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0206CCE4 */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206CCE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0206CCE8 */ _t26 = cpu->r[1] + 0x00000024u;
|
|
/* 0206CCE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0206CCEC */ cpu->lr = cpu->r[0];
|
|
/* 0206CCF0 */ _t27 = cpu->r[1] + 0x00000020u;
|
|
/* 0206CCF0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0206CCF4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0206CCF8 */ return;
|
|
}
|
|
|
|
// fn_0206CC18 @ 0x206cc18
|
|
void Gambit_fn_0206CC18(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_0206CC18: ; // 0x206cc18
|
|
/* 0206CC18 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 0206CC18 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CC18 */ cpu->r[1] = _t0;
|
|
/* 0206CC1C */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206CC1C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 0206CC20 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0206CC20 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206CC24 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0206CC24 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0206CC28 */ cpu->r[8] = 0x10000000u;
|
|
/* 0206CC2C */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206CC2C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0206CC30 */ cpu->r[29] = 0x10000000u;
|
|
/* 0206CC34 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206CC38 */ cpu->r[29] = cpu->r[29] + 0x00007ED4u;
|
|
/* 0206CC3C */ cpu->r[8] = cpu->r[8] + 0x00007F24u;
|
|
/* 0206CC40 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CC40 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0206CC44 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206CC48 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CC48 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 0206CC4C */ Gambit_fn_026D86B0(cpu);
|
|
/* 0206CC50 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0206CC54 */ _t7 = cpu->r[12] + 0xFFFFED9Cu;
|
|
/* 0206CC54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206CC54 */ cpu->r[12] = _t7;
|
|
/* 0206CC58 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206CC5C */ cpu->r[4] = 0x101D0000u;
|
|
/* 0206CC60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0206CC64 */ cpu->r[4] = cpu->r[4] + 0xFFFFEDDCu;
|
|
/* 0206CC68 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CC68 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206CC68 */ if (_t9) goto L_0206CC6C; else goto L_0206CC80;
|
|
L_0206CC6C: ; // 0x206cc6c
|
|
/* 0206CC6C */ cpu->r[0] = 0x10000000u;
|
|
/* 0206CC70 */ cpu->r[10] = 0x00000001u;
|
|
/* 0206CC74 */ cpu->r[0] = cpu->r[0] + 0x00007EFCu;
|
|
/* 0206CC78 */ _t10 = cpu->r[12] + 0x00000000u;
|
|
/* 0206CC78 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 0206CC7C */ _t11 = cpu->r[4] + 0x00000000u;
|
|
/* 0206CC7C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0206CC80: ; // 0x206cc80
|
|
/* 0206CC80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206CC84 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CC84 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206CC84 */ if (_t13) goto L_0206CCA4; else goto L_0206CC88;
|
|
L_0206CC88: ; // 0x206cc88
|
|
/* 0206CC88 */ _t14 = cpu->r[31] + 0x00000000u;
|
|
/* 0206CC88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206CC8C */ _t15 = cpu->r[12] + 0x0000001Cu;
|
|
/* 0206CC8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206CC90 */ cpu->ctr = cpu->r[0];
|
|
/* 0206CC94 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206CC98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0206CC9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206CCA0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CCA0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0206CCA0 */ if (_t17) goto L_0206CCA4; else goto L_0206CCA8;
|
|
L_0206CCA4: ; // 0x206cca4
|
|
/* 0206CCA4 */ cpu->r[31] = 0x00000000u;
|
|
L_0206CCA8: ; // 0x206cca8
|
|
/* 0206CCA8 */ cpu->r[11] = 0x10000000u;
|
|
/* 0206CCAC */ _t18 = cpu->r[30] + 0x00000224u;
|
|
/* 0206CCAC */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 0206CCB0 */ cpu->r[11] = cpu->r[11] + 0x00007F20u;
|
|
/* 0206CCB4 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CCB4 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 0206CCB8 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206CCBC */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CCBC */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 0206CCC0 */ cpu->r[0] = cpu->r[0] + 0x00007F34u;
|
|
/* 0206CCC4 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0206CCC8 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CCC8 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 0206CCCC */ cpu->r[3] = cpu->r[31];
|
|
/* 0206CCD0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206CCD4 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0206CCD4 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 0206CCD8 */ Gambit_fn_027EC294(cpu);
|
|
/* 0206CCDC */ _t23 = cpu->r[30] + 0x00000228u;
|
|
/* 0206CCDC */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
/* 0206CCE0 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206CCE0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0206CCE4 */ _t25 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206CCE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0206CCE8 */ _t26 = cpu->r[1] + 0x00000024u;
|
|
/* 0206CCE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0206CCEC */ cpu->lr = cpu->r[0];
|
|
/* 0206CCF0 */ _t27 = cpu->r[1] + 0x00000020u;
|
|
/* 0206CCF0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0206CCF4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0206CCF8 */ return;
|
|
}
|
|
|
|
// fn_0206CCFC @ 0x206ccfc
|
|
void Gambit_fn_0206CCFC(CPUState* cpu) {
|
|
L_0206CCFC: ; // 0x206ccfc
|
|
/* 0206CCFC */ return;
|
|
}
|
|
|
|
// fn_0206CD00 @ 0x206cd00
|
|
void Gambit_fn_0206CD00(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_0206CD00: ; // 0x206cd00
|
|
/* 0206CD00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206CD04 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CD04 */ _t1 = _t0 & 0x00000001u;
|
|
/* 0206CD04 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206CD04 */ goto L_0206CD08;
|
|
L_0206CD08: ; // 0x206cd08
|
|
/* 0206CD08 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206CD08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206CD0C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CD0C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0206CD0C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0206CD0C */ goto L_0206CD10;
|
|
L_0206CD10: ; // 0x206cd10
|
|
/* 0206CD10 */ 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_0206CD14 @ 0x206cd14
|
|
void Gambit_fn_0206CD14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0206CD14: ; // 0x206cd14
|
|
/* 0206CD14 */ cpu->r[0] = cpu->lr;
|
|
/* 0206CD18 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206CD18 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CD18 */ cpu->r[1] = _t0;
|
|
/* 0206CD1C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CD1C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206CD20 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CD20 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206CD24 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206CD24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206CD28 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206CD2C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CD2C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206CD30 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CD30 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206CD30 */ if (_t5) goto L_0206CDA0; else goto L_0206CD34;
|
|
L_0206CD34: ; // 0x206cd34
|
|
/* 0206CD34 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CD38 */ cpu->r[12] = 0x10010000u;
|
|
/* 0206CD3C */ cpu->r[0] = cpu->r[0] + 0xFFFF80A8u;
|
|
/* 0206CD40 */ cpu->r[12] = cpu->r[12] + 0xFFFF80C8u;
|
|
/* 0206CD44 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206CD44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0206CD48 */ cpu->r[11] = 0x10010000u;
|
|
/* 0206CD4C */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 0206CD4C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0206CD50 */ cpu->r[11] = cpu->r[11] + 0xFFFF80B8u;
|
|
/* 0206CD54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206CD58 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206CD58 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0206CD5C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CD5C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206CD5C */ if (_t10) goto L_0206CD90; else goto L_0206CD60;
|
|
L_0206CD60: ; // 0x206cd60
|
|
/* 0206CD60 */ cpu->r[10] = 0x10010000u;
|
|
/* 0206CD64 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CD68 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 0206CD6C */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 0206CD70 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206CD74 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206CD74 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0206CD78 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CD7C */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206CD7C */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0206CD80 */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 0206CD84 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206CD88 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 0206CD88 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0206CD8C */ Gambit_fn_02068798(cpu);
|
|
L_0206CD90: ; // 0x206cd90
|
|
/* 0206CD90 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206CD90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206CD94 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CD94 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0206CD94 */ if (_t15) goto L_0206CDA0; else goto L_0206CD98;
|
|
L_0206CD98: ; // 0x206cd98
|
|
/* 0206CD98 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206CD9C */ Gambit_fn_02801BB0(cpu);
|
|
L_0206CDA0: ; // 0x206cda0
|
|
/* 0206CDA0 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CDA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206CDA4 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CDA4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0206CDA8 */ cpu->lr = cpu->r[0];
|
|
/* 0206CDAC */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CDAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0206CDB0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206CDB4 */ return;
|
|
}
|
|
|
|
// fn_0206CD18 @ 0x206cd18
|
|
void Gambit_fn_0206CD18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0206CD18: ; // 0x206cd18
|
|
/* 0206CD18 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206CD18 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CD18 */ cpu->r[1] = _t0;
|
|
/* 0206CD1C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CD1C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206CD20 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CD20 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206CD24 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206CD24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206CD28 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206CD2C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CD2C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206CD30 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CD30 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206CD30 */ if (_t5) goto L_0206CDA0; else goto L_0206CD34;
|
|
L_0206CD34: ; // 0x206cd34
|
|
/* 0206CD34 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CD38 */ cpu->r[12] = 0x10010000u;
|
|
/* 0206CD3C */ cpu->r[0] = cpu->r[0] + 0xFFFF80A8u;
|
|
/* 0206CD40 */ cpu->r[12] = cpu->r[12] + 0xFFFF80C8u;
|
|
/* 0206CD44 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206CD44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0206CD48 */ cpu->r[11] = 0x10010000u;
|
|
/* 0206CD4C */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 0206CD4C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0206CD50 */ cpu->r[11] = cpu->r[11] + 0xFFFF80B8u;
|
|
/* 0206CD54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206CD58 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206CD58 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0206CD5C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CD5C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206CD5C */ if (_t10) goto L_0206CD90; else goto L_0206CD60;
|
|
L_0206CD60: ; // 0x206cd60
|
|
/* 0206CD60 */ cpu->r[10] = 0x10010000u;
|
|
/* 0206CD64 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CD68 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 0206CD6C */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 0206CD70 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206CD74 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206CD74 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0206CD78 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CD7C */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206CD7C */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0206CD80 */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 0206CD84 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206CD88 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 0206CD88 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0206CD8C */ Gambit_fn_02068798(cpu);
|
|
L_0206CD90: ; // 0x206cd90
|
|
/* 0206CD90 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206CD90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206CD94 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CD94 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0206CD94 */ if (_t15) goto L_0206CDA0; else goto L_0206CD98;
|
|
L_0206CD98: ; // 0x206cd98
|
|
/* 0206CD98 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206CD9C */ Gambit_fn_02801BB0(cpu);
|
|
L_0206CDA0: ; // 0x206cda0
|
|
/* 0206CDA0 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CDA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206CDA4 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CDA4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0206CDA8 */ cpu->lr = cpu->r[0];
|
|
/* 0206CDAC */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CDAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0206CDB0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206CDB4 */ return;
|
|
}
|
|
|
|
// fn_0206CD24 @ 0x206cd24
|
|
void Gambit_fn_0206CD24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0206CD24: ; // 0x206cd24
|
|
/* 0206CD24 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206CD24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206CD28 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206CD2C */ _t0 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CD2C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 0206CD30 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CD30 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0206CD30 */ if (_t2) goto L_0206CDA0; else goto L_0206CD34;
|
|
L_0206CD34: ; // 0x206cd34
|
|
/* 0206CD34 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CD38 */ cpu->r[12] = 0x10010000u;
|
|
/* 0206CD3C */ cpu->r[0] = cpu->r[0] + 0xFFFF80A8u;
|
|
/* 0206CD40 */ cpu->r[12] = cpu->r[12] + 0xFFFF80C8u;
|
|
/* 0206CD44 */ _t3 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206CD44 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206CD48 */ cpu->r[11] = 0x10010000u;
|
|
/* 0206CD4C */ _t4 = cpu->r[30] + 0x000001C8u;
|
|
/* 0206CD4C */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0206CD50 */ cpu->r[11] = cpu->r[11] + 0xFFFF80B8u;
|
|
/* 0206CD54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206CD58 */ _t5 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206CD58 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 0206CD5C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CD5C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0206CD5C */ if (_t7) goto L_0206CD90; else goto L_0206CD60;
|
|
L_0206CD60: ; // 0x206cd60
|
|
/* 0206CD60 */ cpu->r[10] = 0x10010000u;
|
|
/* 0206CD64 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CD68 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 0206CD6C */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 0206CD70 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206CD74 */ _t8 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206CD74 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0206CD78 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CD7C */ _t9 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206CD7C */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 0206CD80 */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 0206CD84 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206CD88 */ _t10 = cpu->r[30] + 0x000001C8u;
|
|
/* 0206CD88 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0206CD8C */ Gambit_fn_02068798(cpu);
|
|
L_0206CD90: ; // 0x206cd90
|
|
/* 0206CD90 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206CD90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206CD94 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CD94 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0206CD94 */ if (_t12) goto L_0206CDA0; else goto L_0206CD98;
|
|
L_0206CD98: ; // 0x206cd98
|
|
/* 0206CD98 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206CD9C */ Gambit_fn_02801BB0(cpu);
|
|
L_0206CDA0: ; // 0x206cda0
|
|
/* 0206CDA0 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CDA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206CDA4 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CDA4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206CDA8 */ cpu->lr = cpu->r[0];
|
|
/* 0206CDAC */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CDAC */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206CDB0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206CDB4 */ return;
|
|
}
|
|
|
|
// fn_0206CDB8 @ 0x206cdb8
|
|
void Gambit_fn_0206CDB8(CPUState* cpu) {
|
|
L_0206CDB8: ; // 0x206cdb8
|
|
/* 0206CDB8 */ return;
|
|
}
|
|
|
|
// fn_0206CDBC @ 0x206cdbc
|
|
void Gambit_fn_0206CDBC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206CDBC: ; // 0x206cdbc
|
|
/* 0206CDBC */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0206CDBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206CDC0 */ return;
|
|
}
|
|
|
|
// fn_0206CDC4 @ 0x206cdc4
|
|
void Gambit_fn_0206CDC4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206CDC4: ; // 0x206cdc4
|
|
/* 0206CDC4 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0206CDC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206CDC8 */ return;
|
|
}
|
|
|
|
// fn_0206CDCC @ 0x206cdcc
|
|
void Gambit_fn_0206CDCC(CPUState* cpu) {
|
|
L_0206CDCC: ; // 0x206cdcc
|
|
/* 0206CDCC */ return;
|
|
}
|
|
|
|
// fn_0206CDD0 @ 0x206cdd0
|
|
void Gambit_fn_0206CDD0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206CDD0: ; // 0x206cdd0
|
|
/* 0206CDD0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0206CDD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206CDD4 */ return;
|
|
}
|
|
|
|
// fn_0206CDD8 @ 0x206cdd8
|
|
void Gambit_fn_0206CDD8(CPUState* cpu) {
|
|
L_0206CDD8: ; // 0x206cdd8
|
|
/* 0206CDD8 */ return;
|
|
}
|
|
|
|
// fn_0206CDDC @ 0x206cddc
|
|
void Gambit_fn_0206CDDC(CPUState* cpu) {
|
|
L_0206CDDC: ; // 0x206cddc
|
|
/* 0206CDDC */ return;
|
|
}
|
|
|
|
// fn_0206CDE0 @ 0x206cde0
|
|
void Gambit_fn_0206CDE0(CPUState* cpu) {
|
|
L_0206CDE0: ; // 0x206cde0
|
|
/* 0206CDE0 */ return;
|
|
}
|
|
|
|
// fn_0206CDE4 @ 0x206cde4
|
|
void Gambit_fn_0206CDE4(CPUState* cpu) {
|
|
L_0206CDE4: ; // 0x206cde4
|
|
/* 0206CDE4 */ return;
|
|
}
|
|
|
|
// fn_0206CDE8 @ 0x206cde8
|
|
void Gambit_fn_0206CDE8(CPUState* cpu) {
|
|
L_0206CDE8: ; // 0x206cde8
|
|
/* 0206CDE8 */ cpu->r[3] = 0x00000001u;
|
|
/* 0206CDEC */ return;
|
|
}
|
|
|
|
// fn_0206CDF0 @ 0x206cdf0
|
|
void Gambit_fn_0206CDF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_0206CDF0: ; // 0x206cdf0
|
|
/* 0206CDF0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 0206CDF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206CDF4 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0206CDF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0206CDF8 */ cpu->ctr = cpu->r[0];
|
|
/* 0206CDFC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0206CE00 @ 0x206ce00
|
|
void Gambit_fn_0206CE00(CPUState* cpu) {
|
|
L_0206CE00: ; // 0x206ce00
|
|
/* 0206CE00 */ return;
|
|
}
|
|
|
|
// fn_0206CE04 @ 0x206ce04
|
|
void Gambit_fn_0206CE04(CPUState* cpu) {
|
|
L_0206CE04: ; // 0x206ce04
|
|
/* 0206CE04 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206CE08 */ return;
|
|
}
|
|
|
|
// fn_0206CE0C @ 0x206ce0c
|
|
void Gambit_fn_0206CE0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0206CE0C: ; // 0x206ce0c
|
|
/* 0206CE0C */ cpu->r[9] = 0x101D0000u;
|
|
/* 0206CE10 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 0206CE10 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206CE10 */ cpu->r[9] = _t0;
|
|
/* 0206CE14 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0206CE18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206CE1C */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 0206CE20 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CE20 */ _t2 = _t1 & 0x00000001u;
|
|
/* 0206CE20 */ if (_t2) goto L_0206CE24; else goto L_0206CE38;
|
|
L_0206CE24: ; // 0x206ce24
|
|
/* 0206CE24 */ cpu->r[7] = 0x10000000u;
|
|
/* 0206CE28 */ cpu->r[0] = 0x00000001u;
|
|
/* 0206CE2C */ cpu->r[7] = cpu->r[7] + 0x00007EECu;
|
|
/* 0206CE30 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 0206CE30 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206CE34 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0206CE34 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_0206CE38: ; // 0x206ce38
|
|
/* 0206CE38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0206CE3C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CE3C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206CE3C */ if (_t6) goto L_0206CE40; else goto L_0206CE48;
|
|
L_0206CE40: ; // 0x206ce40
|
|
/* 0206CE40 */ cpu->r[3] = 0x00000001u;
|
|
/* 0206CE44 */ return;
|
|
L_0206CE48: ; // 0x206ce48
|
|
/* 0206CE48 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0206CE4C */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 0206CE4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206CE4C */ cpu->r[7] = _t7;
|
|
/* 0206CE50 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0206CE54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0206CE58 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 0206CE5C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CE5C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206CE5C */ if (_t9) goto L_0206CE60; else goto L_0206CE74;
|
|
L_0206CE60: ; // 0x206ce60
|
|
/* 0206CE60 */ cpu->r[0] = 0x10000000u;
|
|
/* 0206CE64 */ cpu->r[9] = 0x00000001u;
|
|
/* 0206CE68 */ cpu->r[0] = cpu->r[0] + 0x00007EC4u;
|
|
/* 0206CE6C */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 0206CE6C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0206CE70 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0206CE70 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0206CE74: ; // 0x206ce74
|
|
/* 0206CE74 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0206CE78 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 0206CE7C */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 0206CE80 */ return;
|
|
}
|
|
|
|
// fn_0206CE84 @ 0x206ce84
|
|
void Gambit_fn_0206CE84(CPUState* cpu) {
|
|
L_0206CE84: ; // 0x206ce84
|
|
/* 0206CE84 */ return;
|
|
}
|
|
|
|
// fn_0206CE88 @ 0x206ce88
|
|
void Gambit_fn_0206CE88(CPUState* cpu) {
|
|
L_0206CE88: ; // 0x206ce88
|
|
/* 0206CE88 */ return;
|
|
}
|
|
|
|
// fn_0206CE8C @ 0x206ce8c
|
|
void Gambit_fn_0206CE8C(CPUState* cpu) {
|
|
L_0206CE8C: ; // 0x206ce8c
|
|
/* 0206CE8C */ return;
|
|
}
|
|
|
|
// fn_0206CE90 @ 0x206ce90
|
|
void Gambit_fn_0206CE90(CPUState* cpu) {
|
|
L_0206CE90: ; // 0x206ce90
|
|
/* 0206CE90 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206CE94 */ return;
|
|
}
|
|
|
|
// fn_0206CE98 @ 0x206ce98
|
|
void Gambit_fn_0206CE98(CPUState* cpu) {
|
|
L_0206CE98: ; // 0x206ce98
|
|
/* 0206CE98 */ cpu->r[3] = 0x00000000u;
|
|
/* 0206CE9C */ return;
|
|
}
|
|
|
|
// fn_0206CEA0 @ 0x206cea0
|
|
void Gambit_fn_0206CEA0(CPUState* cpu) {
|
|
L_0206CEA0: ; // 0x206cea0
|
|
/* 0206CEA0 */ return;
|
|
}
|
|
|
|
// fn_0206CEA4 @ 0x206cea4
|
|
void Gambit_fn_0206CEA4(CPUState* cpu) {
|
|
L_0206CEA4: ; // 0x206cea4
|
|
/* 0206CEA4 */ return;
|
|
}
|
|
|
|
// fn_0206CEA8 @ 0x206cea8
|
|
void Gambit_fn_0206CEA8(CPUState* cpu) {
|
|
L_0206CEA8: ; // 0x206cea8
|
|
/* 0206CEA8 */ return;
|
|
}
|
|
|
|
// fn_0206CEAC @ 0x206ceac
|
|
void Gambit_fn_0206CEAC(CPUState* cpu) {
|
|
L_0206CEAC: ; // 0x206ceac
|
|
/* 0206CEAC */ return;
|
|
}
|
|
|
|
// fn_0206CEB0 @ 0x206ceb0
|
|
void Gambit_fn_0206CEB0(CPUState* cpu) {
|
|
L_0206CEB0: ; // 0x206ceb0
|
|
/* 0206CEB0 */ return;
|
|
}
|
|
|
|
// fn_0206CEB4 @ 0x206ceb4
|
|
void Gambit_fn_0206CEB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206C894: ; // 0x206c894
|
|
/* 0206C894 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C898 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C898 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C898 */ cpu->r[1] = _t0;
|
|
/* 0206C89C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C89C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C8A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C8A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C8A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C8A8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206C8A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206C8AC */ cpu->r[12] = 0x00000000u;
|
|
/* 0206C8B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206C8B4 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206C8B4 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206C8B8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C8B8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C8B8 */ if (_t6) goto L_0206C8E0; else goto L_0206C8BC;
|
|
L_0206C8BC: ; // 0x206c8bc
|
|
/* 0206C8BC */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206C8BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206C8C0 */ /* nop */
|
|
/* 0206C8C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206C8C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C8C8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206C8C8 */ if (_t9) goto L_0206C8CC; else goto L_0206C8E0;
|
|
L_0206C8CC: ; // 0x206c8cc
|
|
/* 0206C8CC */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206C8CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206C8D0 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206C8D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C8D4 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C8D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206C8E0: ; // 0x206c8e0
|
|
/* 0206C8E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8E4 */ Gambit_fn_0206C80C(cpu);
|
|
/* 0206C8E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8EC */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206C8F0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C8F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C8F4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C8F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C8F8 */ cpu->lr = cpu->r[0];
|
|
/* 0206C8FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C900 */ return;
|
|
L_0206CEB4: ; // 0x206ceb4
|
|
/* 0206CEB4 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 0206CEB8 */ goto L_0206C894;
|
|
}
|
|
|
|
// fn_0206CEBC @ 0x206cebc
|
|
void Gambit_fn_0206CEBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0206CEBC: ; // 0x206cebc
|
|
/* 0206CEBC */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0206CEC0 */ goto L_0206D320;
|
|
L_0206D320: ; // 0x206d320
|
|
/* 0206D320 */ cpu->r[0] = cpu->lr;
|
|
/* 0206D324 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206D324 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206D324 */ cpu->r[1] = _t0;
|
|
/* 0206D328 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206D328 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206D32C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0206D32C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0206D330 */ cpu->r[30] = cpu->r[3];
|
|
/* 0206D330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206D334 */ cpu->r[31] = cpu->r[4];
|
|
/* 0206D338 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0206D338 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0206D33C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206D33C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0206D33C */ if (_t5) goto L_0206D3AC; else goto L_0206D340;
|
|
L_0206D340: ; // 0x206d340
|
|
/* 0206D340 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206D344 */ cpu->r[12] = 0x10010000u;
|
|
/* 0206D348 */ cpu->r[0] = cpu->r[0] + 0xFFFF83FCu;
|
|
/* 0206D34C */ cpu->r[12] = cpu->r[12] + 0xFFFF841Cu;
|
|
/* 0206D350 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206D350 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0206D354 */ cpu->r[11] = 0x10010000u;
|
|
/* 0206D358 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 0206D358 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0206D35C */ cpu->r[11] = cpu->r[11] + 0xFFFF840Cu;
|
|
/* 0206D360 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0206D364 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206D364 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0206D368 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206D368 */ _t10 = _t9 & 0x00000001u;
|
|
/* 0206D368 */ if (_t10) goto L_0206D39C; else goto L_0206D36C;
|
|
L_0206D36C: ; // 0x206d36c
|
|
/* 0206D36C */ cpu->r[10] = 0x10010000u;
|
|
/* 0206D370 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206D374 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 0206D378 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 0206D37C */ cpu->r[3] = cpu->r[30];
|
|
/* 0206D380 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0206D380 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 0206D384 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206D388 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0206D388 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0206D38C */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 0206D390 */ cpu->r[4] = 0x00000000u;
|
|
/* 0206D394 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 0206D394 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0206D398 */ Gambit_fn_02068798(cpu);
|
|
L_0206D39C: ; // 0x206d39c
|
|
/* 0206D39C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0206D39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0206D3A0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206D3A0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0206D3A0 */ if (_t15) goto L_0206D3AC; else goto L_0206D3A4;
|
|
L_0206D3A4: ; // 0x206d3a4
|
|
/* 0206D3A4 */ cpu->r[3] = cpu->r[30];
|
|
/* 0206D3A8 */ Gambit_fn_02801BB0(cpu);
|
|
L_0206D3AC: ; // 0x206d3ac
|
|
/* 0206D3AC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0206D3AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206D3B0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0206D3B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0206D3B4 */ cpu->lr = cpu->r[0];
|
|
/* 0206D3B8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206D3B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0206D3BC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206D3C0 */ return;
|
|
}
|
|
|
|
// fn_0206CEC4 @ 0x206cec4
|
|
void Gambit_fn_0206CEC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_0206CEC4: ; // 0x206cec4
|
|
/* 0206CEC4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0206CEC8 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_0206CECC @ 0x206cecc
|
|
void Gambit_fn_0206CECC(CPUState* cpu) {
|
|
L_0206CECC: ; // 0x206cecc
|
|
/* 0206CECC */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0206CED0 */ goto L_0206D3C4;
|
|
L_0206D3C4: ; // 0x206d3c4
|
|
/* 0206D3C4 */ return;
|
|
}
|
|
|
|
// fn_0206CED4 @ 0x206ced4
|
|
void Gambit_fn_0206CED4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0206CED4: ; // 0x206ced4
|
|
/* 0206CED4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0206CED8 */ goto L_0206D3C8;
|
|
L_0206D3C8: ; // 0x206d3c8
|
|
/* 0206D3C8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0206D3C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0206D3CC */ return;
|
|
}
|
|
|
|
// fn_0206CEDC @ 0x206cedc
|
|
void Gambit_fn_0206CEDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0206CEDC: ; // 0x206cedc
|
|
/* 0206CEDC */ cpu->r[0] = cpu->lr;
|
|
/* 0206CEE0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206CEE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CEE0 */ cpu->r[1] = _t0;
|
|
/* 0206CEE4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CEE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206CEE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206CEE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206CEEC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CEEC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206CEF0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CEF0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206CEF0 */ if (_t4) goto L_0206CEF4; else goto L_0206CF04;
|
|
L_0206CEF4: ; // 0x206cef4
|
|
/* 0206CEF4 */ cpu->r[3] = 0x00000228u;
|
|
/* 0206CEF8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206CEFC */ cpu->r[31] = cpu->r[3];
|
|
/* 0206CEFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206CF00 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CF00 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206CF00 */ if (_t6) goto L_0206CF5C; else goto L_0206CF04;
|
|
L_0206CF04: ; // 0x206cf04
|
|
/* 0206CF04 */ cpu->r[4] = 0x10010000u;
|
|
/* 0206CF08 */ cpu->r[5] = 0x00000000u;
|
|
/* 0206CF0C */ cpu->r[3] = cpu->r[31];
|
|
/* 0206CF10 */ cpu->r[4] = cpu->r[4] + 0xFFFF81C0u;
|
|
/* 0206CF14 */ cpu->r[6] = cpu->r[5];
|
|
/* 0206CF18 */ Gambit_fn_020B6F60(cpu);
|
|
/* 0206CF1C */ cpu->r[11] = 0x10010000u;
|
|
/* 0206CF20 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CF24 */ cpu->r[11] = cpu->r[11] + 0xFFFF821Cu;
|
|
/* 0206CF28 */ cpu->r[0] = cpu->r[0] + 0xFFFF840Cu;
|
|
/* 0206CF2C */ cpu->r[12] = 0x10010000u;
|
|
/* 0206CF30 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 0206CF30 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0206CF34 */ cpu->r[11] = 0x10010000u;
|
|
/* 0206CF38 */ cpu->r[12] = cpu->r[12] + 0xFFFF83FCu;
|
|
/* 0206CF3C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0206CF3C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0206CF40 */ cpu->r[11] = cpu->r[11] + 0xFFFF841Cu;
|
|
/* 0206CF44 */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206CF44 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0206CF48 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206CF4C */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 0206CF4C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0206CF50 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0206CF50 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 0206CF54 */ _t12 = cpu->r[31] + 0x00000220u;
|
|
/* 0206CF54 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 0206CF58 */ _t13 = cpu->r[31] + 0x00000224u;
|
|
/* 0206CF58 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[12]);
|
|
L_0206CF5C: ; // 0x206cf5c
|
|
/* 0206CF5C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CF5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206CF60 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206CF64 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CF64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206CF68 */ cpu->lr = cpu->r[0];
|
|
/* 0206CF6C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206CF70 */ return;
|
|
}
|
|
|
|
// fn_0206CEE0 @ 0x206cee0
|
|
void Gambit_fn_0206CEE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0206CEE0: ; // 0x206cee0
|
|
/* 0206CEE0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206CEE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CEE0 */ cpu->r[1] = _t0;
|
|
/* 0206CEE4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CEE4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206CEE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206CEE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206CEEC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CEEC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206CEF0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CEF0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0206CEF0 */ if (_t4) goto L_0206CEF4; else goto L_0206CF04;
|
|
L_0206CEF4: ; // 0x206cef4
|
|
/* 0206CEF4 */ cpu->r[3] = 0x00000228u;
|
|
/* 0206CEF8 */ Gambit_fn_02801A78(cpu);
|
|
/* 0206CEFC */ cpu->r[31] = cpu->r[3];
|
|
/* 0206CEFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206CF00 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CF00 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206CF00 */ if (_t6) goto L_0206CF5C; else goto L_0206CF04;
|
|
L_0206CF04: ; // 0x206cf04
|
|
/* 0206CF04 */ cpu->r[4] = 0x10010000u;
|
|
/* 0206CF08 */ cpu->r[5] = 0x00000000u;
|
|
/* 0206CF0C */ cpu->r[3] = cpu->r[31];
|
|
/* 0206CF10 */ cpu->r[4] = cpu->r[4] + 0xFFFF81C0u;
|
|
/* 0206CF14 */ cpu->r[6] = cpu->r[5];
|
|
/* 0206CF18 */ Gambit_fn_020B6F60(cpu);
|
|
/* 0206CF1C */ cpu->r[11] = 0x10010000u;
|
|
/* 0206CF20 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CF24 */ cpu->r[11] = cpu->r[11] + 0xFFFF821Cu;
|
|
/* 0206CF28 */ cpu->r[0] = cpu->r[0] + 0xFFFF840Cu;
|
|
/* 0206CF2C */ cpu->r[12] = 0x10010000u;
|
|
/* 0206CF30 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 0206CF30 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 0206CF34 */ cpu->r[11] = 0x10010000u;
|
|
/* 0206CF38 */ cpu->r[12] = cpu->r[12] + 0xFFFF83FCu;
|
|
/* 0206CF3C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0206CF3C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0206CF40 */ cpu->r[11] = cpu->r[11] + 0xFFFF841Cu;
|
|
/* 0206CF44 */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206CF44 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0206CF48 */ cpu->r[12] = 0x00000000u;
|
|
/* 0206CF4C */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 0206CF4C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 0206CF50 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0206CF50 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 0206CF54 */ _t12 = cpu->r[31] + 0x00000220u;
|
|
/* 0206CF54 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 0206CF58 */ _t13 = cpu->r[31] + 0x00000224u;
|
|
/* 0206CF58 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[12]);
|
|
L_0206CF5C: ; // 0x206cf5c
|
|
/* 0206CF5C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CF5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0206CF60 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206CF64 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CF64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0206CF68 */ cpu->lr = cpu->r[0];
|
|
/* 0206CF6C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206CF70 */ return;
|
|
}
|
|
|
|
// fn_0206CF74 @ 0x206cf74
|
|
void Gambit_fn_0206CF74(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_0206CF74: ; // 0x206cf74
|
|
/* 0206CF74 */ cpu->r[0] = cpu->lr;
|
|
/* 0206CF78 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0206CF78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CF78 */ cpu->r[1] = _t0;
|
|
/* 0206CF7C */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0206CF7C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206CF80 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206CF80 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0206CF84 */ cpu->r[12] = 0x10110000u;
|
|
/* 0206CF88 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 0206CF88 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 0206CF8C */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0206CF8C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0206CF90 */ cpu->r[10] = 0x00000010u;
|
|
/* 0206CF94 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0206CF94 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206CF98 */ _t6 = cpu->r[12] + 0x00007399u;
|
|
/* 0206CF98 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0206CF9C */ cpu->r[29] = cpu->r[3];
|
|
/* 0206CFA0 */ cpu->r[0] = cpu->r[1] + 0x00000014u;
|
|
/* 0206CFA4 */ cpu->r[30] = 0x00000000u;
|
|
/* 0206CFA8 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CFA8 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]);
|
|
/* 0206CFAC */ cpu->r[31] = 0x00000002u;
|
|
/* 0206CFB0 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CFB0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0206CFB4 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CFB8 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0206CFB8 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 0206CFBC */ cpu->r[0] = cpu->r[0] + 0xFFFF8198u;
|
|
/* 0206CFC0 */ _t10 = cpu->r[1] + 0x00000023u;
|
|
/* 0206CFC0 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[12]);
|
|
/* 0206CFC4 */ cpu->r[28] = 0x10010000u;
|
|
/* 0206CFC8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CFC8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0206CFCC: ; // 0x206cfcc
|
|
/* 0206CFCC */ cpu->r[5] = cpu->r[30];
|
|
/* 0206CFD0 */ cpu->r[4] = cpu->r[28] + 0xFFFF81D0u;
|
|
/* 0206CFD4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206CFD8 */ _t12 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0206CFD8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206CFD8 */ if (_t13) goto L_0206CFDC; // else: addr-0 trap, fall-through
|
|
L_0206CFDC: ; // 0x206cfdc
|
|
/* 0206CFDC */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0206CFE0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206CFE4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0206CFE8 */ cpu->r[5] = cpu->r[4];
|
|
/* 0206CFEC */ Gambit_fn_027ED060(cpu);
|
|
/* 0206CFF0 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 0206CFF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206CFF4 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0206CFF8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CFF8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0206CFF8 */ if (_t15) goto L_0206CFFC; else goto L_0206CFCC;
|
|
L_0206CFFC: ; // 0x206cffc
|
|
/* 0206CFFC */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 0206CFFC */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206D000 */ _t17 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206D000 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0206D004 */ _t18 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0206D004 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0206D008 */ _t19 = cpu->r[1] + 0x00000030u;
|
|
/* 0206D008 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206D00C */ cpu->lr = cpu->r[0];
|
|
/* 0206D010 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 0206D010 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0206D014 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0206D018 */ return;
|
|
}
|
|
|
|
// fn_0206CF78 @ 0x206cf78
|
|
void Gambit_fn_0206CF78(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_0206CF78: ; // 0x206cf78
|
|
/* 0206CF78 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0206CF78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206CF78 */ cpu->r[1] = _t0;
|
|
/* 0206CF7C */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0206CF7C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206CF80 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206CF80 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0206CF84 */ cpu->r[12] = 0x10110000u;
|
|
/* 0206CF88 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 0206CF88 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 0206CF8C */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0206CF8C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0206CF90 */ cpu->r[10] = 0x00000010u;
|
|
/* 0206CF94 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0206CF94 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206CF98 */ _t6 = cpu->r[12] + 0x00007399u;
|
|
/* 0206CF98 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0206CF9C */ cpu->r[29] = cpu->r[3];
|
|
/* 0206CFA0 */ cpu->r[0] = cpu->r[1] + 0x00000014u;
|
|
/* 0206CFA4 */ cpu->r[30] = 0x00000000u;
|
|
/* 0206CFA8 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0206CFA8 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]);
|
|
/* 0206CFAC */ cpu->r[31] = 0x00000002u;
|
|
/* 0206CFB0 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0206CFB0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0206CFB4 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206CFB8 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0206CFB8 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 0206CFBC */ cpu->r[0] = cpu->r[0] + 0xFFFF8198u;
|
|
/* 0206CFC0 */ _t10 = cpu->r[1] + 0x00000023u;
|
|
/* 0206CFC0 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[12]);
|
|
/* 0206CFC4 */ cpu->r[28] = 0x10010000u;
|
|
/* 0206CFC8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206CFC8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0206CFCC: ; // 0x206cfcc
|
|
/* 0206CFCC */ cpu->r[5] = cpu->r[30];
|
|
/* 0206CFD0 */ cpu->r[4] = cpu->r[28] + 0xFFFF81D0u;
|
|
/* 0206CFD4 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206CFD8 */ _t12 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0206CFD8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206CFD8 */ if (_t13) goto L_0206CFDC; // else: addr-0 trap, fall-through
|
|
L_0206CFDC: ; // 0x206cfdc
|
|
/* 0206CFDC */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0206CFE0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206CFE4 */ cpu->r[3] = cpu->r[29];
|
|
/* 0206CFE8 */ cpu->r[5] = cpu->r[4];
|
|
/* 0206CFEC */ Gambit_fn_027ED060(cpu);
|
|
/* 0206CFF0 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 0206CFF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206CFF4 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0206CFF8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206CFF8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0206CFF8 */ if (_t15) goto L_0206CFFC; else goto L_0206CFCC;
|
|
L_0206CFFC: ; // 0x206cffc
|
|
/* 0206CFFC */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 0206CFFC */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206D000 */ _t17 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206D000 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0206D004 */ _t18 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0206D004 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0206D008 */ _t19 = cpu->r[1] + 0x00000030u;
|
|
/* 0206D008 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206D00C */ cpu->lr = cpu->r[0];
|
|
/* 0206D010 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 0206D010 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0206D014 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0206D018 */ return;
|
|
}
|
|
|
|
// fn_0206D01C @ 0x206d01c
|
|
void Gambit_fn_0206D01C(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_0206D01C: ; // 0x206d01c
|
|
/* 0206D01C */ cpu->r[0] = cpu->lr;
|
|
/* 0206D020 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0206D020 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206D020 */ cpu->r[1] = _t0;
|
|
/* 0206D024 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0206D024 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206D028 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206D028 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0206D02C */ cpu->r[12] = 0x10110000u;
|
|
/* 0206D030 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 0206D030 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 0206D034 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0206D034 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0206D038 */ cpu->r[10] = 0x00000010u;
|
|
/* 0206D03C */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0206D03C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206D040 */ _t6 = cpu->r[12] + 0x00007399u;
|
|
/* 0206D040 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0206D044 */ cpu->r[29] = cpu->r[3];
|
|
/* 0206D048 */ cpu->r[0] = cpu->r[1] + 0x00000014u;
|
|
/* 0206D04C */ cpu->r[30] = 0x00000000u;
|
|
/* 0206D050 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0206D050 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]);
|
|
/* 0206D054 */ cpu->r[31] = 0x00000002u;
|
|
/* 0206D058 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0206D058 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0206D05C */ cpu->r[0] = 0x10010000u;
|
|
/* 0206D060 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0206D060 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 0206D064 */ cpu->r[0] = cpu->r[0] + 0xFFFF8198u;
|
|
/* 0206D068 */ _t10 = cpu->r[1] + 0x00000023u;
|
|
/* 0206D068 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[12]);
|
|
/* 0206D06C */ cpu->r[28] = 0x10010000u;
|
|
/* 0206D070 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206D070 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0206D074: ; // 0x206d074
|
|
/* 0206D074 */ cpu->r[5] = cpu->r[30];
|
|
/* 0206D078 */ cpu->r[4] = cpu->r[28] + 0xFFFF81D8u;
|
|
/* 0206D07C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206D080 */ _t12 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0206D080 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206D080 */ if (_t13) goto L_0206D084; // else: addr-0 trap, fall-through
|
|
L_0206D084: ; // 0x206d084
|
|
/* 0206D084 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0206D088 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206D08C */ cpu->r[3] = cpu->r[29];
|
|
/* 0206D090 */ cpu->r[5] = cpu->r[4];
|
|
/* 0206D094 */ Gambit_fn_027ED060(cpu);
|
|
/* 0206D098 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 0206D098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206D09C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0206D0A0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206D0A0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0206D0A0 */ if (_t15) goto L_0206D0A4; else goto L_0206D074;
|
|
L_0206D0A4: ; // 0x206d0a4
|
|
/* 0206D0A4 */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 0206D0A4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206D0A8 */ _t17 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206D0A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0206D0AC */ _t18 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0206D0AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0206D0B0 */ _t19 = cpu->r[1] + 0x00000030u;
|
|
/* 0206D0B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206D0B4 */ cpu->lr = cpu->r[0];
|
|
/* 0206D0B8 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 0206D0B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0206D0BC */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0206D0C0 */ return;
|
|
}
|
|
|
|
// fn_0206D020 @ 0x206d020
|
|
void Gambit_fn_0206D020(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_0206D020: ; // 0x206d020
|
|
/* 0206D020 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0206D020 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206D020 */ cpu->r[1] = _t0;
|
|
/* 0206D024 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 0206D024 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206D028 */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206D028 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0206D02C */ cpu->r[12] = 0x10110000u;
|
|
/* 0206D030 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 0206D030 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 0206D034 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0206D034 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0206D038 */ cpu->r[10] = 0x00000010u;
|
|
/* 0206D03C */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0206D03C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206D040 */ _t6 = cpu->r[12] + 0x00007399u;
|
|
/* 0206D040 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0206D044 */ cpu->r[29] = cpu->r[3];
|
|
/* 0206D048 */ cpu->r[0] = cpu->r[1] + 0x00000014u;
|
|
/* 0206D04C */ cpu->r[30] = 0x00000000u;
|
|
/* 0206D050 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 0206D050 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]);
|
|
/* 0206D054 */ cpu->r[31] = 0x00000002u;
|
|
/* 0206D058 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0206D058 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0206D05C */ cpu->r[0] = 0x10010000u;
|
|
/* 0206D060 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 0206D060 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 0206D064 */ cpu->r[0] = cpu->r[0] + 0xFFFF8198u;
|
|
/* 0206D068 */ _t10 = cpu->r[1] + 0x00000023u;
|
|
/* 0206D068 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[12]);
|
|
/* 0206D06C */ cpu->r[28] = 0x10010000u;
|
|
/* 0206D070 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206D070 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_0206D074: ; // 0x206d074
|
|
/* 0206D074 */ cpu->r[5] = cpu->r[30];
|
|
/* 0206D078 */ cpu->r[4] = cpu->r[28] + 0xFFFF81D8u;
|
|
/* 0206D07C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0206D080 */ _t12 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0206D080 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0206D080 */ if (_t13) goto L_0206D084; // else: addr-0 trap, fall-through
|
|
L_0206D084: ; // 0x206d084
|
|
/* 0206D084 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0206D088 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0206D08C */ cpu->r[3] = cpu->r[29];
|
|
/* 0206D090 */ cpu->r[5] = cpu->r[4];
|
|
/* 0206D094 */ Gambit_fn_027ED060(cpu);
|
|
/* 0206D098 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu;
|
|
/* 0206D098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0206D09C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0206D0A0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206D0A0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 0206D0A0 */ if (_t15) goto L_0206D0A4; else goto L_0206D074;
|
|
L_0206D0A4: ; // 0x206d0a4
|
|
/* 0206D0A4 */ _t16 = cpu->r[1] + 0x00000028u;
|
|
/* 0206D0A4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0206D0A8 */ _t17 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0206D0A8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0206D0AC */ _t18 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0206D0AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0206D0B0 */ _t19 = cpu->r[1] + 0x00000030u;
|
|
/* 0206D0B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0206D0B4 */ cpu->lr = cpu->r[0];
|
|
/* 0206D0B8 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 0206D0B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 0206D0BC */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0206D0C0 */ return;
|
|
}
|
|
|
|
// fn_0206D0C4 @ 0x206d0c4
|
|
void Gambit_fn_0206D0C4(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_0206D0C4: ; // 0x206d0c4
|
|
/* 0206D0C4 */ cpu->r[0] = cpu->lr;
|
|
/* 0206D0C8 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0206D0C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206D0C8 */ cpu->r[1] = _t0;
|
|
/* 0206D0CC */ _t1 = cpu->r[1] + 0x00000038u;
|
|
/* 0206D0CC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0206D0D0 */ /* nop */
|
|
/* 0206D0D4 */ cpu->r[9] = 0x00000010u;
|
|
/* 0206D0D8 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 0206D0D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206D0DC */ _t3 = cpu->r[1] + 0x00000040u;
|
|
/* 0206D0DC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0206D0E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206D0E4 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0206D0E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0206D0E8 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0206D0EC */ cpu->r[12] = 0x10110000u;
|
|
/* 0206D0F0 */ cpu->r[4] = 0x10010000u;
|
|
/* 0206D0F4 */ _t5 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0206D0F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206D0F8 */ _t6 = cpu->r[12] + 0x00007399u;
|
|
/* 0206D0F8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0206D0FC */ cpu->r[0] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206D100 */ _t7 = cpu->r[31] + 0x00000220u;
|
|
/* 0206D100 */ cpu->r[5] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206D104 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206D104 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]);
|
|
/* 0206D108 */ cpu->r[30] = 0x10010000u;
|
|
/* 0206D10C */ _t9 = cpu->r[1] + 0x0000002Bu;
|
|
/* 0206D10C */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]);
|
|
/* 0206D110 */ cpu->r[30] = cpu->r[30] + 0xFFFF8150u;
|
|
/* 0206D114 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0206D114 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0206D118 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206D11C */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 0206D11C */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 0206D120 */ cpu->r[0] = cpu->r[0] + 0xFFFF8198u;
|
|
/* 0206D124 */ cpu->r[4] = cpu->r[4] + 0xFFFF81E8u;
|
|
/* 0206D128 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206D128 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0206D12C */ _t13 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0206D12C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0206D12C */ if (_t14) goto L_0206D130; // else: addr-0 trap, fall-through
|
|
L_0206D130: ; // 0x206d130
|
|
/* 0206D130 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0206D134 */ cpu->r[11] = 0x10010000u;
|
|
/* 0206D138 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D13C */ _t15 = cpu->r[11] + 0xFFFF81E4u;
|
|
/* 0206D13C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0206D140 */ Gambit_fn_020B7778(cpu);
|
|
/* 0206D144 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206D148 */ cpu->f[1] = cpu->f[31];
|
|
/* 0206D14C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0206D150 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D154 */ Gambit_fn_027ED2B0(cpu);
|
|
/* 0206D158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206D15C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206D15C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0206D15C */ if (_t17) goto L_0206D160; else goto L_0206D18C;
|
|
L_0206D160: ; // 0x206d160
|
|
/* 0206D160 */ cpu->r[12] = 0x10010000u;
|
|
/* 0206D164 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206D164 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 0206D168 */ cpu->r[12] = cpu->r[12] + 0xFFFF81F0u;
|
|
/* 0206D16C */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D170 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0206D170 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 0206D174 */ Gambit_fn_020B7778(cpu);
|
|
/* 0206D178 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206D17C */ cpu->f[1] = cpu->f[31];
|
|
/* 0206D180 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D184 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0206D188 */ Gambit_fn_027ED1E4(cpu);
|
|
L_0206D18C: ; // 0x206d18c
|
|
/* 0206D18C */ _t20 = cpu->r[1] + 0x00000040u;
|
|
/* 0206D18C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0206D190 */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 0206D190 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0206D194 */ _t22 = cpu->r[1] + 0x00000038u;
|
|
/* 0206D194 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t22);
|
|
/* 0206D198 */ _t23 = cpu->r[1] + 0x00000030u;
|
|
/* 0206D198 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0206D19C */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206D19C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0206D19C */ if (_t25) goto L_0206D1A0; // else: addr-0 trap, fall-through
|
|
L_0206D1A0: ; // 0x206d1a0
|
|
/* 0206D1A0 */ _t26 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0206D1A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0206D1A4 */ cpu->lr = cpu->r[0];
|
|
/* 0206D1A8 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0206D1AC */ return;
|
|
}
|
|
|
|
// fn_0206D0C8 @ 0x206d0c8
|
|
void Gambit_fn_0206D0C8(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_0206D0C8: ; // 0x206d0c8
|
|
/* 0206D0C8 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0206D0C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206D0C8 */ cpu->r[1] = _t0;
|
|
/* 0206D0CC */ _t1 = cpu->r[1] + 0x00000038u;
|
|
/* 0206D0CC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0206D0D0 */ /* nop */
|
|
/* 0206D0D4 */ cpu->r[9] = 0x00000010u;
|
|
/* 0206D0D8 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 0206D0D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206D0DC */ _t3 = cpu->r[1] + 0x00000040u;
|
|
/* 0206D0DC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0206D0E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206D0E4 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0206D0E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0206D0E8 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0206D0EC */ cpu->r[12] = 0x10110000u;
|
|
/* 0206D0F0 */ cpu->r[4] = 0x10010000u;
|
|
/* 0206D0F4 */ _t5 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0206D0F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206D0F8 */ _t6 = cpu->r[12] + 0x00007399u;
|
|
/* 0206D0F8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0206D0FC */ cpu->r[0] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206D100 */ _t7 = cpu->r[31] + 0x00000220u;
|
|
/* 0206D100 */ cpu->r[5] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206D104 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206D104 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]);
|
|
/* 0206D108 */ cpu->r[30] = 0x10010000u;
|
|
/* 0206D10C */ _t9 = cpu->r[1] + 0x0000002Bu;
|
|
/* 0206D10C */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]);
|
|
/* 0206D110 */ cpu->r[30] = cpu->r[30] + 0xFFFF8150u;
|
|
/* 0206D114 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0206D114 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0206D118 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206D11C */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 0206D11C */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 0206D120 */ cpu->r[0] = cpu->r[0] + 0xFFFF8198u;
|
|
/* 0206D124 */ cpu->r[4] = cpu->r[4] + 0xFFFF81E8u;
|
|
/* 0206D128 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206D128 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0206D12C */ _t13 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0206D12C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0206D12C */ if (_t14) goto L_0206D130; // else: addr-0 trap, fall-through
|
|
L_0206D130: ; // 0x206d130
|
|
/* 0206D130 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0206D134 */ cpu->r[11] = 0x10010000u;
|
|
/* 0206D138 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D13C */ _t15 = cpu->r[11] + 0xFFFF81E4u;
|
|
/* 0206D13C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0206D140 */ Gambit_fn_020B7778(cpu);
|
|
/* 0206D144 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206D148 */ cpu->f[1] = cpu->f[31];
|
|
/* 0206D14C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0206D150 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D154 */ Gambit_fn_027ED2B0(cpu);
|
|
/* 0206D158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206D15C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206D15C */ _t17 = _t16 & 0x00000001u;
|
|
/* 0206D15C */ if (_t17) goto L_0206D160; else goto L_0206D18C;
|
|
L_0206D160: ; // 0x206d160
|
|
/* 0206D160 */ cpu->r[12] = 0x10010000u;
|
|
/* 0206D164 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206D164 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 0206D168 */ cpu->r[12] = cpu->r[12] + 0xFFFF81F0u;
|
|
/* 0206D16C */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D170 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0206D170 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 0206D174 */ Gambit_fn_020B7778(cpu);
|
|
/* 0206D178 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206D17C */ cpu->f[1] = cpu->f[31];
|
|
/* 0206D180 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D184 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0206D188 */ Gambit_fn_027ED1E4(cpu);
|
|
L_0206D18C: ; // 0x206d18c
|
|
/* 0206D18C */ _t20 = cpu->r[1] + 0x00000040u;
|
|
/* 0206D18C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0206D190 */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 0206D190 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0206D194 */ _t22 = cpu->r[1] + 0x00000038u;
|
|
/* 0206D194 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t22);
|
|
/* 0206D198 */ _t23 = cpu->r[1] + 0x00000030u;
|
|
/* 0206D198 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0206D19C */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206D19C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0206D19C */ if (_t25) goto L_0206D1A0; // else: addr-0 trap, fall-through
|
|
L_0206D1A0: ; // 0x206d1a0
|
|
/* 0206D1A0 */ _t26 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0206D1A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0206D1A4 */ cpu->lr = cpu->r[0];
|
|
/* 0206D1A8 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0206D1AC */ return;
|
|
}
|
|
|
|
// fn_0206D1B0 @ 0x206d1b0
|
|
void Gambit_fn_0206D1B0(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_0206D1B0: ; // 0x206d1b0
|
|
/* 0206D1B0 */ cpu->r[0] = cpu->lr;
|
|
/* 0206D1B4 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0206D1B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206D1B4 */ cpu->r[1] = _t0;
|
|
/* 0206D1B8 */ _t1 = cpu->r[1] + 0x00000038u;
|
|
/* 0206D1B8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0206D1BC */ /* nop */
|
|
/* 0206D1C0 */ cpu->r[9] = 0x00000010u;
|
|
/* 0206D1C4 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 0206D1C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206D1C8 */ _t3 = cpu->r[1] + 0x00000040u;
|
|
/* 0206D1C8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0206D1CC */ cpu->r[31] = cpu->r[3];
|
|
/* 0206D1D0 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0206D1D0 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0206D1D4 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0206D1D8 */ cpu->r[12] = 0x10110000u;
|
|
/* 0206D1DC */ cpu->r[4] = 0x10010000u;
|
|
/* 0206D1E0 */ _t5 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0206D1E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206D1E4 */ _t6 = cpu->r[12] + 0x00007399u;
|
|
/* 0206D1E4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0206D1E8 */ cpu->r[0] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206D1EC */ _t7 = cpu->r[31] + 0x00000220u;
|
|
/* 0206D1EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206D1F0 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206D1F0 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]);
|
|
/* 0206D1F4 */ cpu->r[30] = 0x10010000u;
|
|
/* 0206D1F8 */ _t9 = cpu->r[1] + 0x0000002Bu;
|
|
/* 0206D1F8 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]);
|
|
/* 0206D1FC */ cpu->r[30] = cpu->r[30] + 0xFFFF8150u;
|
|
/* 0206D200 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0206D200 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0206D204 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206D208 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 0206D208 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 0206D20C */ cpu->r[0] = cpu->r[0] + 0xFFFF8198u;
|
|
/* 0206D210 */ cpu->r[4] = cpu->r[4] + 0xFFFF8200u;
|
|
/* 0206D214 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206D214 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0206D218 */ _t13 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0206D218 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0206D218 */ if (_t14) goto L_0206D21C; // else: addr-0 trap, fall-through
|
|
L_0206D21C: ; // 0x206d21c
|
|
/* 0206D21C */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0206D220 */ cpu->r[11] = 0x10010000u;
|
|
/* 0206D224 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D228 */ _t15 = cpu->r[11] + 0xFFFF81E4u;
|
|
/* 0206D228 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0206D22C */ Gambit_fn_020B7778(cpu);
|
|
/* 0206D230 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206D234 */ cpu->f[1] = cpu->f[31];
|
|
/* 0206D238 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0206D23C */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D240 */ Gambit_fn_027ED2B0(cpu);
|
|
/* 0206D244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206D248 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206D248 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0206D248 */ if (_t17) goto L_0206D24C; else goto L_0206D278;
|
|
L_0206D24C: ; // 0x206d24c
|
|
/* 0206D24C */ cpu->r[12] = 0x10010000u;
|
|
/* 0206D250 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206D250 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 0206D254 */ cpu->r[12] = cpu->r[12] + 0xFFFF81F8u;
|
|
/* 0206D258 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D25C */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0206D25C */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 0206D260 */ Gambit_fn_020B7778(cpu);
|
|
/* 0206D264 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206D268 */ cpu->f[1] = cpu->f[31];
|
|
/* 0206D26C */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D270 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0206D274 */ Gambit_fn_027ED1E4(cpu);
|
|
L_0206D278: ; // 0x206d278
|
|
/* 0206D278 */ _t20 = cpu->r[1] + 0x00000040u;
|
|
/* 0206D278 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0206D27C */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 0206D27C */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0206D280 */ _t22 = cpu->r[1] + 0x00000038u;
|
|
/* 0206D280 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t22);
|
|
/* 0206D284 */ _t23 = cpu->r[1] + 0x00000030u;
|
|
/* 0206D284 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0206D288 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206D288 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0206D288 */ if (_t25) goto L_0206D28C; // else: addr-0 trap, fall-through
|
|
L_0206D28C: ; // 0x206d28c
|
|
/* 0206D28C */ _t26 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0206D28C */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0206D290 */ cpu->lr = cpu->r[0];
|
|
/* 0206D294 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0206D298 */ return;
|
|
}
|
|
|
|
// fn_0206D1B4 @ 0x206d1b4
|
|
void Gambit_fn_0206D1B4(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_0206D1B4: ; // 0x206d1b4
|
|
/* 0206D1B4 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0206D1B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206D1B4 */ cpu->r[1] = _t0;
|
|
/* 0206D1B8 */ _t1 = cpu->r[1] + 0x00000038u;
|
|
/* 0206D1B8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 0206D1BC */ /* nop */
|
|
/* 0206D1C0 */ cpu->r[9] = 0x00000010u;
|
|
/* 0206D1C4 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 0206D1C4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0206D1C8 */ _t3 = cpu->r[1] + 0x00000040u;
|
|
/* 0206D1C8 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0206D1CC */ cpu->r[31] = cpu->r[3];
|
|
/* 0206D1D0 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 0206D1D0 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 0206D1D4 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 0206D1D8 */ cpu->r[12] = 0x10110000u;
|
|
/* 0206D1DC */ cpu->r[4] = 0x10010000u;
|
|
/* 0206D1E0 */ _t5 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0206D1E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0206D1E4 */ _t6 = cpu->r[12] + 0x00007399u;
|
|
/* 0206D1E4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t6);
|
|
/* 0206D1E8 */ cpu->r[0] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206D1EC */ _t7 = cpu->r[31] + 0x00000220u;
|
|
/* 0206D1EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0206D1F0 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0206D1F0 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]);
|
|
/* 0206D1F4 */ cpu->r[30] = 0x10010000u;
|
|
/* 0206D1F8 */ _t9 = cpu->r[1] + 0x0000002Bu;
|
|
/* 0206D1F8 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]);
|
|
/* 0206D1FC */ cpu->r[30] = cpu->r[30] + 0xFFFF8150u;
|
|
/* 0206D200 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0206D200 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0206D204 */ cpu->r[0] = 0x10010000u;
|
|
/* 0206D208 */ _t11 = cpu->r[1] + 0x00000018u;
|
|
/* 0206D208 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 0206D20C */ cpu->r[0] = cpu->r[0] + 0xFFFF8198u;
|
|
/* 0206D210 */ cpu->r[4] = cpu->r[4] + 0xFFFF8200u;
|
|
/* 0206D214 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206D214 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0206D218 */ _t13 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0206D218 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0206D218 */ if (_t14) goto L_0206D21C; // else: addr-0 trap, fall-through
|
|
L_0206D21C: ; // 0x206d21c
|
|
/* 0206D21C */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0206D220 */ cpu->r[11] = 0x10010000u;
|
|
/* 0206D224 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D228 */ _t15 = cpu->r[11] + 0xFFFF81E4u;
|
|
/* 0206D228 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0206D22C */ Gambit_fn_020B7778(cpu);
|
|
/* 0206D230 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206D234 */ cpu->f[1] = cpu->f[31];
|
|
/* 0206D238 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0206D23C */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D240 */ Gambit_fn_027ED2B0(cpu);
|
|
/* 0206D244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0206D248 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206D248 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0206D248 */ if (_t17) goto L_0206D24C; else goto L_0206D278;
|
|
L_0206D24C: ; // 0x206d24c
|
|
/* 0206D24C */ cpu->r[12] = 0x10010000u;
|
|
/* 0206D250 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206D250 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 0206D254 */ cpu->r[12] = cpu->r[12] + 0xFFFF81F8u;
|
|
/* 0206D258 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D25C */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 0206D25C */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 0206D260 */ Gambit_fn_020B7778(cpu);
|
|
/* 0206D264 */ cpu->r[4] = cpu->r[3];
|
|
/* 0206D268 */ cpu->f[1] = cpu->f[31];
|
|
/* 0206D26C */ cpu->r[3] = cpu->r[31];
|
|
/* 0206D270 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0206D274 */ Gambit_fn_027ED1E4(cpu);
|
|
L_0206D278: ; // 0x206d278
|
|
/* 0206D278 */ _t20 = cpu->r[1] + 0x00000040u;
|
|
/* 0206D278 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 0206D27C */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 0206D27C */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0206D280 */ _t22 = cpu->r[1] + 0x00000038u;
|
|
/* 0206D280 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t22);
|
|
/* 0206D284 */ _t23 = cpu->r[1] + 0x00000030u;
|
|
/* 0206D284 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 0206D288 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0206D288 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0206D288 */ if (_t25) goto L_0206D28C; // else: addr-0 trap, fall-through
|
|
L_0206D28C: ; // 0x206d28c
|
|
/* 0206D28C */ _t26 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0206D28C */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0206D290 */ cpu->lr = cpu->r[0];
|
|
/* 0206D294 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0206D298 */ return;
|
|
}
|
|
|