mirror of https://github.com/PCSX2/pcsx2.git
BIOS: Don't HLE OSD Parameters if BIOS has no OSD
This commit is contained in:
parent
a0ac42cf6d
commit
7bcee22890
|
@ -24,6 +24,7 @@
|
||||||
#include "R5900Exceptions.h"
|
#include "R5900Exceptions.h"
|
||||||
#include "GS.h"
|
#include "GS.h"
|
||||||
#include "CDVD/CDVD.h"
|
#include "CDVD/CDVD.h"
|
||||||
|
#include "ps2/BiosTools.h"
|
||||||
|
|
||||||
GS_VideoMode gsVideoMode = GS_VideoMode::Uninitialized;
|
GS_VideoMode gsVideoMode = GS_VideoMode::Uninitialized;
|
||||||
bool gsIsInterlaced = false;
|
bool gsIsInterlaced = false;
|
||||||
|
@ -944,7 +945,7 @@ void SYSCALL()
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case Syscall::GetOsdConfigParam:
|
case Syscall::GetOsdConfigParam:
|
||||||
if(g_SkipBiosHack)
|
if(!NoOSD && g_SkipBiosHack)
|
||||||
{
|
{
|
||||||
u32 memaddr = cpuRegs.GPR.n.a0.UL[0];
|
u32 memaddr = cpuRegs.GPR.n.a0.UL[0];
|
||||||
u8 params[16];
|
u8 params[16];
|
||||||
|
@ -965,7 +966,7 @@ void SYSCALL()
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case Syscall::GetOsdConfigParam2:
|
case Syscall::GetOsdConfigParam2:
|
||||||
if (g_SkipBiosHack)
|
if (!NoOSD && g_SkipBiosHack)
|
||||||
{
|
{
|
||||||
u32 memaddr = cpuRegs.GPR.n.a0.UL[0];
|
u32 memaddr = cpuRegs.GPR.n.a0.UL[0];
|
||||||
u8 params[16];
|
u8 params[16];
|
||||||
|
|
|
@ -51,6 +51,7 @@ static_assert( sizeof(romdir) == DIRENTRY_SIZE, "romdir struct not packed to 16
|
||||||
|
|
||||||
u32 BiosVersion;
|
u32 BiosVersion;
|
||||||
u32 BiosChecksum;
|
u32 BiosChecksum;
|
||||||
|
bool NoOSD;
|
||||||
wxString BiosDescription;
|
wxString BiosDescription;
|
||||||
const BiosDebugInformation* CurrentBiosInformation;
|
const BiosDebugInformation* CurrentBiosInformation;
|
||||||
|
|
||||||
|
@ -284,6 +285,13 @@ void LoadBIOS()
|
||||||
wxFFile fp( Bios , "rb");
|
wxFFile fp( Bios , "rb");
|
||||||
fp.Read( eeMem->ROM, std::min<s64>( Ps2MemSize::Rom, filesize ) );
|
fp.Read( eeMem->ROM, std::min<s64>( Ps2MemSize::Rom, filesize ) );
|
||||||
|
|
||||||
|
// If file is less than 2mb it doesn't have an OSD (Devel consoles)
|
||||||
|
// So skip HLEing OSDSys Param stuff
|
||||||
|
if (filesize < 2465792)
|
||||||
|
NoOSD = true;
|
||||||
|
else
|
||||||
|
NoOSD = false;
|
||||||
|
|
||||||
ChecksumIt( BiosChecksum, eeMem->ROM );
|
ChecksumIt( BiosChecksum, eeMem->ROM );
|
||||||
|
|
||||||
pxInputStream memfp( Bios, new wxMemoryInputStream( eeMem->ROM, sizeof(eeMem->ROM) ) );
|
pxInputStream memfp( Bios, new wxMemoryInputStream( eeMem->ROM, sizeof(eeMem->ROM) ) );
|
||||||
|
|
|
@ -35,7 +35,8 @@ struct BiosDebugInformation
|
||||||
u32 threadListAddr;
|
u32 threadListAddr;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern u32 BiosVersion; // Used by CDVD
|
extern u32 BiosVersion; // Used by CDVD
|
||||||
|
extern bool NoOSD; // Used for HLE OSD Config Params
|
||||||
extern u32 BiosChecksum;
|
extern u32 BiosChecksum;
|
||||||
extern wxString BiosDescription;
|
extern wxString BiosDescription;
|
||||||
extern const BiosDebugInformation* CurrentBiosInformation;
|
extern const BiosDebugInformation* CurrentBiosInformation;
|
||||||
|
|
Loading…
Reference in New Issue