25 |
* SUCH DAMAGE. |
* SUCH DAMAGE. |
26 |
* |
* |
27 |
* |
* |
28 |
* $Id: ps2_bios.c,v 1.29 2005/02/18 07:04:10 debug Exp $ |
* $Id: ps2_bios.c,v 1.30 2005/04/13 20:22:26 debug Exp $ |
29 |
* |
* |
30 |
* Playstation 2 SIFBIOS emulation. |
* Playstation 2 SIFBIOS emulation. |
31 |
*/ |
*/ |
49 |
|
|
50 |
/* |
/* |
51 |
* playstation2_sifbios_emul(): |
* playstation2_sifbios_emul(): |
|
* |
|
|
* SIFBIOS calls: |
|
|
* |
|
|
* 0 getver() |
|
|
* 1 halt(int mode) |
|
|
* 2 setdve(int mode) |
|
|
* 3 putchar(int ch) |
|
|
* 4 getchar() |
|
|
* 16 dma_init() |
|
|
* 17 dma_exit() |
|
|
* 32 cmd_init() |
|
|
* 33 cmd_exit() |
|
52 |
*/ |
*/ |
53 |
int playstation2_sifbios_emul(struct cpu *cpu) |
int playstation2_sifbios_emul(struct cpu *cpu) |
54 |
{ |
{ |
106 |
debug("[ SIFBIOS rpc_exit(): TODO ]\n"); |
debug("[ SIFBIOS rpc_exit(): TODO ]\n"); |
107 |
cpu->cd.mips.gpr[MIPS_GPR_V0] = 0; /* TODO */ |
cpu->cd.mips.gpr[MIPS_GPR_V0] = 0; /* TODO */ |
108 |
break; |
break; |
109 |
|
case 51: |
110 |
|
debug("[ SIFBIOS rpc_bind(): TODO ]\n"); |
111 |
|
cpu->cd.mips.gpr[MIPS_GPR_V0] = 1; /* TODO */ |
112 |
|
break; |
113 |
case 64: |
case 64: |
114 |
fatal("[ SIFBIOS SBR_IOPH_INIT(0x%x,0x%x,0x%x): TODO ]\n", |
fatal("[ SIFBIOS SBR_IOPH_INIT(0x%x,0x%x,0x%x): TODO ]\n", |
115 |
(int)cpu->cd.mips.gpr[MIPS_GPR_A1], |
(int)cpu->cd.mips.gpr[MIPS_GPR_A1], |
219 |
} |
} |
220 |
cpu->cd.mips.gpr[MIPS_GPR_V0] = 0; |
cpu->cd.mips.gpr[MIPS_GPR_V0] = 0; |
221 |
break; |
break; |
222 |
|
case 66: |
223 |
|
debug("[ SIFBIOS iopmem_free(): TODO ]\n"); |
224 |
|
cpu->cd.mips.gpr[MIPS_GPR_V0] = 0; /* TODO */ |
225 |
|
break; |
226 |
default: |
default: |
227 |
quiet_mode = 0; |
quiet_mode = 0; |
228 |
cpu_register_dump(cpu->machine, cpu, 1, 0x1); |
cpu_register_dump(cpu->machine, cpu, 1, 0x1); |