1
0
Fork 0

various fixes to be able to build project

This commit is contained in:
ShizZy 2013-09-04 22:09:15 -04:00
parent 518cbf2fb0
commit 86495a83c1
12 changed files with 141 additions and 160 deletions

View File

@ -2,6 +2,10 @@ Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "common", "src\common\common.vcxproj", "{DFE335FC-755D-4BAA-8452-94434F8A1EDB}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "akiru", "src\akiru\akiru.vcxproj", "{CE7D2C07-21CE-4590-81AB-2ADA88A2B85F}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core", "src\core\core.vcxproj", "{8AEA7F29-3466-4786-A10D-6A4BD0610977}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@ -18,6 +22,22 @@ Global
{DFE335FC-755D-4BAA-8452-94434F8A1EDB}.Release|Win32.Build.0 = Release|Win32
{DFE335FC-755D-4BAA-8452-94434F8A1EDB}.Release|x64.ActiveCfg = Release|x64
{DFE335FC-755D-4BAA-8452-94434F8A1EDB}.Release|x64.Build.0 = Release|x64
{CE7D2C07-21CE-4590-81AB-2ADA88A2B85F}.Debug|Win32.ActiveCfg = Debug|Win32
{CE7D2C07-21CE-4590-81AB-2ADA88A2B85F}.Debug|Win32.Build.0 = Debug|Win32
{CE7D2C07-21CE-4590-81AB-2ADA88A2B85F}.Debug|x64.ActiveCfg = Debug|x64
{CE7D2C07-21CE-4590-81AB-2ADA88A2B85F}.Debug|x64.Build.0 = Debug|x64
{CE7D2C07-21CE-4590-81AB-2ADA88A2B85F}.Release|Win32.ActiveCfg = Release|Win32
{CE7D2C07-21CE-4590-81AB-2ADA88A2B85F}.Release|Win32.Build.0 = Release|Win32
{CE7D2C07-21CE-4590-81AB-2ADA88A2B85F}.Release|x64.ActiveCfg = Release|x64
{CE7D2C07-21CE-4590-81AB-2ADA88A2B85F}.Release|x64.Build.0 = Release|x64
{8AEA7F29-3466-4786-A10D-6A4BD0610977}.Debug|Win32.ActiveCfg = Debug|Win32
{8AEA7F29-3466-4786-A10D-6A4BD0610977}.Debug|Win32.Build.0 = Debug|Win32
{8AEA7F29-3466-4786-A10D-6A4BD0610977}.Debug|x64.ActiveCfg = Debug|x64
{8AEA7F29-3466-4786-A10D-6A4BD0610977}.Debug|x64.Build.0 = Debug|x64
{8AEA7F29-3466-4786-A10D-6A4BD0610977}.Release|Win32.ActiveCfg = Release|Win32
{8AEA7F29-3466-4786-A10D-6A4BD0610977}.Release|Win32.Build.0 = Release|Win32
{8AEA7F29-3466-4786-A10D-6A4BD0610977}.Release|x64.ActiveCfg = Release|x64
{8AEA7F29-3466-4786-A10D-6A4BD0610977}.Release|x64.Build.0 = Release|x64
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

Binary file not shown.

View File

