notaz.gp2x.de
/
pcsx_rearmed.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
some openbios support
[pcsx_rearmed.git]
/
libpcsxcore
/
r3000a.c
diff --git
a/libpcsxcore/r3000a.c
b/libpcsxcore/r3000a.c
index
8b7cfbf
..
53a5eba
100644
(file)
--- a/
libpcsxcore/r3000a.c
+++ b/
libpcsxcore/r3000a.c
@@
-67,8
+67,14
@@
void psxReset() {
psxHwReset();
psxBiosInit();
psxHwReset();
psxBiosInit();
- if (!Config.HLE)
+ BiosLikeGPUSetup(); // a bit of a hack but whatever
+
+ BiosBooted = FALSE;
+ if (!Config.HLE) {
psxExecuteBios();
psxExecuteBios();
+ if (psxRegs.pc == 0x80030000 && !Config.SlowBoot)
+ BiosBootBypass();
+ }
#ifdef EMU_LOG
EMU_LOG("*BIOS END*\n");
#ifdef EMU_LOG
EMU_LOG("*BIOS END*\n");
@@
-237,7
+243,12
@@
void psxJumpTest() {
}
void psxExecuteBios() {
}
void psxExecuteBios() {
- while (psxRegs.pc != 0x80030000)
+ int i;
+ for (i = 0; psxRegs.pc != 0x80030000 && i < 5000000; i++)
psxCpu->ExecuteBlock();
psxCpu->ExecuteBlock();
+ if (psxRegs.pc == 0x80030000)
+ BiosBooted = TRUE;
+ else
+ SysPrintf("BIOS boot timeout - custom BIOS?\n");
}
}