From 8f3b2bd3184c6d23e6297270eeec897cb72c7b7a Mon Sep 17 00:00:00 2001 From: gameblabla Date: Sun, 21 Jul 2019 02:38:32 +0200 Subject: [PATCH] psxbios: Make HLE bios start from block 1, not 2. I already fixed this for bufile : ptr = Mcd##mcd##Data + 128 * (nfile + 1); \ instead of ptr = Mcd##mcd##Data + 128 * nfile; \ But i forgot to also fix psxBios_firstfile accordingly. So nfile would still start from block 2 and it would cause all kinds of issues. This was the original comment on pcsxr codeplex as my patch was based on it : "The HLE-Bios start to read memory card blocks at block 2. You need to change ptr = Mcd##mcd##Data + 128 * nfile; \ to ptr = Mcd##mcd##Data + 128 * (nfile + 1); \ for #define bufile(mcd) { \ and changing nfile = 1; to nfile = 0; for psxBios_firstfile() { // 42 Starts numbering slots in the right position." --- libpcsxcore/psxbios.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libpcsxcore/psxbios.c b/libpcsxcore/psxbios.c index ee307e3c..59471f10 100644 --- a/libpcsxcore/psxbios.c +++ b/libpcsxcore/psxbios.c @@ -2278,7 +2278,7 @@ void psxBios_firstfile() { // 42 if (pa0) { strcpy(ffile, pa0); pfile = ffile+5; - nfile = 1; + nfile = 0; if (!strncmp(pa0, "bu00", 4)) { // firstfile() calls _card_read() internally, so deliver it's event DeliverEvent(0x11, 0x2); -- 2.39.5