From 099bd0f4dae7ef9a7afb8187ebcce51a4ea2e962 Mon Sep 17 00:00:00 2001
From: omegadox <omegadox@gmail.com>
Date: Tue, 23 Dec 2008 04:35:21 +0000
Subject: [PATCH] Added some ground work for a Swap Disc feature (disabled) and
 commented out a case for Cover Register in DVD write32 - seems pointless to
 have.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1626 8ced0084-cf51-0410-be5f-012b33b47a6e
---
 Source/Core/Core/Src/HW/DVDInterface.cpp | 22 +++++++++++-----------
 Source/Core/DolphinWX/Src/Frame.cpp      | 11 +++++++++++
 Source/Core/DolphinWX/Src/Frame.h        |  3 ++-
 Source/Core/DolphinWX/Src/Globals.h      |  1 +
 4 files changed, 25 insertions(+), 12 deletions(-)

diff --git a/Source/Core/Core/Src/HW/DVDInterface.cpp b/Source/Core/Core/Src/HW/DVDInterface.cpp
index e112ea4c7d..c9dd908ca6 100644
--- a/Source/Core/Core/Src/HW/DVDInterface.cpp
+++ b/Source/Core/Core/Src/HW/DVDInterface.cpp
@@ -333,19 +333,19 @@ void Write32(const u32 _iValue, const u32 _iAddress)
 		}
 		break;
 
-	case DI_COVER_REGISTER:	
-		{
-			UDICVR tmpCoverReg(_iValue);
+	//case DI_COVER_REGISTER:	
+	//	{
+	//		UDICVR tmpCoverReg(_iValue);
 
-			dvdMem.CoverReg.CVR = 0;
-			dvdMem.CoverReg.CVRINTMASK = tmpCoverReg.CVRINTMASK;
-			if (tmpCoverReg.CVRINT) dvdMem.CoverReg.CVRINT = 0;
-			
-			UpdateInterrupts();
+	//		dvdMem.CoverReg.CVR = 0;
+	//		dvdMem.CoverReg.CVRINTMASK = tmpCoverReg.CVRINTMASK;
+	//		if (tmpCoverReg.CVRINT) dvdMem.CoverReg.CVRINT = 0;
+	//		
+	//		UpdateInterrupts();
 
-			_dbg_assert_(DVDINTERFACE, (tmpCoverReg.CVR == 0));
-		}
-		break;
+	//		_dbg_assert_(DVDINTERFACE, (tmpCoverReg.CVR == 0));
+	//	}
+	//	break;
 
 	case DI_COMMAND_0:				dvdMem.Command[0] = _iValue; break;
 	case DI_COMMAND_1:				dvdMem.Command[1] = _iValue; break;
diff --git a/Source/Core/DolphinWX/Src/Frame.cpp b/Source/Core/DolphinWX/Src/Frame.cpp
index 1a248f6bbc..19aafe0570 100644
--- a/Source/Core/DolphinWX/Src/Frame.cpp
+++ b/Source/Core/DolphinWX/Src/Frame.cpp
@@ -25,6 +25,7 @@
 #include "Common.h"
 #include "Config.h"
 #include "Core.h"
+#include "HW\DVDInterface.h"
 #include "State.h"
 #include "ConfigMain.h"
 #include "PluginManager.h"
@@ -54,6 +55,8 @@ extern "C" {
 #include "../resources/toolbar_stop.c"
 };
 
+using namespace DVDInterface;
+
 #define wxGetBitmapFromMemory(name) _wxGetBitmapFromMemory(name, sizeof(name))
 inline wxBitmap _wxGetBitmapFromMemory(const unsigned char* data, int length)
 {
@@ -95,6 +98,7 @@ EVT_MENU(IDM_CONFIG_WIIMOTE_PLUGIN, CFrame::OnPluginWiimote)
 EVT_MENU(IDM_BROWSE, CFrame::OnBrowse)
 EVT_MENU(IDM_MEMCARD, CFrame::OnMemcard)
 EVT_MENU(IDM_CHEATS, CFrame::OnShow_CheatsWindow)
+EVT_MENU(IDM_SWAPDISC, CFrame::OnSwapDisc)
 EVT_MENU(IDM_TOGGLE_FULLSCREEN, CFrame::OnToggleFullscreen)
 EVT_MENU(IDM_TOGGLE_DUALCORE, CFrame::OnToggleDualCore)
 EVT_MENU(IDM_TOGGLE_SKIPIDLE, CFrame::OnToggleSkipIdle)
@@ -246,6 +250,7 @@ void CFrame::CreateMenu()
 	miscMenu->AppendSeparator();
 	miscMenu->Append(IDM_MEMCARD, _T("&Memcard manager"));
 	miscMenu->Append(IDM_CHEATS, _T("Action &Replay Manager"));
+	// miscMenu->Append(IDM_SWAPDISC, _T("S&wap Disc"));
 	m_pMenuBar->Append(miscMenu, _T("&Misc"));
 
 	// help menu
@@ -675,3 +680,9 @@ void CFrame::UpdateGUI()
 		}
 	}
 }
+
+void CFrame::OnSwapDisc(wxCommandEvent& WXUNUSED (event))
+{
+	PanicAlert("Omega: I opened the lid");
+	SetLidOpen(true);
+}
\ No newline at end of file
diff --git a/Source/Core/DolphinWX/Src/Frame.h b/Source/Core/DolphinWX/Src/Frame.h
index 139af96274..7f1507dce7 100644
--- a/Source/Core/DolphinWX/Src/Frame.h
+++ b/Source/Core/DolphinWX/Src/Frame.h
@@ -115,7 +115,8 @@ class CFrame : public wxFrame
 		void OnHostMessage(wxCommandEvent& event);
 		void OnLoadState(wxCommandEvent& event);
 		void OnSaveState(wxCommandEvent& event);
-		void OnClose(wxCloseEvent &event); 
+		void OnClose(wxCloseEvent &event);
+		void OnSwapDisc(wxCommandEvent& event);
 
 		wxMenuBar* m_pMenuBar;
 
diff --git a/Source/Core/DolphinWX/Src/Globals.h b/Source/Core/DolphinWX/Src/Globals.h
index 4efd691328..bb6fdf2475 100644
--- a/Source/Core/DolphinWX/Src/Globals.h
+++ b/Source/Core/DolphinWX/Src/Globals.h
@@ -48,6 +48,7 @@ enum
 	IDM_BROWSE,
 	IDM_MEMCARD,
 	IDM_CHEATS,
+	IDM_SWAPDISC,
 	IDM_PROPERTIES,
 	IDM_OPENCONTAININGFOLDER,
 	IDM_SETDEFAULTGCM,