diff --git a/Makefile.ps3 b/Makefile.ps3
index b3815938ce..3d506c97ab 100644
--- a/Makefile.ps3
+++ b/Makefile.ps3
@@ -45,33 +45,11 @@ PYTHON2 = python2.exe
GIT = git.exe
endif
-PPU_SRCS = fifo_buffer.c \
+PPU_SRCS = console/griffin/griffin.c \
ps3/file_browser.c \
- ps3/ps3_audio.c \
ps3/menu.c \
- console/console_ext.c \
- console/librsound/librsound.c \
console/szlib/szlib.c \
- ps3/ps3_input.c \
- compat/compat.c \
- ssnes.c \
- driver.c \
- file.c \
- settings.c \
- message.c \
- rewind.c \
- netplay.c \
- ps3/ps3_video_psgl.c \
- gfx/snes_state.c \
- patch.c \
- audio/hermite.c \
- audio/rsound.c \
- dynamic.c \
- ps3/main.c \
- audio/utils.c \
- conf/config_file.c \
- ps3/image.c \
- thread.c
+ ps3/image.c
ifeq ($(HAVE_SSNES_GL), 1)
DEFINES = -DHAVE_SSNES_GL
diff --git a/console/griffin/griffin.c b/console/griffin/griffin.c
new file mode 100644
index 0000000000..04f7336707
--- /dev/null
+++ b/console/griffin/griffin.c
@@ -0,0 +1,140 @@
+/* SSNES - A Super Nintendo Entertainment System (SNES) Emulator frontend for libsnes.
+ * Copyright (C) 2010-2012 - Hans-Kristian Arntzen
+ * Copyright (C) 2011-2012 - Daniel De Matteis
+ *
+ * Some code herein may be based on code found in BSNES.
+ *
+ * SSNES 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 Found-
+ * ation, either version 3 of the License, or (at your option) any later version.
+ *
+ * SSNES 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.
+ *
+ * You should have received a copy of the GNU General Public License along with SSNES.
+ * If not, see .
+ */
+
+/*============================================================
+ CONSOLE EXTENSIONS
+============================================================ */
+#include "../console_ext.c"
+
+/*============================================================
+ COMPATIBILITY
+============================================================ */
+#include "../../compat/compat.c"
+
+/*============================================================
+ CONFIG FILE
+============================================================ */
+#include "../../conf/config_file.c"
+
+/*============================================================
+ SNES STATE
+============================================================ */
+#include "../../gfx/snes_state.c"
+
+/*============================================================
+ DRIVERS
+============================================================ */
+#include "../../driver.c"
+
+/*============================================================
+ FIFO BUFFER
+============================================================ */
+#include "../../fifo_buffer.c"
+
+/*============================================================
+ AUDIO HERMITE
+============================================================ */
+#include "../../audio/hermite.c"
+
+/*============================================================
+ LIBRSOUND
+============================================================ */
+#include "../../console/librsound/librsound.c"
+
+/*============================================================
+ RSOUND
+============================================================ */
+#include "../../audio/rsound.c"
+
+/*============================================================
+ AUDIO UTILS
+============================================================ */
+#include "../../audio/utils.c"
+
+/*============================================================
+ AUDIO
+============================================================ */
+#ifdef __CELLOS_LV2__
+#include "../../ps3/ps3_audio.c"
+#endif
+
+/*============================================================
+ DYNAMIC
+============================================================ */
+#include "../../dynamic.c"
+
+/*============================================================
+ FILE
+============================================================ */
+#include "../../file.c"
+
+/*============================================================
+ MESSAGE
+============================================================ */
+#include "../../message.c"
+
+/*============================================================
+ PATCH
+============================================================ */
+#include "../../patch.c"
+
+/*============================================================
+ SETTINGS
+============================================================ */
+#include "../../settings.c"
+
+/*============================================================
+ REWIND
+============================================================ */
+#include "../../rewind.c"
+
+/*============================================================
+ INPUT
+============================================================ */
+#ifdef __CELLOS_LV2__
+#include "../../ps3/ps3_input.c"
+#endif
+
+/*============================================================
+ VIDEO
+============================================================ */
+#ifdef __CELLOS_LV2__
+#include "../../ps3/ps3_video_psgl.c"
+#endif
+
+/*============================================================
+ MAIN
+============================================================ */
+#ifdef __CELLOS_LV2__
+#include "../../ps3/main.c"
+#endif
+
+/*============================================================
+ SSNES
+============================================================ */
+#include "../../ssnes.c"
+
+/*============================================================
+ THREAD
+============================================================ */
+#include "../../thread.c"
+
+/*============================================================
+ NETPLAY
+============================================================ */
+#include "../../netplay.c"
diff --git a/console/main_wrap.h b/console/main_wrap.h
index b13ee209b1..506e159ccc 100644
--- a/console/main_wrap.h
+++ b/console/main_wrap.h
@@ -18,6 +18,9 @@
// Builds argc/argv and calls ssnes_main_init().
+#ifndef _SSNES_WRAP_H
+#define _SSNES_WRAP_H
+
struct ssnes_main_wrap
{
const char *rom_path;
@@ -28,3 +31,5 @@ struct ssnes_main_wrap
};
int ssnes_main_init_wrap(const struct ssnes_main_wrap *args);
+
+#endif
diff --git a/ps3/shared.h b/ps3/shared.h
index c1b54e77ef..8cd7801778 100644
--- a/ps3/shared.h
+++ b/ps3/shared.h
@@ -16,6 +16,9 @@
* If not, see .
*/
+#ifndef _PS3_SHARED_H
+#define _PS3_SHARED_H
+
#define MAX_PATH_LENGTH 1024
/* ABGR color format */
@@ -109,3 +112,5 @@ extern char DEFAULT_MENU_SHADER_FILE[MAX_PATH_LENGTH];
extern char LIBSNES_DIR_PATH[MAX_PATH_LENGTH];
extern char SYS_CONFIG_FILE[MAX_PATH_LENGTH];
extern char MULTIMAN_EXECUTABLE[MAX_PATH_LENGTH];
+
+#endif