@ -46,35 +46,35 @@
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\vsprops\Base.props" />
<Import Project="..\..\vsprops\CodeGen_Debug.props" />
<Import Project="..\..\vsprops\App.props" />
<Import Project="..\..\vsprops\Optimization_Debug.props" />
<Import Project="..\..\vsprops\Externals.props" />
<Import Project="..\..\vsprops\base.props" />
<Import Project="..\..\vsprops\code_generation_debug.props" />
<Import Project="..\..\vsprops\app.props" />
<Import Project="..\..\vsprops\optimization_debug.props" />
<Import Project="..\..\vsprops\externals.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\vsprops\Base.props" />
<Import Project="..\..\vsprops\CodeGen_Debug.props" />
<Import Project="..\..\vsprops\App.props" />
<Import Project="..\..\vsprops\Optimization_Debug.props" />
<Import Project="..\..\vsprops\Externals.props" />
<Import Project="..\..\vsprops\base.props" />
<Import Project="..\..\vsprops\code_generation_debug.props" />
<Import Project="..\..\vsprops\app.props" />
<Import Project="..\..\vsprops\optimization_debug.props" />
<Import Project="..\..\vsprops\externals.props" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\vsprops\Base.props" />
<Import Project="..\..\vsprops\CodeGen_Release.props" />
<Import Project="..\..\vsprops\App.props" />
<Import Project="..\..\vsprops\Optimization_Release.props" />
<Import Project="..\..\vsprops\Externals.props" />
<Import Project="..\..\vsprops\base.props" />
<Import Project="..\..\vsprops\code_generation_release.props" />
<Import Project="..\..\vsprops\app.props" />
<Import Project="..\..\vsprops\optimization_release.props" />
<Import Project="..\..\vsprops\externals.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\vsprops\Base.props" />
<Import Project="..\..\vsprops\CodeGen_Release.props" />
<Import Project="..\..\vsprops\App.props" />
<Import Project="..\..\vsprops\Optimization_Release.props" />
<Import Project="..\..\vsprops\Externals.props" />
<Import Project="..\..\vsprops\base.props" />
<Import Project="..\..\vsprops\code_generation_release.props" />
<Import Project="..\..\vsprops\app.props" />
<Import Project="..\..\vsprops\optimization_release.props" />
<Import Project="..\..\vsprops\externals.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
@ -190,13 +190,13 @@
</ProjectReference>
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\emuwindow\emuwindow_glfw.cpp" />
<ClCompile Include="src\akiru.cpp" />
<ClCompile Include="src\emu_window\emu_window_glfw.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="resource.h" />
<ClInclude Include="src\emuwindow\emuwindow_glfw.h" />
<ClInclude Include="src\akiru.h" />
<ClInclude Include="src\emu_window\emu_window_glfw.h" />
<ClInclude Include="src\version.h" />
</ItemGroup>
<ItemGroup>

View File

@ -2,32 +2,23 @@
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<ClCompile Include="src\akiru.cpp" />
<ClCompile Include="src\emuwindow\emuwindow_glfw.cpp">
<Filter>emuwindow</Filter>
</ClCompile>
<ClCompile Include="src\emuwindow\emuwindow_sdl.cpp">
<Filter>emuwindow</Filter>
<ClCompile Include="src\emu_window\emu_window_glfw.cpp">
<Filter>emu_window</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="resource.h" />
<ClInclude Include="src\version.h" />
<ClInclude Include="src\emuwindow\emuwindow_glfw.h">
<Filter>emuwindow</Filter>
</ClInclude>
<ClInclude Include="src\akiru.h" />
<ClInclude Include="src\emuwindow\emuwindow_sdl.h">
<Filter>emuwindow</Filter>
<ClInclude Include="src\emu_window\emu_window_glfw.h">
<Filter>emu_window</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="akiru.rc" />
</ItemGroup>
<ItemGroup>
<None Include="res\icon3_48x48.ico" />
</ItemGroup>
<ItemGroup>
<Filter Include="emuwindow">
<Filter Include="emu_window">
<UniqueIdentifier>{e3161526-9f53-4670-8dae-2be81ff01bc2}</UniqueIdentifier>
</Filter>
</ItemGroup>

View File

