From 63e46abdb8764bc97e91bae862c8d461e61b1965 Mon Sep 17 00:00:00 2001 From: bunnei Date: Tue, 8 Apr 2014 19:25:03 -0400 Subject: got rid of 'src' folders in each sub-project --- src/citra/citra.cpp | 71 ++++++++++++++++++++ src/citra/citra.h | 35 ++++++++++ src/citra/emu_window/emu_window_glfw.cpp | 98 ++++++++++++++++++++++++++++ src/citra/emu_window/emu_window_glfw.h | 53 +++++++++++++++ src/citra/src/citra.cpp | 71 -------------------- src/citra/src/citra.h | 35 ---------- src/citra/src/emu_window/emu_window_glfw.cpp | 98 ---------------------------- src/citra/src/emu_window/emu_window_glfw.h | 53 --------------- src/citra/src/version.h | 6 -- src/citra/version.h | 6 ++ 10 files changed, 263 insertions(+), 263 deletions(-) create mode 100644 src/citra/citra.cpp create mode 100644 src/citra/citra.h create mode 100644 src/citra/emu_window/emu_window_glfw.cpp create mode 100644 src/citra/emu_window/emu_window_glfw.h delete mode 100644 src/citra/src/citra.cpp delete mode 100644 src/citra/src/citra.h delete mode 100644 src/citra/src/emu_window/emu_window_glfw.cpp delete mode 100644 src/citra/src/emu_window/emu_window_glfw.h delete mode 100644 src/citra/src/version.h create mode 100644 src/citra/version.h (limited to 'src/citra') diff --git a/src/citra/citra.cpp b/src/citra/citra.cpp new file mode 100644 index 00000000..746cf083 --- /dev/null +++ b/src/citra/citra.cpp @@ -0,0 +1,71 @@ +/** + * Copyright (C) 2013 citra Emulator + * + * @file citra.cpp + * @author ShizZy + * @date 2013-09-04 + * @brief Main entry point + * + * @section LICENSE + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details at + * http://www.gnu.org/copyleft/gpl.html + * + * Official project repository can be found at: + * http://code.google.com/p/gekko-gc-emu/ + */ + +#include "common.h" +#include "log_manager.h" +#include "file_util.h" + +#include "system.h" +#include "core.h" +#include "loader.h" + +#include "emu_window/emu_window_glfw.h" + +#include "citra.h" + +#define E_ERR -1 + +//#define PLAY_FIFO_RECORDING + +/// Application entry point +int __cdecl main(int argc, char **argv) { + //u32 tight_loop; + + printf("citra starting...\n"); + + std::string program_dir = File::GetCurrentDir(); + + LogManager::Init(); + + EmuWindow_GLFW* emu_window = new EmuWindow_GLFW; + + System::Init(emu_window); + + std::string boot_filename = "homebrew.elf"; + std::string error_str; + + bool res = Loader::LoadFile(boot_filename, &error_str); + + if (!res) { + ERROR_LOG(BOOT, "Failed to load ROM: %s", error_str.c_str()); + } + + for (;;) { + Core::SingleStep(); + } + + delete emu_window; + + return 0; +} diff --git a/src/citra/citra.h b/src/citra/citra.h new file mode 100644 index 00000000..b3a07c00 --- /dev/null +++ b/src/citra/citra.h @@ -0,0 +1,35 @@ +/** + * Copyright (C) 2013 Citra Emulator + * + * @file citra.h + * @author ShizZy + * @date 2013-09-04 + * @brief Main entry point + * + * @section LICENSE + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details at + * http://www.gnu.org/copyleft/gpl.html + * + * Official project repository can be found at: + * http://code.google.com/p/gekko-gc-emu/ + */ + +#ifndef CITRA_CITRA_H +#define CITRA_CITRA_H + +#include "version.h" + +#define APP_NAME "citra" +#define APP_VERSION "0.01-" VERSION +#define APP_TITLE APP_NAME " " APP_VERSION +#define COPYRIGHT "Copyright (C) 2013 Citra Emulator" + +#endif // CITRA_CITRA_H diff --git a/src/citra/emu_window/emu_window_glfw.cpp b/src/citra/emu_window/emu_window_glfw.cpp new file mode 100644 index 00000000..4cdb7fbb --- /dev/null +++ b/src/citra/emu_window/emu_window_glfw.cpp @@ -0,0 +1,98 @@ +/** + * Copyright (C) 2013 Citra Emulator + * + * @file emu_window_glfw.cpp + * @author ShizZy + * @date 2013-09-04 + * @brief Implementation implementation of EmuWindow class for GLFW + * + * @section LICENSE + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details at + * http://www.gnu.org/copyleft/gpl.html + * + * Official project repository can be found at: + * http://code.google.com/p/gekko-gc-emu/ + */ + +#include "common.h" +#include "video_core.h" +#include "emu_window_glfw.h" + +static void OnKeyEvent(GLFWwindow* win, int key, int action) { + // EmuWindow_GLFW* emuwin = (EmuWindow_GLFW*)glfwGetWindowUserPointer(win); + //input_common::GCController::GCButtonState state; + + //if (action == GLFW_PRESS) { + // state = input_common::GCController::PRESSED; + //} else { + // state = input_common::GCController::RELEASED; + //} + // for (int channel = 0; channel < 4 && emuwin->controller_interface(); ++channel) { + // emuwin->controller_interface()->SetControllerStatus(channel, key, state); + // } +} + +static void OnWindowSizeEvent(GLFWwindow* win, int width, int height) { + EmuWindow_GLFW* emuwin = (EmuWindow_GLFW*)glfwGetWindowUserPointer(win); + emuwin->set_client_area_width(width); + emuwin->set_client_area_height(height); +} + +/// EmuWindow_GLFW constructor +EmuWindow_GLFW::EmuWindow_GLFW() { + // Initialize the window + if(glfwInit() != GL_TRUE) { + printf("Failed to initialize GLFW! Exiting..."); + exit(1); + } + glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); + glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 1); + render_window_ = glfwCreateWindow(VideoCore::kScreenTopWidth, + (VideoCore::kScreenTopHeight + VideoCore::kScreenBottomHeight), "citra", NULL, NULL); + + // Setup callbacks + glfwSetWindowUserPointer(render_window_, this); + //glfwSetKeyCallback(render_window_, OnKeyEvent); + //glfwSetWindowSizeCallback(render_window_, OnWindowSizeEvent); + + DoneCurrent(); +} + +/// EmuWindow_GLFW destructor +EmuWindow_GLFW::~EmuWindow_GLFW() { + glfwTerminate(); +} + +/// Swap buffers to display the next frame +void EmuWindow_GLFW::SwapBuffers() { + glfwSwapBuffers(render_window_); +} + +/// Polls window events +void EmuWindow_GLFW::PollEvents() { + // TODO(ShizZy): Does this belong here? This is a reasonable place to update the window title + // from the main thread, but this should probably be in an event handler... + static char title[128]; + sprintf(title, "%s (FPS: %02.02f)", window_title_.c_str(), 0.0f); + glfwSetWindowTitle(render_window_, title); + + glfwPollEvents(); +} + +/// Makes the GLFW OpenGL context current for the caller thread +void EmuWindow_GLFW::MakeCurrent() { + glfwMakeContextCurrent(render_window_); +} + +/// Releases (dunno if this is the "right" word) the GLFW context from the caller thread +void EmuWindow_GLFW::DoneCurrent() { + glfwMakeContextCurrent(NULL); +} diff --git a/src/citra/emu_window/emu_window_glfw.h b/src/citra/emu_window/emu_window_glfw.h new file mode 100644 index 00000000..abca9faa --- /dev/null +++ b/src/citra/emu_window/emu_window_glfw.h @@ -0,0 +1,53 @@ +/** + * Copyright (C) 2013 Citra Emulator + * + * @file emu_window_glfw.h + * @author ShizZy + * @date 2013-09-04 + * @brief Implementation implementation of EmuWindow class for GLFW + * + * @section LICENSE + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details at + * http://www.gnu.org/copyleft/gpl.html + * + * Official project repository can be found at: + * http://code.google.com/p/gekko-gc-emu/ + */ + +#pragma once + +#include +#include + +#include "emu_window.h" + +class EmuWindow_GLFW : public EmuWindow { +public: + EmuWindow_GLFW(); + ~EmuWindow_GLFW(); + + /// Swap buffers to display the next frame + void SwapBuffers(); + + /// Polls window events + void PollEvents(); + + /// Makes the graphics context current for the caller thread + void MakeCurrent(); + + /// Releases (dunno if this is the "right" word) the GLFW context from the caller thread + void DoneCurrent(); + + GLFWwindow* render_window_; ///< Internal GLFW render window + +private: + +}; diff --git a/src/citra/src/citra.cpp b/src/citra/src/citra.cpp deleted file mode 100644 index 746cf083..00000000 --- a/src/citra/src/citra.cpp +++ /dev/null @@ -1,71 +0,0 @@ -/** - * Copyright (C) 2013 citra Emulator - * - * @file citra.cpp - * @author ShizZy - * @date 2013-09-04 - * @brief Main entry point - * - * @section LICENSE - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details at - * http://www.gnu.org/copyleft/gpl.html - * - * Official project repository can be found at: - * http://code.google.com/p/gekko-gc-emu/ - */ - -#include "common.h" -#include "log_manager.h" -#include "file_util.h" - -#include "system.h" -#include "core.h" -#include "loader.h" - -#include "emu_window/emu_window_glfw.h" - -#include "citra.h" - -#define E_ERR -1 - -//#define PLAY_FIFO_RECORDING - -/// Application entry point -int __cdecl main(int argc, char **argv) { - //u32 tight_loop; - - printf("citra starting...\n"); - - std::string program_dir = File::GetCurrentDir(); - - LogManager::Init(); - - EmuWindow_GLFW* emu_window = new EmuWindow_GLFW; - - System::Init(emu_window); - - std::string boot_filename = "homebrew.elf"; - std::string error_str; - - bool res = Loader::LoadFile(boot_filename, &error_str); - - if (!res) { - ERROR_LOG(BOOT, "Failed to load ROM: %s", error_str.c_str()); - } - - for (;;) { - Core::SingleStep(); - } - - delete emu_window; - - return 0; -} diff --git a/src/citra/src/citra.h b/src/citra/src/citra.h deleted file mode 100644 index b3a07c00..00000000 --- a/src/citra/src/citra.h +++ /dev/null @@ -1,35 +0,0 @@ -/** - * Copyright (C) 2013 Citra Emulator - * - * @file citra.h - * @author ShizZy - * @date 2013-09-04 - * @brief Main entry point - * - * @section LICENSE - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details at - * http://www.gnu.org/copyleft/gpl.html - * - * Official project repository can be found at: - * http://code.google.com/p/gekko-gc-emu/ - */ - -#ifndef CITRA_CITRA_H -#define CITRA_CITRA_H - -#include "version.h" - -#define APP_NAME "citra" -#define APP_VERSION "0.01-" VERSION -#define APP_TITLE APP_NAME " " APP_VERSION -#define COPYRIGHT "Copyright (C) 2013 Citra Emulator" - -#endif // CITRA_CITRA_H diff --git a/src/citra/src/emu_window/emu_window_glfw.cpp b/src/citra/src/emu_window/emu_window_glfw.cpp deleted file mode 100644 index 4cdb7fbb..00000000 --- a/src/citra/src/emu_window/emu_window_glfw.cpp +++ /dev/null @@ -1,98 +0,0 @@ -/** - * Copyright (C) 2013 Citra Emulator - * - * @file emu_window_glfw.cpp - * @author ShizZy - * @date 2013-09-04 - * @brief Implementation implementation of EmuWindow class for GLFW - * - * @section LICENSE - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details at - * http://www.gnu.org/copyleft/gpl.html - * - * Official project repository can be found at: - * http://code.google.com/p/gekko-gc-emu/ - */ - -#include "common.h" -#include "video_core.h" -#include "emu_window_glfw.h" - -static void OnKeyEvent(GLFWwindow* win, int key, int action) { - // EmuWindow_GLFW* emuwin = (EmuWindow_GLFW*)glfwGetWindowUserPointer(win); - //input_common::GCController::GCButtonState state; - - //if (action == GLFW_PRESS) { - // state = input_common::GCController::PRESSED; - //} else { - // state = input_common::GCController::RELEASED; - //} - // for (int channel = 0; channel < 4 && emuwin->controller_interface(); ++channel) { - // emuwin->controller_interface()->SetControllerStatus(channel, key, state); - // } -} - -static void OnWindowSizeEvent(GLFWwindow* win, int width, int height) { - EmuWindow_GLFW* emuwin = (EmuWindow_GLFW*)glfwGetWindowUserPointer(win); - emuwin->set_client_area_width(width); - emuwin->set_client_area_height(height); -} - -/// EmuWindow_GLFW constructor -EmuWindow_GLFW::EmuWindow_GLFW() { - // Initialize the window - if(glfwInit() != GL_TRUE) { - printf("Failed to initialize GLFW! Exiting..."); - exit(1); - } - glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); - glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 1); - render_window_ = glfwCreateWindow(VideoCore::kScreenTopWidth, - (VideoCore::kScreenTopHeight + VideoCore::kScreenBottomHeight), "citra", NULL, NULL); - - // Setup callbacks - glfwSetWindowUserPointer(render_window_, this); - //glfwSetKeyCallback(render_window_, OnKeyEvent); - //glfwSetWindowSizeCallback(render_window_, OnWindowSizeEvent); - - DoneCurrent(); -} - -/// EmuWindow_GLFW destructor -EmuWindow_GLFW::~EmuWindow_GLFW() { - glfwTerminate(); -} - -/// Swap buffers to display the next frame -void EmuWindow_GLFW::SwapBuffers() { - glfwSwapBuffers(render_window_); -} - -/// Polls window events -void EmuWindow_GLFW::PollEvents() { - // TODO(ShizZy): Does this belong here? This is a reasonable place to update the window title - // from the main thread, but this should probably be in an event handler... - static char title[128]; - sprintf(title, "%s (FPS: %02.02f)", window_title_.c_str(), 0.0f); - glfwSetWindowTitle(render_window_, title); - - glfwPollEvents(); -} - -/// Makes the GLFW OpenGL context current for the caller thread -void EmuWindow_GLFW::MakeCurrent() { - glfwMakeContextCurrent(render_window_); -} - -/// Releases (dunno if this is the "right" word) the GLFW context from the caller thread -void EmuWindow_GLFW::DoneCurrent() { - glfwMakeContextCurrent(NULL); -} diff --git a/src/citra/src/emu_window/emu_window_glfw.h b/src/citra/src/emu_window/emu_window_glfw.h deleted file mode 100644 index abca9faa..00000000 --- a/src/citra/src/emu_window/emu_window_glfw.h +++ /dev/null @@ -1,53 +0,0 @@ -/** - * Copyright (C) 2013 Citra Emulator - * - * @file emu_window_glfw.h - * @author ShizZy - * @date 2013-09-04 - * @brief Implementation implementation of EmuWindow class for GLFW - * - * @section LICENSE - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details at - * http://www.gnu.org/copyleft/gpl.html - * - * Official project repository can be found at: - * http://code.google.com/p/gekko-gc-emu/ - */ - -#pragma once - -#include -#include - -#include "emu_window.h" - -class EmuWindow_GLFW : public EmuWindow { -public: - EmuWindow_GLFW(); - ~EmuWindow_GLFW(); - - /// Swap buffers to display the next frame - void SwapBuffers(); - - /// Polls window events - void PollEvents(); - - /// Makes the graphics context current for the caller thread - void MakeCurrent(); - - /// Releases (dunno if this is the "right" word) the GLFW context from the caller thread - void DoneCurrent(); - - GLFWwindow* render_window_; ///< Internal GLFW render window - -private: - -}; diff --git a/src/citra/src/version.h b/src/citra/src/version.h deleted file mode 100644 index 07b88c64..00000000 --- a/src/citra/src/version.h +++ /dev/null @@ -1,6 +0,0 @@ -// GENERATED - Do not edit! -#ifndef VERSION_H_ -#define VERSION_H_ -#define __BUILD__ "122" -#define VERSION __BUILD__ -#endif // VERSION_H_ diff --git a/src/citra/version.h b/src/citra/version.h new file mode 100644 index 00000000..07b88c64 --- /dev/null +++ b/src/citra/version.h @@ -0,0 +1,6 @@ +// GENERATED - Do not edit! +#ifndef VERSION_H_ +#define VERSION_H_ +#define __BUILD__ "122" +#define VERSION __BUILD__ +#endif // VERSION_H_ -- cgit v1.2.3