diff --git a/Source/Core/Core/Core.vcproj b/Source/Core/Core/Core.vcproj index 510d623aa8..423c706b45 100644 --- a/Source/Core/Core/Core.vcproj +++ b/Source/Core/Core/Core.vcproj @@ -1,7 +1,7 @@ - - - - diff --git a/Source/Core/Core/Src/Debugger/GCLibLoc.h b/Source/Core/Core/Src/Debugger/GCLibLoc.h deleted file mode 100644 index 10f00d174a..0000000000 --- a/Source/Core/Core/Src/Debugger/GCLibLoc.h +++ /dev/null @@ -1,11 +0,0 @@ -#ifndef _GCLIBLOC_H -#define _GCLIBLOC_H - -int LoadSymbolsFromO(const char* filename, unsigned int base, unsigned int count); - -void Debugger_LoadSymbolTable(const char* _szFilename); -void Debugger_SaveSymbolTable(const char* _szFilename); -void Debugger_LocateSymbolTables(const char* _szFilename); -void Debugger_ResetSymbolTables(); - -#endif diff --git a/Source/Core/Core/Src/Debugger/GClibloc.cpp b/Source/Core/Core/Src/Debugger/GClibloc.cpp deleted file mode 100644 index 3a3fad22c5..0000000000 --- a/Source/Core/Core/Src/Debugger/GClibloc.cpp +++ /dev/null @@ -1,403 +0,0 @@ -//__________________________________________________________________________________________________ -// -// GClibloc.c V1.0 by Costis! -// (CONFIDENTIAL VERSION) -// - -#include -#include -#include - -#include "../HLE/HLE.h" -#include "../Host.h" -#include "GCELF.h" -#include "GCLibLoc.h" -#include "../HW/Memmap.h" -#include "Debugger_SymbolMap.h" - - -#define gELFTypeS(a) (a == ET_NONE ? "NONE" : \ - a == ET_REL ? "RELOCATABLE" : \ - a == ET_EXEC ? "EXECUTABLE" : \ - a == ET_DYN ? "SHARED OBJECT" : \ - a == ET_CORE ? "CORE" : \ - a == ET_LOPROC ? "PROCESSOR SPECIFIC: LOPROC" : \ - a == ET_HIPROC ? "PROCESSOR SPECIFIC: HIPROC" : "INVALID") - -inline unsigned int bswap (unsigned int a) -{ - return Common::swap32(a); -} - -void readSectionHeader (FILE *ifil, int section, ELF_Header ELF_H, Section_Header *ELF_SH) -{ - fseek (ifil, ELF_H.e_shoff + ELF_H.e_shentsize * section, SEEK_SET); - fread (ELF_SH, 1, sizeof (Section_Header), ifil); - - // Convert the GameCube (Big Endian) format to Little Endian - ELF_SH->name = bswap (ELF_SH->name); - ELF_SH->type = bswap (ELF_SH->type); - ELF_SH->flags = bswap (ELF_SH->flags); - ELF_SH->addr = bswap (ELF_SH->addr); - ELF_SH->offset = bswap (ELF_SH->offset); - ELF_SH->size = bswap (ELF_SH->size); - ELF_SH->link = bswap (ELF_SH->link); - ELF_SH->info = bswap (ELF_SH->info); - ELF_SH->addralign = bswap (ELF_SH->addralign); - ELF_SH->entsize = bswap (ELF_SH->entsize); -} - -void readProgramHeader (FILE *ifil, int psection, ELF_Header ELF_H, Program_Header *ELF_PH) -{ - fseek (ifil, ELF_H.e_phoff + ELF_H.e_phentsize * psection, SEEK_SET); - fread (ELF_PH, 1, sizeof (Program_Header), ifil); - - // Convert the GameCube (Big Endian) format to Little Endian - ELF_PH->type = bswap (ELF_PH->type); - ELF_PH->offset = bswap (ELF_PH->offset); - ELF_PH->vaddr = bswap (ELF_PH->vaddr); - ELF_PH->paddr = bswap (ELF_PH->paddr); - ELF_PH->filesz = bswap (ELF_PH->filesz); - ELF_PH->memsz = bswap (ELF_PH->memsz); - ELF_PH->flags = bswap (ELF_PH->flags); - ELF_PH->align = bswap (ELF_PH->align); -} - -unsigned int locShStrTab (FILE *ifil, ELF_Header ELF_H) -{ - int i; - Section_Header ELF_SH; - char stID[10]; - - for (i = 1; i < ELF_H.e_shnum; i++) - { - readSectionHeader (ifil, i, ELF_H, &ELF_SH); - if (ELF_SH.type == SHT_STRTAB) - { - fseek (ifil, ELF_SH.offset + ELF_SH.name, SEEK_SET); - fread (stID, 1, 10, ifil); - if (strcmp (stID, ".shstrtab") == 0) - return ELF_SH.offset; - } - } - return 0; -} - - -unsigned int locStrTab (FILE *ifil, ELF_Header ELF_H) -{ - int i; - Section_Header ELF_SH; - unsigned int ShStrTab; - char stID[10]; - - // Locate the Section String Table first. - for (i = 1; i < ELF_H.e_shnum; i++) - { - readSectionHeader (ifil, i, ELF_H, &ELF_SH); - if (ELF_SH.type == SHT_STRTAB) - { - fseek (ifil, ELF_SH.offset + ELF_SH.name, SEEK_SET); - fread (stID, 1, 10, ifil); - if (strcmp (stID, ".shstrtab") == 0) - break; - } - } - - if (i >= ELF_H.e_shnum) - return 0; // No Section String Table was located. - - ShStrTab = ELF_SH.offset; - - // Locate the String Table using the Section String Table. - for (i = 1; i < ELF_H.e_shnum; i++) - { - readSectionHeader (ifil, i, ELF_H, &ELF_SH); - if (ELF_SH.type == SHT_STRTAB) - { - fseek (ifil, ShStrTab + ELF_SH.name, SEEK_SET); - fread (stID, 1, 8, ifil); - if (strcmp (stID, ".strtab") == 0) - return ELF_SH.offset; - } - } - - return 0; // No String Table was located. -} - -unsigned int locStrTabShStrTab (FILE *ifil, unsigned int ShStrTab, ELF_Header ELF_H) -{ - int i; - Section_Header ELF_SH; - char stID[8]; - - for (i = 1; i < ELF_H.e_shnum; i++) - { - readSectionHeader (ifil, i, ELF_H, &ELF_SH); - if (ELF_SH.type == SHT_STRTAB) - { - fseek (ifil, ShStrTab + ELF_SH.name, SEEK_SET); - fread (stID, 1, 8, ifil); - if (strcmp (stID, ".strtab") == 0) - return ELF_SH.offset; - } - } - return 0; -} - -unsigned int locSection (FILE *ifil, unsigned int ShType, ELF_Header ELF_H) -{ - int i; - Section_Header ELF_SH; - - for (i = 1; i < ELF_H.e_shnum; i++) - { - readSectionHeader (ifil, i, ELF_H, &ELF_SH); - if (ELF_SH.type == ShType) - return i; - } - return 0; -} - -unsigned int locCode (unsigned char *abuf, unsigned int fsize, unsigned char *bbuf, unsigned int offset, unsigned int size) -{ - unsigned int i, j; - unsigned int b; - - i = 0; - while (i < fsize) - { - - if ((*(unsigned int*)(abuf + i)) == *(unsigned int*)(bbuf + offset)) - { - // Code section possibly found. - for (j = 4; j < size; j += 4) - { - b = (*(unsigned int*)(bbuf + offset + j)); - if ((*(unsigned int*)(abuf + i + j) != b) && (b != 0)) - break; - } - - if (j >= size) - return i; // The code section was found. - } - i += 4; - } - - return 0; -} - - -int LoadSymbolsFromO(const char* filename, unsigned int base, unsigned int count) -{ - unsigned int i, j; - FILE *ifil; - char astr[64]; - unsigned char *abuf, *bbuf; - unsigned int ShStrTab, StrTab, SymTab; - ELF_Header ELF_H; - Section_Header ELF_SH; - Symbol_Header ELF_SYM; - Rela_Header ELF_RELA; - - ifil = fopen (filename, "rb"); - if (ifil == NULL) return 0; - - fread (&ELF_H, 1, sizeof (ELF_Header), ifil); - ELF_H.e_type = (ELF_H.e_type >> 8) | (ELF_H.e_type << 8); - ELF_H.e_machine = (ELF_H.e_machine >> 8) | (ELF_H.e_machine << 8); - ELF_H.e_ehsize = (ELF_H.e_ehsize >> 8) | (ELF_H.e_ehsize << 8); - ELF_H.e_phentsize = (ELF_H.e_phentsize >> 8) | (ELF_H.e_phentsize << 8); - ELF_H.e_phnum = (ELF_H.e_phnum >> 8) | (ELF_H.e_phnum << 8); - ELF_H.e_shentsize = (ELF_H.e_shentsize >> 8) | (ELF_H.e_shentsize << 8); - ELF_H.e_shnum = (ELF_H.e_shnum >> 8) | (ELF_H.e_shnum << 8); - ELF_H.e_shtrndx = (ELF_H.e_shtrndx >> 8) | (ELF_H.e_shtrndx << 8); - ELF_H.e_version = bswap(ELF_H.e_version ); - ELF_H.e_entry = bswap(ELF_H.e_entry ); - ELF_H.e_phoff = bswap(ELF_H.e_phoff ); - ELF_H.e_shoff = bswap(ELF_H.e_shoff ); - ELF_H.e_flags = bswap(ELF_H.e_flags ); - - if (ELF_H.e_machine != 20) - { - printf ("This is not a GameCube ELF file!\n"); - return 0; - } - - printf ("Identification ID: %c%c%c%c\n", ELF_H.ID[0], ELF_H.ID[1], ELF_H.ID[2], ELF_H.ID[3]); - printf ("ELF Type: %d (%s)\n", ELF_H.e_type, gELFTypeS (ELF_H.e_type)); - printf ("ELF Machine: %d\n", ELF_H.e_machine); - printf ("ELF Version: %d\n", ELF_H.e_version); - - ShStrTab = locShStrTab (ifil, ELF_H); - fseek (ifil, ShStrTab + 1, SEEK_SET); - fread (astr, 1, 32, ifil); - - for (i = 0; i < ELF_H.e_shnum; i++) - { - readSectionHeader (ifil, i, ELF_H, &ELF_SH); - - if (ELF_SH.type != 0) - { - fseek (ifil, ShStrTab + ELF_SH.name, SEEK_SET); - j = 0; - while (1) - if ((astr[j++] = fgetc (ifil)) == 0) break; - } - } - - - StrTab = locStrTab (ifil, ELF_H); - - SymTab = locSection (ifil, SHT_SYMTAB, ELF_H); - readSectionHeader (ifil, SymTab, ELF_H, &ELF_SH); - for (i = 1; i < ELF_SH.size / 16; i++) - { - fseek (ifil, ELF_SH.offset + 16 * i, SEEK_SET); - fread (&ELF_SYM, 1, sizeof (Symbol_Header), ifil); - ELF_SYM.name = bswap (ELF_SYM.name); - ELF_SYM.value = bswap (ELF_SYM.value); - ELF_SYM.size = bswap (ELF_SYM.size); - ELF_SYM.shndx = (ELF_SYM.shndx >> 8) | (ELF_SYM.shndx << 8); - - fseek (ifil, StrTab + ELF_SYM.name, SEEK_SET); - j = 0; - while (1) - if ((astr[j++] = fgetc (ifil)) == 0) break; - } - - readSectionHeader (ifil, 1, ELF_H, &ELF_SH); - fseek (ifil, ELF_SH.offset, SEEK_SET); - if (ELF_SH.size<0 || ELF_SH.size>0x10000000) - { - PanicAlert("Failed to load symbols from object file.\n" - "Header size is invalid"); - } - abuf = (unsigned char *)malloc (ELF_SH.size); - fread (abuf, 1, ELF_SH.size, ifil); - - //printf ("\nRelocatable Addend Header Information:\n\n"); - readSectionHeader (ifil, locSection (ifil, 4, ELF_H), ELF_H, &ELF_SH); - - if (ELF_SH.entsize==0) //corrupt file? - { - char temp[256]; - sprintf(temp,"Huh? ELF_SH.entsize==0 in %s!",filename); - //MessageBox(GetForegroundWindow(),temp,"Hmm....",0); - - return 0; - } - else - { - unsigned int num = ELF_SH.size / ELF_SH.entsize; - for (i = 0; i < num; i++) - { - fseek (ifil, ELF_SH.offset + 12 * i, SEEK_SET); - fread (&ELF_RELA, 1, sizeof (Rela_Header), ifil); - ELF_RELA.offset = bswap (ELF_RELA.offset); - ELF_RELA.info = bswap (ELF_RELA.info); - ELF_RELA.addend = bswap (ELF_RELA.addend); - - *(unsigned int*)(abuf + (ELF_RELA.offset & ~3)) = 0; - if (ELF_SH.size == 0 || ELF_SH.entsize==0) //corrupt file? - { - char temp[256]; - sprintf(temp,"Huh? ELF_SH.entsize==0 in %s!",filename); - //MessageBox(GetForegroundWindow(),temp,"Hmm....",0); - - return 0; - } - } - - bbuf = (unsigned char*)Memory::GetPointer(base); - - readSectionHeader (ifil, SymTab, ELF_H, &ELF_SH); - for (i = 1; i < ELF_SH.size / 16; i++) - { - fseek (ifil, ELF_SH.offset + 16 * i, SEEK_SET); - fread (&ELF_SYM, 1, sizeof (Symbol_Header), ifil); - ELF_SYM.name = bswap (ELF_SYM.name); - ELF_SYM.value = bswap (ELF_SYM.value); - ELF_SYM.size = bswap (ELF_SYM.size); - ELF_SYM.shndx = (ELF_SYM.shndx >> 8) | (ELF_SYM.shndx << 8); - - if (ELF_SYM.shndx == 1) - { - fseek (ifil, StrTab + ELF_SYM.name, SEEK_SET); - j = 0; - while (1) - { - if ((astr[j++] = fgetc (ifil)) == 0) - break; - } - - u32 offset = locCode (bbuf, count, abuf, ELF_SYM.value, ELF_SYM.size); - if (offset != 0 && ELF_SYM.size>12) - { - Debugger::AddSymbol(Debugger::CSymbol(offset+base | 0x80000000, ELF_SYM.size, Debugger::ST_FUNCTION, astr)); - } - } - } - free (abuf); - fclose (ifil); - } - return 0; -} - - - -void Debugger_LoadSymbolTable(const char* _szFilename) -{ - Debugger::LoadSymbolMap(_szFilename); - HLE::PatchFunctions(); - Host_NotifyMapLoaded(); -} - -void Debugger_SaveSymbolTable(const char* _szFilename) -{ - Debugger::SaveSymbolMap(_szFilename); -} - -void Debugger_LocateSymbolTables(const char* _szFilename) -{ - std::vector files; - - std::string directory = _szFilename; - const char *temp = _szFilename; - const char *oldtemp = temp; - temp += strlen(temp)+1; - if (*temp==0) - { - //we only got one file - files.push_back(std::string(oldtemp)); - } - else - { - while (*temp) - { - files.push_back(directory + _T("\\") + _T(temp)); - temp+=strlen(temp)+1; - } - } - - while(!files.empty()) - { - std::string strFilename = files.back(); - files.pop_back(); - - LOG(MASTER_LOG,"Loading symbols from %s", strFilename.c_str()); - LoadSymbolsFromO(strFilename.c_str(), 0x80000000, 24*1024*1024); - } - - HLE::PatchFunctions(); -} - - -void Debugger_ResetSymbolTables() -{ - // this shouldn't work, because we have to de-patch HLE too and that is not possible - // Well, de-patching hle would be possible if we saved away the old code bytes :P - // It's not like we use much HLE now anyway -ector - Debugger::Reset(); - Host_NotifyMapLoaded(); -} diff --git a/Source/Core/Core/Src/HLE/HLE_OS.cpp b/Source/Core/Core/Src/HLE/HLE_OS.cpp index d4af61951f..c477f62c7e 100644 --- a/Source/Core/Core/Src/HLE/HLE_OS.cpp +++ b/Source/Core/Core/Src/HLE/HLE_OS.cpp @@ -35,7 +35,7 @@ void HLE_OSPanic() GetStringVA(Error); PanicAlert("PanicAlert: %s", Error.c_str()); - LOG(HLE,"(PC=%08x), PanicAlert: %s", LR, Error.c_str()); + LOG(OSREPORT,"(PC=%08x), PanicAlert: %s", LR, Error.c_str()); NPC = LR; } @@ -45,7 +45,10 @@ void HLE_OSReport() std::string ReportMessage; GetStringVA(ReportMessage); - LOG(HLE,"(PC=%08x) OSReport: %s", LR, ReportMessage.c_str()); + +// PanicAlert("(PC=%08x) OSReport: %s", LR, ReportMessage.c_str()); + + LOG(OSREPORT,"(PC=%08x) OSReport: %s", LR, ReportMessage.c_str()); NPC = LR; } @@ -54,7 +57,7 @@ void HLE_vprintf() std::string ReportMessage; GetStringVA(ReportMessage); - LOG(HLE,"(PC=%08x) VPrintf: %s", LR, ReportMessage.c_str()); + LOG(OSREPORT,"(PC=%08x) VPrintf: %s", LR, ReportMessage.c_str()); NPC = LR; } @@ -64,7 +67,7 @@ void HLE_printf() std::string ReportMessage; GetStringVA(ReportMessage); - LOG(HLE,"(PC=%08x) Printf: %s ", LR, ReportMessage.c_str()); + LOG(OSREPORT,"(PC=%08x) Printf: %s ", LR, ReportMessage.c_str()); NPC = LR; } diff --git a/Source/Plugins/Plugin_VideoDX9/Src/OpcodeDecoding.cpp b/Source/Plugins/Plugin_VideoDX9/Src/OpcodeDecoding.cpp index 1dbb77edbf..8f5b9b07e9 100644 --- a/Source/Plugins/Plugin_VideoDX9/Src/OpcodeDecoding.cpp +++ b/Source/Plugins/Plugin_VideoDX9/Src/OpcodeDecoding.cpp @@ -162,6 +162,36 @@ bool FifoCommandRunnable(void) "Dolphin will now likely crash or hang. Enjoy.", Cmd); MessageBox(NULL, szTemp, "Video-Plugin", MB_OK); g_VideoInitialize.pLog(szTemp, TRUE); + + { + SCPFifoStruct &fifo = *g_VideoInitialize.pCPFifo; + + char szTmp[256]; + // sprintf(szTmp, "Illegal command %02x (at %08x)",Cmd,g_pDataReader->GetPtr()); + sprintf(szTmp, "Illegal command %02x\n" + "CPBase: 0x%08x\n" + "CPEnd: 0x%08x\n" + "CPHiWatermark: 0x%08x\n" + "CPLoWatermark: 0x%08x\n" + "CPReadWriteDistance: 0x%08x\n" + "CPWritePointer: 0x%08x\n" + "CPReadPointer: 0x%08x\n" + "CPBreakpoint: 0x%08x\n" + "bFF_GPReadEnable: %s\n" + "bFF_BPEnable: %s\n" + "bFF_GPLinkEnable: %s\n" + "bFF_Breakpoint: %s\n" + "bPauseRead: %s\n" + ,Cmd, fifo.CPBase, fifo.CPEnd, fifo.CPHiWatermark, fifo.CPLoWatermark, fifo.CPReadWriteDistance + ,fifo.CPWritePointer, fifo.CPReadPointer, fifo.CPBreakpoint, fifo.bFF_GPReadEnable ? "true" : "false" + ,fifo.bFF_BPEnable ? "true" : "false" ,fifo.bFF_GPLinkEnable ? "true" : "false" + ,fifo.bFF_Breakpoint ? "true" : "false", fifo.bPauseRead ? "true" : "false"); + + g_VideoInitialize.pLog(szTmp, TRUE); + MessageBox(0,szTmp,"GFX ERROR",0); + // _assert_msg_(0,szTmp,""); + + } } break; } @@ -274,9 +304,29 @@ void Decode(void) } else { + SCPFifoStruct &fifo = *g_VideoInitialize.pCPFifo; + char szTmp[256]; // sprintf(szTmp, "Illegal command %02x (at %08x)",Cmd,g_pDataReader->GetPtr()); - sprintf(szTmp, "Illegal command %02x",Cmd); + sprintf(szTmp, "Illegal command %02x\n" + "CPBase: 0x%08x\n" + "CPEnd: 0x%08x\n" + "CPHiWatermark: 0x%08x\n" + "CPLoWatermark: 0x%08x\n" + "CPReadWriteDistance: 0x%08x\n" + "CPWritePointer: 0x%08x\n" + "CPReadPointer: 0x%08x\n" + "CPBreakpoint: 0x%08x\n" + "bFF_GPReadEnable: %s\n" + "bFF_BPEnable: %s\n" + "bFF_GPLinkEnable: %s\n" + "bFF_Breakpoint: %s\n" + "bPauseRead: %s\n" + ,Cmd, fifo.CPBase, fifo.CPEnd, fifo.CPHiWatermark, fifo.CPLoWatermark, fifo.CPReadWriteDistance + ,fifo.CPWritePointer, fifo.CPReadPointer, fifo.CPBreakpoint, fifo.bFF_GPReadEnable ? "true" : "false" + ,fifo.bFF_BPEnable ? "true" : "false" ,fifo.bFF_GPLinkEnable ? "true" : "false" + ,fifo.bFF_Breakpoint ? "true" : "false", fifo.bPauseRead ? "true" : "false"); + g_VideoInitialize.pLog(szTmp, TRUE); MessageBox(0,szTmp,"GFX ERROR",0); // _assert_msg_(0,szTmp,""); diff --git a/Source/Plugins/Plugin_VideoOGL/Plugin_VideoOGL.vcproj b/Source/Plugins/Plugin_VideoOGL/Plugin_VideoOGL.vcproj index 9624085a39..499c5532ac 100644 --- a/Source/Plugins/Plugin_VideoOGL/Plugin_VideoOGL.vcproj +++ b/Source/Plugins/Plugin_VideoOGL/Plugin_VideoOGL.vcproj @@ -56,7 +56,7 @@ EnableIntrinsicFunctions="true" OmitFramePointers="true" WholeProgramOptimization="true" - AdditionalIncludeDirectories="../../PluginSpecs;../../Core/Common/Src;../../Core/VideoCommon/Src;./Src;./Src/Windows;../../../Externals;./Src/Windows/libjpeg;..\..\..\Externals\wxWidgets\Include;..\..\..\Externals\wxWidgets\Include\msvc" + AdditionalIncludeDirectories="../../PluginSpecs;../../Core/Common/Src;../../Core/VideoCommon/Src;./Src;./Src/Windows;../../../Externals;..\..\..\Externals\libjpeg;..\..\..\Externals\wxWidgets\Include;..\..\..\Externals\wxWidgets\Include\msvc;..\..\..\Externals\Glew" PreprocessorDefinitions="_WIN32;WIN32;NDEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0" StringPooling="true" RuntimeLibrary="0" @@ -92,7 +92,7 @@ OutputFile="..\..\..\Binary\Win32/Plugins\Plugin_VideoOGL.dll" LinkIncremental="1" SuppressStartupBanner="true" - AdditionalLibraryDirectories="Src\Windows\GL;Src\Windows\libjpeg;..\..\..\Externals\Cg" + AdditionalLibraryDirectories="..\..\..\Externals\Cg;..\..\..\Externals\GLew;..\..\..\Externals\libjpeg" GenerateManifest="false" ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb" ImportLibrary="$(TargetDir)$(TargetName).lib" @@ -163,7 +163,7 @@ FavorSizeOrSpeed="1" OmitFramePointers="false" WholeProgramOptimization="true" - AdditionalIncludeDirectories="../../PluginSpecs;../../Core/Common/Src;../../Core/VideoCommon/Src;./Src;./Src/Windows;../../../Externals;./Src/Windows/libjpeg;..\..\..\Externals\wxWidgets\Include;..\..\..\Externals\wxWidgets\Include\msvc" + AdditionalIncludeDirectories="../../PluginSpecs;../../Core/Common/Src;../../Core/VideoCommon/Src;./Src;./Src/Windows;../../../Externals;..\..\..\Externals\libjpeg;..\..\..\Externals\wxWidgets\Include;..\..\..\Externals\wxWidgets\Include\msvc;..\..\..\Externals\Glew" PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_DEPRECATE;_SECURE_SCL=0" StringPooling="true" ExceptionHandling="1" @@ -201,7 +201,7 @@ OutputFile="..\..\..\Binary\x64\Plugins\Plugin_VideoOGL.dll" LinkIncremental="1" SuppressStartupBanner="true" - AdditionalLibraryDirectories="Src\Windows\GL;Src\Windows\libjpeg;..\..\..\Externals\Cg64" + AdditionalLibraryDirectories="..\..\..\Externals\Cg64;..\..\..\Externals\GLew;..\..\..\Externals\libjpeg" GenerateManifest="false" GenerateDebugInformation="false" ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb" @@ -268,7 +268,7 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -1359,6 +838,66 @@ > + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Source/Plugins/Plugin_VideoOGL/Src/GUI/ConfigDlg.cpp b/Source/Plugins/Plugin_VideoOGL/Src/GUI/ConfigDlg.cpp index 8a90502d68..86dfccac43 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/GUI/ConfigDlg.cpp +++ b/Source/Plugins/Plugin_VideoOGL/Src/GUI/ConfigDlg.cpp @@ -15,9 +15,7 @@ // Official SVN repository and contact information can be found at // http://code.google.com/p/dolphin-emu/ -#ifdef _Win32 -#include "Globals.h" //Is this even needed in here? -#endif + #include "ConfigDlg.h" BEGIN_EVENT_TABLE(ConfigDialog,wxDialog) @@ -64,7 +62,6 @@ void ConfigDialog::CreateGUIControls() m_WindowResolutionCB = new wxComboBox(m_PageVideo, ID_WINDOWRESOLUTIONCB, wxT("WxComboBox1"), wxPoint(132,104), wxSize(121,21), arrayStringFor_WindowResolutionCB, 0, wxDefaultValidator, wxT("WindowResolutionCB")); wxStaticText *WxStaticText1 = new wxStaticText(m_PageVideo, ID_WXSTATICTEXT1, wxT("Windowed Resolution:"), wxPoint(12,104), wxDefaultSize, 0, wxT("WxStaticText1")); - wxStaticText *WxStaticText2 = new wxStaticText(m_PageVideo, ID_WXSTATICTEXT2, wxT("Fullscreen Video Mode:"), wxPoint(12,72), wxDefaultSize, 0, wxT("WxStaticText2")); wxArrayString arrayStringFor_AliasModeCB; diff --git a/Source/Plugins/Plugin_VideoOGL/Src/Globals.cpp b/Source/Plugins/Plugin_VideoOGL/Src/Globals.cpp index 86c120bf44..bf0092f3f5 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/Globals.cpp +++ b/Source/Plugins/Plugin_VideoOGL/Src/Globals.cpp @@ -77,8 +77,6 @@ void Config::Load() iniFile.Get("Enhancements", "ForceFiltering", &bForceFiltering, 0); iniFile.Get("Enhancements", "ForceMaxAniso", &bForceMaxAniso, 0); - - bFullscreen = true; } void Config::Save() @@ -579,18 +577,6 @@ void DVProfClear() #ifdef _WIN32 // The one for Linux is in Linux/Linux.cpp -void SysMessage(const char* _fmt, ...) -{ - char* Msg = (char*)alloca(strlen(_fmt)+512); - va_list ap; - - va_start( ap, _fmt ); - vsnprintf( Msg, strlen(_fmt)+512, _fmt, ap ); - va_end( ap ); - - g_VideoInitialize.pLog(Msg, FALSE); - PanicAlert(Msg); -} HANDLE hConsole = NULL; void OpenConsole() { COORD csize; @@ -661,3 +647,15 @@ void __Log(int type, const char *fmt, ...) #endif } +void SysMessage(const char *fmt, ...) +{ + va_list list; + char msg[512]; + + va_start(list, fmt); + vsprintf(msg, fmt, list); + va_end(list); + + if (msg[strlen(msg)-1] == '\n') msg[strlen(msg)-1] = 0; + wxMessageBox(wxString::FromAscii(msg)); +} diff --git a/Source/Plugins/Plugin_VideoOGL/Src/Globals.h b/Source/Plugins/Plugin_VideoOGL/Src/Globals.h index 8239a38580..9740490e43 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/Globals.h +++ b/Source/Plugins/Plugin_VideoOGL/Src/Globals.h @@ -19,6 +19,12 @@ #ifndef _GLOBALS_H #define _GLOBALS_H +#include +#include +#include +#include +#include + #define LOGGING #include "Common.h" diff --git a/Source/Plugins/Plugin_VideoOGL/Src/OS/Win32.cpp b/Source/Plugins/Plugin_VideoOGL/Src/OS/Win32.cpp index 1ecd43b0cc..813d81389f 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/OS/Win32.cpp +++ b/Source/Plugins/Plugin_VideoOGL/Src/OS/Win32.cpp @@ -172,14 +172,3 @@ namespace EmuWindow ::MoveWindow(m_hWnd, rc.left,rc.top,rc.right-rc.left,rc.bottom-rc.top, TRUE); } } - -void SysMessage(char *fmt, ...) -{ - va_list list; - char tmp[512]; - - va_start(list,fmt); - vsprintf(tmp,fmt,list); - va_end(list); - MessageBox(0, tmp, "Video-Plugin", 0); -} \ No newline at end of file diff --git a/Source/Plugins/Plugin_VideoOGL/Src/OS/Win32.h b/Source/Plugins/Plugin_VideoOGL/Src/OS/Win32.h index 71e9331001..dfccb4815e 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/OS/Win32.h +++ b/Source/Plugins/Plugin_VideoOGL/Src/OS/Win32.h @@ -30,5 +30,3 @@ namespace EmuWindow void Close(); void SetSize(int displayWidth, int displayHeight); } - -void SysMessage(char *fmt, ...); \ No newline at end of file diff --git a/Source/Plugins/Plugin_VideoOGL/Src/main.cpp b/Source/Plugins/Plugin_VideoOGL/Src/main.cpp index 44fe2971fb..e26ab135bf 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/main.cpp +++ b/Source/Plugins/Plugin_VideoOGL/Src/main.cpp @@ -15,12 +15,6 @@ // Official SVN repository and contact information can be found at // http://code.google.com/p/dolphin-emu/ -#include -#include -#include -#include -#include - #include "Globals.h" #include "GUI/ConfigDlg.h" @@ -89,17 +83,6 @@ BOOL APIENTRY DllMain(HINSTANCE hinstDLL, // DLL module handle return TRUE; } #endif -void SysMessage(const char *fmt, ...) { - va_list list; - char msg[512]; - - va_start(list, fmt); - vsprintf(msg, fmt, list); - va_end(list); - - if (msg[strlen(msg)-1] == '\n') msg[strlen(msg)-1] = 0; - wxMessageBox(wxString::FromAscii(msg)); -} void GetDllInfo (PLUGIN_INFO* _PluginInfo) {