Esempio n. 1
0
static void hleC0() {
	u32 call = psxRegs.GPR.n.t1 & 0xff;

	if (biosC0[call]) biosC0[call]();

	psxBranchTest();
}
Esempio n. 2
0
static void hleA0() {
	u32 call = psxRegs.GPR.n.t1 & 0xff;

	if (biosA0[call]) biosA0[call]();
	//else
	// printf("Unknown A0: %08x\n",call);
	psxBranchTest();
}
Esempio n. 3
0
static void delayRead(int reg, u32 bpc) {
	u32 rold, rnew;

//	SysPrintf("delayRead at %x!\n", psxRegs.pc);

	rold = psxRegs.GPR.r[reg];
	psxBSC[psxRegs.code >> 26](); // branch delay load
	rnew = psxRegs.GPR.r[reg];

	psxRegs.pc = bpc;

	branch = 0;

	psxRegs.GPR.r[reg] = rold;
	execI(); // first branch opcode
	psxRegs.GPR.r[reg] = rnew;

	psxBranchTest();
}
static void delayRead(int reg, u32 bpc) {
	u32 rold, rnew;

//	SysPrintf("delayRead at %x!\n", psxRegs->pc);

	rold = psxRegs->GPR.r[reg];
	psxBSC[psxRegs->code >> 26](); // branch delay load
	rnew = psxRegs->GPR.r[reg];

	psxRegs->cycle += 1; //(int)((float)((psxRegs->pc-oldpc)/4) * BIAS_CYCLE_INC);
	psxRegs->pc = bpc;
	pc = oldpc = psxRegs->pc;

	psxRegs->GPR.r[reg] = rold;
	execI(); // first branch opcode
	psxRegs->GPR.r[reg] = rnew;

	psxBranchTest();

	branch = 0;
}
Esempio n. 5
0
static void hleDummy() {
	psxRegs.pc = psxRegs.GPR.n.ra;

	psxBranchTest();
}