mirror of
https://github.com/CTCaer/RetroArch.git
synced 2025-02-06 03:28:20 +00:00
(Xbox 1/360) main.c changes in xdk-frontend/
This commit is contained in:
parent
8f9f7116a1
commit
189ac29b11
@ -15,10 +15,15 @@
|
||||
*/
|
||||
|
||||
#include <xtl.h>
|
||||
#include <xfilecache.h>
|
||||
|
||||
#include <stddef.h>
|
||||
#include <stdint.h>
|
||||
#include <string>
|
||||
|
||||
#ifdef _XBOX360
|
||||
#include <xfilecache.h>
|
||||
#endif
|
||||
|
||||
#include <xbdm.h>
|
||||
#include "menu.h"
|
||||
#include "../../input/rarch_xinput2.h"
|
||||
@ -51,7 +56,9 @@ typedef struct _STRING {
|
||||
char DEFAULT_SHADER_FILE[PATH_MAX];
|
||||
char SYS_CONFIG_FILE[PATH_MAX];
|
||||
|
||||
#ifdef _XBOX360
|
||||
extern "C" int __stdcall ObCreateSymbolicLink( STRING*, STRING*);
|
||||
#endif
|
||||
|
||||
int Mounted[20];
|
||||
|
||||
@ -59,6 +66,7 @@ int rarch_main(int argc, char *argv[]);
|
||||
|
||||
#undef main
|
||||
|
||||
#ifdef _XBOX360
|
||||
static int DriveMounted(std::string path)
|
||||
{
|
||||
WIN32_FIND_DATA findFileData;
|
||||
@ -74,7 +82,6 @@ static int DriveMounted(std::string path)
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
static int Mount( int Device, char* MountPoint )
|
||||
{
|
||||
char MountConv[260];
|
||||
@ -125,6 +132,7 @@ static int Mount( int Device, char* MountPoint )
|
||||
|
||||
return DriveMounted(MountPoint);
|
||||
}
|
||||
#endif
|
||||
|
||||
static void set_default_settings (void)
|
||||
{
|
||||
@ -169,6 +177,7 @@ static void set_default_settings (void)
|
||||
|
||||
static void get_environment_settings (void)
|
||||
{
|
||||
#ifdef _XBOX360
|
||||
DWORD ret;
|
||||
|
||||
//for devkits only, we will need to mount all partitions for retail
|
||||
@ -186,6 +195,7 @@ static void get_environment_settings (void)
|
||||
Mounted[DEVICE_MEMORY_UNIT1] = Mount(DEVICE_MEMORY_UNIT1,"Memunit1:");
|
||||
Mounted[DEVICE_MEMORY_ONBOARD] = Mount(DEVICE_MEMORY_ONBOARD,"OnBoardMU:");
|
||||
Mounted[DEVICE_CDROM0] = Mount(DEVICE_CDROM0,"Dvd:");
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_HDD_CACHE_PARTITION
|
||||
ret = XSetFileCacheSize(0x100000);
|
||||
@ -205,13 +215,7 @@ static void get_environment_settings (void)
|
||||
XFlushUtilityDrive();
|
||||
#endif
|
||||
|
||||
//unsigned long result = XMountUtilityDriveEx(XMOUNTUTILITYDRIVE_FORMAT0,8192, 0);
|
||||
|
||||
//if(result != ERROR_SUCCESS)
|
||||
//{
|
||||
// RARCH_ERR("Couldn't mount/format utility drive.\n");
|
||||
//}
|
||||
|
||||
#ifdef _XBOX360
|
||||
// detect install environment
|
||||
unsigned long license_mask;
|
||||
|
||||
@ -239,27 +243,37 @@ static void get_environment_settings (void)
|
||||
break;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
strlcpy(DEFAULT_SHADER_FILE, "game:\\media\\shaders\\stock.cg", sizeof(DEFAULT_SHADER_FILE));
|
||||
strlcpy(SYS_CONFIG_FILE, "game:\\retroarch.cfg", sizeof(SYS_CONFIG_FILE));
|
||||
}
|
||||
|
||||
static void configure_libretro(const char * extension)
|
||||
{
|
||||
char full_path[1024];
|
||||
snprintf(full_path, sizeof(full_path), "game:\\CORE%s", extension);
|
||||
|
||||
bool find_libretro_file = rarch_configure_libretro_core(full_path, "game:\\", "game:\\",
|
||||
SYS_CONFIG_FILE, extension);
|
||||
|
||||
set_default_settings();
|
||||
rarch_config_load(SYS_CONFIG_FILE, "game:\\", extension, find_libretro_file);
|
||||
init_libretro_sym();
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
get_environment_settings();
|
||||
|
||||
rarch_main_clear_state();
|
||||
config_set_defaults();
|
||||
|
||||
char full_path[1024];
|
||||
snprintf(full_path, sizeof(full_path), "game:\\CORE.xex");
|
||||
|
||||
bool find_libretro_file = rarch_configure_libretro_core(full_path, "game:\\", "game:\\",
|
||||
SYS_CONFIG_FILE, ".xex");
|
||||
|
||||
set_default_settings();
|
||||
rarch_config_load(SYS_CONFIG_FILE, "game:\\", ".xex", find_libretro_file);
|
||||
init_libretro_sym();
|
||||
|
||||
#ifdef _XBOX1
|
||||
configure_libretro(".xbe");
|
||||
#else
|
||||
configure_libretro(".xex");
|
||||
#endif
|
||||
|
||||
video_xdk_d3d.start();
|
||||
input_xinput.init();
|
||||
|
@ -17,8 +17,10 @@
|
||||
#ifndef _MENU_XUI_H_
|
||||
#define _MENU_XUI_H_
|
||||
|
||||
#ifdef _XBOX360
|
||||
#include <xui.h>
|
||||
#include <xuiapp.h>
|
||||
#endif
|
||||
|
||||
enum
|
||||
{
|
||||
@ -62,6 +64,7 @@ enum
|
||||
INPUT_LOOP_RESIZE_MODE
|
||||
};
|
||||
|
||||
#ifdef _XBOX360
|
||||
class CRetroArch : public CXuiModule
|
||||
{
|
||||
public:
|
||||
@ -214,10 +217,11 @@ class CRetroArchControls: public CXuiSceneImpl
|
||||
XUI_IMPLEMENT_CLASS(CRetroArchControls, L"RetroArchControls", XUI_CLASS_SCENE)
|
||||
};
|
||||
|
||||
extern CRetroArch app;
|
||||
#endif
|
||||
|
||||
int menu_init (void);
|
||||
void menu_free (void);
|
||||
void menu_loop (void);
|
||||
|
||||
extern CRetroArch app;
|
||||
|
||||
#endif
|
||||
|
@ -21,6 +21,7 @@
|
||||
|
||||
#define DFONT_MAX 4096
|
||||
#define PRIM_FVF (D3DFVF_XYZRHW | D3DFVF_TEX1)
|
||||
#define D3DFVF_CUSTOMVERTEX (D3DFVF_XYZ | D3DFVF_NORMAL)
|
||||
|
||||
#define MIN_SCALING_FACTOR (1.0f)
|
||||
#define MAX_SCALING_FACTOR (2.0f)
|
||||
|
@ -216,7 +216,7 @@ REWIND
|
||||
/*============================================================
|
||||
MAIN
|
||||
============================================================ */
|
||||
#if defined(_XBOX360)
|
||||
#if defined(_XBOX)
|
||||
#include "../../360/frontend-xdk/main.c"
|
||||
#elif defined(GEKKO)
|
||||
#include "../../wii/frontend/main.c"
|
||||
|
@ -326,6 +326,45 @@ static const struct platform_bind platform_keys[] = {
|
||||
{ XINPUT_GAMEPAD_DPAD_UP | XINPUT_GAMEPAD_RSTICK_UP_MASK, "RStick D-Pad Up" },
|
||||
{ XINPUT_GAMEPAD_DPAD_DOWN | XINPUT_GAMEPAD_RSTICK_DOWN_MASK, "RStick D-Pad Down" },
|
||||
};
|
||||
#elif defined(_XBOX1)
|
||||
static const struct platform_bind platform_keys[] = {
|
||||
{ XINPUT_GAMEPAD_B, "B button" },
|
||||
{ XINPUT_GAMEPAD_A, "A button" },
|
||||
{ XINPUT_GAMEPAD_Y, "Y button" },
|
||||
{ XINPUT_GAMEPAD_X, "X button" },
|
||||
{ XINPUT_GAMEPAD_DPAD_UP, "D-Pad Up" },
|
||||
{ XINPUT_GAMEPAD_DPAD_DOWN, "D-Pad Down" },
|
||||
{ XINPUT_GAMEPAD_DPAD_LEFT, "D-Pad Left" },
|
||||
{ XINPUT_GAMEPAD_DPAD_RIGHT, "D-Pad Right" },
|
||||
{ XINPUT_GAMEPAD_BACK, "Back button" },
|
||||
{ XINPUT_GAMEPAD_START, "Start button" },
|
||||
{ XINPUT_GAMEPAD_WHITE, "Left Shoulder" },
|
||||
{ XINPUT_GAMEPAD_LEFT_TRIGGER, "Left Trigger" },
|
||||
{ XINPUT_GAMEPAD_LEFT_THUMB, "Left Thumb" },
|
||||
{ XINPUT_GAMEPAD_BLACK, "Right Shoulder" },
|
||||
{ XINPUT_GAMEPAD_RIGHT_TRIGGER, "Right Trigger" },
|
||||
{ XINPUT_GAMEPAD_RIGHT_THUMB, "Right Thumb" },
|
||||
{ XINPUT_GAMEPAD_LSTICK_LEFT_MASK, "LStick Left" },
|
||||
{ XINPUT_GAMEPAD_LSTICK_RIGHT_MASK, "LStick Right" },
|
||||
{ XINPUT_GAMEPAD_LSTICK_UP_MASK, "LStick Up" },
|
||||
{ XINPUT_GAMEPAD_LSTICK_DOWN_MASK, "LStick Down" },
|
||||
/*
|
||||
{ XINPUT_GAMEPAD_DPAD_LEFT | XINPUT_GAMEPAD_LSTICK_LEFT_MASK, "LStick D-Pad Left" },
|
||||
{ XINPUT_GAMEPAD_DPAD_RIGHT | XINPUT_GAMEPAD_LSTICK_RIGHT_MASK, "LStick D-Pad Right" },
|
||||
{ XINPUT_GAMEPAD_DPAD_UP | XINPUT_GAMEPAD_LSTICK_UP_MASK, "LStick D-Pad Up" },
|
||||
{ XINPUT_GAMEPAD_DPAD_DOWN | XINPUT_GAMEPAD_LSTICK_DOWN_MASK, "LStick D-Pad Down" },
|
||||
*/
|
||||
{ XINPUT_GAMEPAD_RSTICK_LEFT_MASK, "RStick Left" },
|
||||
{ XINPUT_GAMEPAD_RSTICK_RIGHT_MASK, "RStick Right" },
|
||||
{ XINPUT_GAMEPAD_RSTICK_UP_MASK, "RStick Up" },
|
||||
{ XINPUT_GAMEPAD_RSTICK_DOWN_MASK, "RStick Down" },
|
||||
/*
|
||||
{ XINPUT_GAMEPAD_DPAD_LEFT | XINPUT_GAMEPAD_RSTICK_LEFT_MASK, "RStick D-Pad Left" },
|
||||
{ XINPUT_GAMEPAD_DPAD_RIGHT | XINPUT_GAMEPAD_RSTICK_RIGHT_MASK, "RStick D-Pad Right" },
|
||||
{ XINPUT_GAMEPAD_DPAD_UP | XINPUT_GAMEPAD_RSTICK_UP_MASK, "RStick D-Pad Up" },
|
||||
{ XINPUT_GAMEPAD_DPAD_DOWN | XINPUT_GAMEPAD_RSTICK_DOWN_MASK, "RStick D-Pad Down" },
|
||||
*/
|
||||
};
|
||||
#elif defined(GEKKO)
|
||||
static const struct platform_bind platform_keys[] = {
|
||||
{ PAD_BUTTON_B, "(NGC) B button" },
|
||||
@ -474,10 +513,10 @@ void rarch_input_set_controls_default (void)
|
||||
rarch_default_keybind_lut[RETRO_DEVICE_ID_JOYPAD_X] = platform_keys[XDK360_DEVICE_ID_JOYPAD_Y].joykey;
|
||||
rarch_default_keybind_lut[RETRO_DEVICE_ID_JOYPAD_L] = platform_keys[XDK360_DEVICE_ID_JOYPAD_LB].joykey;
|
||||
rarch_default_keybind_lut[RETRO_DEVICE_ID_JOYPAD_R] = platform_keys[XDK360_DEVICE_ID_JOYPAD_RB].joykey;
|
||||
rarch_default_keybind_lut[RETRO_DEVICE_ID_JOYPAD_L2] = platform_keys[XDK360_DEVICE_ID_JOYPAD_LEFT_TRIGGER].joykey;
|
||||
rarch_default_keybind_lut[RETRO_DEVICE_ID_JOYPAD_R2] = platform_keys[XDK360_DEVICE_ID_JOYPAD_RIGHT_TRIGGER].joykey;
|
||||
rarch_default_keybind_lut[RETRO_DEVICE_ID_JOYPAD_L3] = platform_keys[XDK360_DEVICE_ID_LSTICK_THUMB].joykey;
|
||||
rarch_default_keybind_lut[RETRO_DEVICE_ID_JOYPAD_R3] = platform_keys[XDK360_DEVICE_ID_RSTICK_THUMB].joykey;
|
||||
rarch_default_keybind_lut[RETRO_DEVICE_ID_JOYPAD_L2] = platform_keys[XDK360_DEVICE_ID_JOYPAD_LEFT_TRIGGER].joykey;
|
||||
rarch_default_keybind_lut[RETRO_DEVICE_ID_JOYPAD_R2] = platform_keys[XDK360_DEVICE_ID_JOYPAD_RIGHT_TRIGGER].joykey;
|
||||
rarch_default_keybind_lut[RETRO_DEVICE_ID_JOYPAD_L3] = platform_keys[XDK360_DEVICE_ID_LSTICK_THUMB].joykey;
|
||||
rarch_default_keybind_lut[RETRO_DEVICE_ID_JOYPAD_R3] = platform_keys[XDK360_DEVICE_ID_RSTICK_THUMB].joykey;
|
||||
#endif
|
||||
for(uint32_t x = 0; x < MAX_PLAYERS; x++)
|
||||
rarch_input_set_default_keybinds(x);
|
||||
|
@ -92,7 +92,7 @@ extern char rotation_lut[ASPECT_RATIO_END][PATH_MAX];
|
||||
/* ABGR color format defines */
|
||||
|
||||
#define WHITE 0xffffffffu
|
||||
#define RED 0xff0000ffu
|
||||
#define RED 0xff0000ffu
|
||||
#define GREEN 0xff00ff00u
|
||||
#define BLUE 0xffff0000u
|
||||
#define YELLOW 0xff00ffffu
|
||||
|
@ -41,6 +41,10 @@ enum
|
||||
DPAD_EMULATION_RSTICK
|
||||
};
|
||||
|
||||
#ifdef _XBOX
|
||||
#include "../input/rarch_xinput2.h"
|
||||
#endif
|
||||
|
||||
#if defined(__CELLOS_LV2__)
|
||||
#include "../ps3/ps3_input.h"
|
||||
enum ps3_device_id
|
||||
@ -82,7 +86,6 @@ enum ps3_device_id
|
||||
};
|
||||
|
||||
#elif defined(_XBOX360)
|
||||
#include "../input/rarch_xinput2.h"
|
||||
|
||||
enum xdk360_device_id
|
||||
{
|
||||
|
@ -21,7 +21,7 @@
|
||||
Optimization="0"
|
||||
OptimizeForProcessor="2"
|
||||
AdditionalIncludeDirectories=""$(SolutionDir)\msvc-stdint";"$(SolutionDir)\msvc-71""
|
||||
PreprocessorDefinitions="_DEBUG;_XBOX;_XBOX1;RARCH_CONSOLE;HAVE_XINPUT_XBOX1;PACKAGE_VERSION=\"0.9.6\";__STDC_CONSTANT_MACROS;HAVE_ZLIB;HAVE_GRIFFIN"
|
||||
PreprocessorDefinitions="_DEBUG;_XBOX;_XBOX1;RARCH_CONSOLE;HAVE_XINPUT_XBOX1;PACKAGE_VERSION=\"0.9.6\";__STDC_CONSTANT_MACROS;HAVE_ZLIB;HAVE_GRIFFIN;HAVE_RARCH_MAIN_WRAP;HAVE_LIBRETRO_MANAGEMENT;HAVE_RARCH_EXEC;HAVE_DEFAULT_RETROPAD_INPUT;HAVE_CONFIGFILE"
|
||||
MinimalRebuild="TRUE"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="1"
|
||||
@ -68,7 +68,7 @@
|
||||
OmitFramePointers="TRUE"
|
||||
OptimizeForProcessor="2"
|
||||
AdditionalIncludeDirectories=""$(SolutionDir)\msvc-stdint";"$(SolutionDir)\msvc-71""
|
||||
PreprocessorDefinitions="NDEBUG;_XBOX;_XBOX1;RARCH_CONSOLE;HAVE_XINPUT_XBOX1;PACKAGE_VERSION=\"0.9.6\";__STDC_CONSTANT_MACROS;HAVE_ZLIB;PROFILE;HAVE_GRIFFIN"
|
||||
PreprocessorDefinitions="NDEBUG;_XBOX;_XBOX1;RARCH_CONSOLE;HAVE_XINPUT_XBOX1;PACKAGE_VERSION=\"0.9.6\";__STDC_CONSTANT_MACROS;HAVE_ZLIB;PROFILE;HAVE_GRIFFIN;HAVE_RARCH_MAIN_WRAP;HAVE_LIBRETRO_MANAGEMENT;HAVE_RARCH_EXEC;HAVE_DEFAULT_RETROPAD_INPUT;HAVE_CONFIGFILE"
|
||||
StringPooling="TRUE"
|
||||
RuntimeLibrary="0"
|
||||
BufferSecurityCheck="TRUE"
|
||||
@ -119,7 +119,7 @@
|
||||
OmitFramePointers="TRUE"
|
||||
OptimizeForProcessor="2"
|
||||
AdditionalIncludeDirectories=""$(SolutionDir)\msvc-stdint";"$(SolutionDir)\msvc-71""
|
||||
PreprocessorDefinitions="NDEBUG;_XBOX;_XBOX1;RARCH_CONSOLE;HAVE_XINPUT_XBOX1;PACKAGE_VERSION=\"0.9.6\";__STDC_CONSTANT_MACROS;HAVE_ZLIB;PROFILE;FASTCAP;HAVE_GRIFFIN"
|
||||
PreprocessorDefinitions="NDEBUG;_XBOX;_XBOX1;RARCH_CONSOLE;HAVE_XINPUT_XBOX1;PACKAGE_VERSION=\"0.9.6\";__STDC_CONSTANT_MACROS;HAVE_ZLIB;PROFILE;FASTCAP;HAVE_GRIFFIN;HAVE_RARCH_MAIN_WRAP;HAVE_LIBRETRO_MANAGEMENT;HAVE_RARCH_EXEC;HAVE_DEFAULT_RETROPAD_INPUT;HAVE_CONFIGFILE"
|
||||
StringPooling="TRUE"
|
||||
RuntimeLibrary="0"
|
||||
BufferSecurityCheck="TRUE"
|
||||
@ -171,7 +171,7 @@
|
||||
OmitFramePointers="TRUE"
|
||||
OptimizeForProcessor="2"
|
||||
AdditionalIncludeDirectories=""$(SolutionDir)\msvc-stdint";"$(SolutionDir)\msvc-71""
|
||||
PreprocessorDefinitions="NDEBUG;_XBOX;_XBOX1;RARCH_CONSOLE;HAVE_XINPUT_XBOX1;PACKAGE_VERSION=\"0.9.6\";__STDC_CONSTANT_MACROS;HAVE_ZLIB;HAVE_GRIFFIN;inline=_inline"
|
||||
PreprocessorDefinitions="NDEBUG;_XBOX;_XBOX1;RARCH_CONSOLE;HAVE_XINPUT_XBOX1;PACKAGE_VERSION=\"0.9.6\";__STDC_CONSTANT_MACROS;HAVE_ZLIB;HAVE_GRIFFIN;inline=_inline;HAVE_RARCH_MAIN_WRAP;HAVE_LIBRETRO_MANAGEMENT;HAVE_RARCH_EXEC;HAVE_DEFAULT_RETROPAD_INPUT;HAVE_CONFIGFILE"
|
||||
StringPooling="TRUE"
|
||||
RuntimeLibrary="0"
|
||||
BufferSecurityCheck="TRUE"
|
||||
@ -221,7 +221,7 @@
|
||||
OmitFramePointers="TRUE"
|
||||
OptimizeForProcessor="2"
|
||||
AdditionalIncludeDirectories=""$(SolutionDir)\msvc-stdint";"$(SolutionDir)\msvc-71""
|
||||
PreprocessorDefinitions="NDEBUG;_XBOX;_XBOX1;RARCH_CONSOLE;HAVE_XINPUT_XBOX1;PACKAGE_VERSION=\"0.9.6\";__STDC_CONSTANT_MACROS;HAVE_ZLIB;LTCG;HAVE_GRIFFIN"
|
||||
PreprocessorDefinitions="NDEBUG;_XBOX;_XBOX1;RARCH_CONSOLE;HAVE_XINPUT_XBOX1;PACKAGE_VERSION=\"0.9.6\";__STDC_CONSTANT_MACROS;HAVE_ZLIB;LTCG;HAVE_GRIFFIN;HAVE_RARCH_MAIN_WRAP;HAVE_LIBRETRO_MANAGEMENT;HAVE_RARCH_EXEC;HAVE_DEFAULT_RETROPAD_INPUT;HAVE_CONFIGFILE"
|
||||
StringPooling="TRUE"
|
||||
RuntimeLibrary="0"
|
||||
BufferSecurityCheck="TRUE"
|
||||
|
Loading…
x
Reference in New Issue
Block a user