@ -1,9 +1,9 @@
/*!
/**
* Copyright (C) 2013 Akiru Emulator
*
* @file akiry.cpp
* @file akiru.cpp
* @author ShizZy <shizzy247@gmail.com>
* @date 2012-02-11
* @date 2013-09-04
* @brief Main entry point
*
* @section LICENSE
@ -23,102 +23,73 @@
*/
#include "common.h"
#include "platform.h"
#if EMU_PLATFORM == PLATFORM_LINUX
#include <unistd.h>
#endif
//#if EMU_PLATFORM == PLATFORM_LINUX
//#include <unistd.h>
//#endif
#include "config.h"
#include "xml.h"
#include "x86_utils.h"
//#include "core.h"
//#include "dvd/loader.h"
//#include "powerpc/cpu_core.h"
//#include "hw/hw.h"
//#include "video_core.h"
#include "emuwindow/emuwindow_glfw.h"
#include "emu_window/emu_window_glfw.h"
#include "akiru.h"
////////////////////////////////////////////////////////////////////////////////////////////////////
// This is needed to fix SDL in certain build environments
#ifdef main
#undef main
#endif
//#define PLAY_FIFO_RECORDING
/// Application entry point
int __cdecl main(int argc, char **argv) {
u32 tight_loop;
LOG_NOTICE(TMASTER, APP_NAME " starting...\n");
printf("akiru starting...\n");
char program_dir[MAX_PATH];
_getcwd(program_dir, MAX_PATH-1);
size_t cwd_len = strlen(program_dir);
program_dir[cwd_len] = '/';
program_dir[cwd_len+1] = '\0';
//char program_dir[MAX_PATH];
//_getcwd(program_dir, MAX_PATH-1);
//size_t cwd_len = strlen(program_dir);
//program_dir[cwd_len] = '/';
//program_dir[cwd_len+1] = '\0';
common::ConfigManager config_manager;
config_manager.set_program_dir(program_dir, MAX_PATH);
config_manager.ReloadConfig(NULL);
core::SetConfigManager(&config_manager);
//common::ConfigManager config_manager;
//config_manager.set_program_dir(program_dir, MAX_PATH);
//config_manager.ReloadConfig(NULL);
//core::SetConfigManager(&config_manager);
EmuWindow_GLFW* emu_window = new EmuWindow_GLFW;
if (E_OK != core::Init(emu_window)) {
LOG_ERROR(TMASTER, "core initialization failed, exiting...");
core::Kill();
exit(1);
//if (E_OK != core::Init(emu_window)) {
// LOG_ERROR(TMASTER, "core initialization failed, exiting...");
// core::Kill();
// exit(1);
//}
//// Load a game or die...
//if (E_OK == dvd::LoadBootableFile(common::g_config->default_boot_file())) {
// if (common::g_config->enable_auto_boot()) {
// core::Start();
// } else {
// LOG_ERROR(TMASTER, "Autoboot required in no-GUI mode... Exiting!\n");
// }
//} else {
// LOG_ERROR(TMASTER, "Failed to load a bootable file... Exiting!\n");
// exit(E_ERR);
//}
//// run the game
//while(core::SYS_DIE != core::g_state) {
// if (core::SYS_RUNNING == core::g_state) {
// if(!(cpu->is_on)) {
// cpu->Start(); // Initialize and start CPU.
// } else {
// for(tight_loop = 0; tight_loop < 10000; ++tight_loop) {
// cpu->execStep();
// }
// }
// } else if (core::SYS_HALTED == core::g_state) {
// core::Stop();
// }
//}
//core::Kill();
while (1) {
}
#ifndef PLAY_FIFO_RECORDING
// Load a game or die...
if (E_OK == dvd::LoadBootableFile(common::g_config->default_boot_file())) {
if (common::g_config->enable_auto_boot()) {
core::Start();
} else {
LOG_ERROR(TMASTER, "Autoboot required in no-GUI mode... Exiting!\n");
}
} else {
LOG_ERROR(TMASTER, "Failed to load a bootable file... Exiting!\n");
exit(E_ERR);
}
// run the game
while(core::SYS_DIE != core::g_state) {
if (core::SYS_RUNNING == core::g_state) {
if(!(cpu->is_on)) {
cpu->Start(); // Initialize and start CPU.
} else {
for(tight_loop = 0; tight_loop < 10000; ++tight_loop) {
cpu->execStep();
}
}
} else if (core::SYS_HALTED == core::g_state) {
core::Stop();
}
}
core::Kill();
#else
// load fifo log and replay it
// TODO: Restructure initialization process - Fix Flipper_Open being called from dvd loaders (wtf?)
Flipper_Open();
video_core::Start(emu_window);
core::SetState(core::SYS_RUNNING);
fifo_player::FPFile file;
fifo_player::Load("/home/tony/20_frames.gff", file);
fifo_player::PlayFile(file);
// TODO: Wait for video core to finish - PlayFile should handle this
while (1);
#endif
delete emu_window;
return E_OK;
return 0;
}

View File

@ -1,7 +1,7 @@
/**
* Copyright (C) 2005-2012 Gekko Emulator
*
* @file emuwindow.h
* @file emu_window.h
* @author Neobrain
* @date 2012-06-01
* @brief Interface for implementing an emulator window manager
@ -26,12 +26,11 @@
#define CORE_EMUWINDOW_H_
#include "common.h"
#include "config.h"
namespace input_common
{
class KeyboardInput;
}
//namespace input_common
//{
//class KeyboardInput;
//}
// Abstraction class used to provide an interface between emulation code and the frontend (e.g. SDL,
// QGLWidget, GLFW, etc...)
@ -62,10 +61,10 @@ public:
* @brief Called from KeyboardInput constructor to notify EmuWindow about its presence
* @param controller_interface Pointer to a running KeyboardInput interface
*/
void set_controller_interface(input_common::KeyboardInput* controller_interface) {
controller_interface_ = controller_interface;
}
input_common::KeyboardInput* controller_interface() { return controller_interface_; }
//void set_controller_interface(input_common::KeyboardInput* controller_interface) {
// controller_interface_ = controller_interface;
//}
//input_common::KeyboardInput* controller_interface() { return controller_interface_; }
Config config() { return config_; }
void set_config(Config val) { config_ = val; }
@ -80,11 +79,11 @@ public:
void set_window_title(std::string val) { window_title_ = val; }
protected:
EmuWindow() : controller_interface_(NULL), client_area_width_(640), client_area_height_(480) {
EmuWindow() : client_area_width_(640), client_area_height_(480) {
char window_title[255];
sprintf(window_title, "gekko [%s|%s] - %s",
common::g_config->CPUCoreTypeToString(common::g_config->powerpc_core()).c_str(),
common::g_config->RenderTypeToString(common::g_config->current_renderer()).c_str(),
sprintf(window_title, "akiru [%s|%s] - %s",
"null-cpu",
"null-renderer",
__DATE__);
window_title_ = window_title;
}
@ -98,9 +97,6 @@ protected:
private:
Config config_; ///< Internal configuration
input_common::KeyboardInput* controller_interface_;
DISALLOW_COPY_AND_ASSIGN(EmuWindow);
};
#endif // CORE_EMUWINDOW_H_

View File

@ -44,31 +44,31 @@
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\vsprops\Base.props" />
<Import Project="..\..\vsprops\CodeGen_Debug.props" />
<Import Project="..\..\vsprops\Optimization_Debug.props" />
<Import Project="..\..\vsprops\Externals.props" />
<Import Project="..\..\vsprops\base.props" />
<Import Project="..\..\vsprops\code_generation_debug.props" />
<Import Project="..\..\vsprops\optimization_debug.props" />
<Import Project="..\..\vsprops\externals.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\vsprops\Base.props" />
<Import Project="..\..\vsprops\CodeGen_Debug.props" />
<Import Project="..\..\vsprops\Optimization_Debug.props" />
<Import Project="..\..\vsprops\Externals.props" />
<Import Project="..\..\vsprops\base.props" />
<Import Project="..\..\vsprops\code_generation_debug.props" />
<Import Project="..\..\vsprops\optimization_debug.props" />
<Import Project="..\..\vsprops\externals.props" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\vsprops\Base.props" />
<Import Project="..\..\vsprops\CodeGen_Release.props" />
<Import Project="..\..\vsprops\Optimization_Release.props" />
<Import Project="..\..\vsprops\Externals.props" />
<Import Project="..\..\vsprops\base.props" />
<Import Project="..\..\vsprops\code_generation_release.props" />
<Import Project="..\..\vsprops\optimization_release.props" />
<Import Project="..\..\vsprops\externals.props" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
<Import Project="..\..\vsprops\Base.props" />
<Import Project="..\..\vsprops\CodeGen_Release.props" />
<Import Project="..\..\vsprops\Optimization_Release.props" />
<Import Project="..\..\vsprops\Externals.props" />
<Import Project="..\..\vsprops\base.props" />
<Import Project="..\..\vsprops\code_generation_release.props" />
<Import Project="..\..\vsprops\optimization_release.props" />
<Import Project="..\..\vsprops\externals.props" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
@ -180,6 +180,9 @@
<Project>{dfe335fc-755d-4baa-8452-94434f8a1edb}</Project>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\core.cpp" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>

View File

@ -2,22 +2,22 @@
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Label="PropertySheets" />
<PropertyGroup Label="UserMacros">
<GekkoBinDir>$(SolutionDir)bin\$(PlatformName)\</GekkoBinDir>
<AkiruBinDir>$(SolutionDir)bin\$(PlatformName)\</AkiruBinDir>
</PropertyGroup>
<PropertyGroup>
<OutDir>$(GekkoBinDir)</OutDir>
<OutDir>$(AkiruBinDir)</OutDir>
<TargetName>$(ProjectName)$(Configuration)</TargetName>
</PropertyGroup>
<ItemDefinitionGroup>
<PostBuildEvent>
<Command>xcopy "$(SolutionDir)data" "$(GekkoBinDir)" /Y /S /D
xcopy "$(ExternalsDir)glew-1.6.0\bin$(PlatformArchitecture)\glew32.dll" "$(GekkoBinDir)" /Y /S /D
xcopy "$(ExternalsDir)sdl-2.0.0\lib\$(PlatformName)\SDL.dll" "$(GekkoBinDir)" /Y /S /D</Command>
<Command>xcopy "$(SolutionDir)data" "$(AkiruBinDir)" /Y /S /D
xcopy "$(ExternalsDir)glew-1.10.0\bin\Release\$(PlatformName)\glew32.dll" "$(AkiruBinDir)" /Y /S /D
xcopy "$(ExternalsDir)glfw-3.0.2\lib-msvc100\glfw3.dll" "$(AkiruBinDir)" /Y /S /D</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemGroup>
<BuildMacro Include="GekkoBinDir">
<Value>$(GekkoBinDir)</Value>
<BuildMacro Include="AkiruBinDir">
<Value>$(AkiruBinDir)</Value>
</BuildMacro>
</ItemGroup>
</Project>

View File

@ -5,7 +5,7 @@
<ExternalsDir>$(SolutionDir)externals\</ExternalsDir>
</PropertyGroup>
<PropertyGroup>
<_PropertySheetDisplayName>Externals</_PropertySheetDisplayName>
<_PropertySheetDisplayName>externals</_PropertySheetDisplayName>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
@ -15,8 +15,8 @@
</ClCompile>
<Lib />
<Link>
<AdditionalLibraryDirectories>$(ExternalsDir)glew-1.6.0\lib$(PlatformArchitecture);$(ExternalsDir)glfw-3.0\lib$(PlatformArchitecture)\$(Configuration);$(ExternalsDir)libjpeg;$(ExternalsDir)sdl-2.0.0\lib\$(PlatformName);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>libjpeg.lib;glfw3.lib;opengl32.lib;glew32.lib;glu32.lib;SDL.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(ExternalsDir)glew-1.10.0\lib\Release\$(PlatformName);$(ExternalsDir)glfw-3.0.2\lib-msvc100;$(ExternalsDir)libjpeg;$(ExternalsDir)sdl-2.0.0\lib\$(PlatformName);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>glfw3dll.lib;opengl32.lib;glew32.lib;glu32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<IgnoreSpecificDefaultLibraries>
</IgnoreSpecificDefaultLibraries>
</Link>