X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=libpcsxcore%2Fppf.h;h=e646e554f1f1afba26834a699473fe1bebc889b7;hb=fde7a317052fd7e7111b0e003e65d0d1b8159cac;hp=fb0a3777b81174e5d4512c4f7a072f313c88f8ab;hpb=ac7b2a33ddb2392582c50d29c772e9e99cd762c9;p=pcsx_rearmed.git diff --git a/libpcsxcore/ppf.h b/libpcsxcore/ppf.h index fb0a3777..e646e554 100644 --- a/libpcsxcore/ppf.h +++ b/libpcsxcore/ppf.h @@ -23,7 +23,7 @@ extern "C" { #endif -void BuildPPFCache(); +void BuildPPFCache(const char *fname); void FreePPFCache(); void CheckPPFCache(unsigned char *pB, unsigned char m, unsigned char s, unsigned char f); @@ -31,16 +31,17 @@ int LoadSBI(const char *fname, int sector_count); void UnloadSBI(void); extern unsigned char *sbi_sectors; +extern int sbi_len; #include "cdrom.h" -static inline int CheckSBI(const u8 *t) +static inline int CheckSBI(int s) { - int s; if (sbi_sectors == NULL) return 0; + if ((unsigned int)(s >> 3) >= (unsigned int)sbi_len) + return 0; - s = MSF2SECT(t[0], t[1], t[2]); return (sbi_sectors[s >> 3] >> (s & 7)) & 1; }