From 5b14f7de64321000d01c1c92dfd06abe8628d9f1 Mon Sep 17 00:00:00 2001
From: Kingcom <sorgts@googlemail.com>
Date: Fri, 22 Aug 2014 16:11:10 +0200
Subject: [PATCH] Add a list with bios version specific information

---
 pcsx2/ps2/BiosTools.cpp | 16 ++++++++++++++++
 pcsx2/ps2/BiosTools.h   |  8 ++++++++
 2 files changed, 24 insertions(+)

diff --git a/pcsx2/ps2/BiosTools.cpp b/pcsx2/ps2/BiosTools.cpp
index 31309ba0e2..5f95d2dd1f 100644
--- a/pcsx2/ps2/BiosTools.cpp
+++ b/pcsx2/ps2/BiosTools.cpp
@@ -52,7 +52,13 @@ static_assert( sizeof(romdir) == DIRENTRY_SIZE, "romdir struct not packed to 16
 u32 BiosVersion;
 u32 BiosChecksum;
 wxString BiosDescription;
+const BiosDebugInformation* CurrentBiosInformation;
 
+const BiosDebugInformation biosVersions[] = {
+	// USA     v02.00(14/06/2004)  Console
+	{ 0x00000200, 0xD778DB8D, 0x8001a640 },
+
+};
 
 // --------------------------------------------------------------------------------------
 //  Exception::BiosLoadFailed  (implementations)
@@ -271,6 +277,16 @@ void LoadBIOS()
 		LoadExtraRom( L"rom1", eeMem->ROM1 );
 		LoadExtraRom( L"rom2", eeMem->ROM2 );
 		LoadExtraRom( L"erom", eeMem->EROM );
+
+		CurrentBiosInformation = NULL;
+		for (int i = 0; i < sizeof(biosVersions)/sizeof(biosVersions[0]); i++)
+		{
+			if (biosVersions[i].biosChecksum == BiosChecksum && biosVersions[i].biosVersion == BiosVersion)
+			{
+				CurrentBiosInformation = &biosVersions[i];
+				break;
+			}
+		}
 	}
 	catch (Exception::BadStream& ex)
 	{
diff --git a/pcsx2/ps2/BiosTools.h b/pcsx2/ps2/BiosTools.h
index 66d0656524..aa4b26f2cf 100644
--- a/pcsx2/ps2/BiosTools.h
+++ b/pcsx2/ps2/BiosTools.h
@@ -28,9 +28,17 @@ namespace Exception
 	};
 }
 
+struct BiosDebugInformation
+{
+	u32 biosVersion;
+	u32 biosChecksum;
+	u32 threadListAddr;
+};
+
 extern u32 BiosVersion;		//  Used by CDVD
 extern u32 BiosChecksum;
 extern wxString BiosDescription;
+extern const BiosDebugInformation* CurrentBiosInformation;
 
 extern void LoadBIOS();
 extern bool IsBIOS(const wxString& filename, wxString& description);