2008-08-06 03:09:59 +02:00
|
|
|
/****************************************************************************
|
2010-01-27 23:20:37 +01:00
|
|
|
* Snes9x Nintendo Wii/Gamecube Port
|
2008-08-06 03:09:59 +02:00
|
|
|
*
|
|
|
|
* softdev July 2006
|
|
|
|
* crunchy2 May 2007-July 2007
|
2008-09-23 06:13:33 +02:00
|
|
|
* Michniewski 2008
|
2010-01-27 23:20:37 +01:00
|
|
|
* Tantric 2008-2010
|
2008-08-06 03:09:59 +02:00
|
|
|
*
|
2008-08-22 04:47:08 +02:00
|
|
|
* snes9xGX.h
|
2008-08-06 03:09:59 +02:00
|
|
|
*
|
|
|
|
* This file controls overall program flow. Most things start and end here!
|
2008-09-12 07:28:40 +02:00
|
|
|
***************************************************************************/
|
2008-08-06 03:09:59 +02:00
|
|
|
|
|
|
|
#ifndef _SNES9XGX_H_
|
|
|
|
#define _SNES9XGX_H_
|
|
|
|
|
2009-03-11 18:28:37 +01:00
|
|
|
#include "FreeTypeGX.h"
|
2008-08-06 03:09:59 +02:00
|
|
|
#include "snes9x.h"
|
2009-01-30 08:25:30 +01:00
|
|
|
#include "filter.h"
|
2009-03-16 06:16:20 +01:00
|
|
|
#include "filelist.h"
|
2008-08-06 03:09:59 +02:00
|
|
|
|
2008-12-24 09:02:04 +01:00
|
|
|
#define APPNAME "Snes9x GX"
|
2009-12-23 23:50:33 +01:00
|
|
|
#define APPVERSION "4.1.5"
|
2009-12-23 08:21:05 +01:00
|
|
|
#define APPFOLDER "snes9xgx"
|
2008-12-24 09:02:04 +01:00
|
|
|
#define PREF_FILE_NAME "settings.xml"
|
2008-08-06 03:09:59 +02:00
|
|
|
|
|
|
|
#define NOTSILENT 0
|
|
|
|
#define SILENT 1
|
|
|
|
|
2009-10-02 00:35:12 +02:00
|
|
|
const char pathPrefix[9][8] =
|
2009-12-02 07:48:50 +01:00
|
|
|
{ "", "sd:/", "usb:/", "dvd:/", "smb:/", "carda:/", "cardb:/" };
|
2009-10-02 00:35:12 +02:00
|
|
|
|
2008-08-07 05:25:02 +02:00
|
|
|
enum {
|
2009-10-02 00:35:12 +02:00
|
|
|
DEVICE_AUTO,
|
|
|
|
DEVICE_SD,
|
|
|
|
DEVICE_USB,
|
|
|
|
DEVICE_DVD,
|
|
|
|
DEVICE_SMB,
|
|
|
|
DEVICE_SD_SLOTA,
|
|
|
|
DEVICE_SD_SLOTB
|
2008-08-07 05:25:02 +02:00
|
|
|
};
|
|
|
|
|
2008-11-12 08:50:39 +01:00
|
|
|
enum {
|
|
|
|
FILE_SRAM,
|
|
|
|
FILE_SNAPSHOT,
|
2009-03-11 18:28:37 +01:00
|
|
|
FILE_ROM,
|
2009-10-02 00:35:12 +02:00
|
|
|
FILE_CHEAT
|
2008-11-12 08:50:39 +01:00
|
|
|
};
|
|
|
|
|
2009-03-11 18:28:37 +01:00
|
|
|
enum
|
|
|
|
{
|
|
|
|
CTRL_PAD,
|
|
|
|
CTRL_MOUSE,
|
|
|
|
CTRL_SCOPE,
|
|
|
|
CTRL_JUST,
|
|
|
|
CTRL_PAD2,
|
|
|
|
CTRL_PAD4,
|
|
|
|
CTRL_LENGTH
|
|
|
|
};
|
|
|
|
|
2009-03-28 20:03:35 +01:00
|
|
|
const char ctrlName[6][24] =
|
|
|
|
{ "SNES Controller", "SNES Mouse", "Superscope", "Justifier", "SNES Controllers (2)", "SNES Controllers (4)" };
|
2009-03-11 18:28:37 +01:00
|
|
|
|
2010-01-25 09:24:11 +01:00
|
|
|
enum {
|
|
|
|
LANG_JAPANESE = 0,
|
|
|
|
LANG_ENGLISH,
|
|
|
|
LANG_GERMAN,
|
|
|
|
LANG_FRENCH,
|
|
|
|
LANG_SPANISH,
|
|
|
|
LANG_ITALIAN,
|
|
|
|
LANG_DUTCH,
|
|
|
|
LANG_SIMP_CHINESE,
|
|
|
|
LANG_TRAD_CHINESE,
|
|
|
|
LANG_KOREAN
|
|
|
|
};
|
|
|
|
|
2008-08-06 03:09:59 +02:00
|
|
|
struct SGCSettings{
|
2008-08-20 09:58:55 +02:00
|
|
|
int AutoLoad;
|
|
|
|
int AutoSave;
|
|
|
|
int LoadMethod; // For ROMS: Auto, SD, DVD, USB, Network (SMB)
|
2009-12-02 07:48:50 +01:00
|
|
|
int SaveMethod; // For SRAM, Freeze, Prefs: Auto, SD, USB, SMB
|
2009-07-08 07:56:38 +02:00
|
|
|
char LoadFolder[MAXPATHLEN]; // Path to game files
|
|
|
|
char SaveFolder[MAXPATHLEN]; // Path to save files
|
|
|
|
char CheatFolder[MAXPATHLEN]; // Path to cheat files
|
2008-12-18 19:36:30 +01:00
|
|
|
|
2009-12-23 23:50:33 +01:00
|
|
|
char smbip[80];
|
2008-08-10 05:14:39 +02:00
|
|
|
char smbuser[20];
|
|
|
|
char smbpwd[20];
|
|
|
|
char smbshare[20];
|
2008-12-18 19:36:30 +01:00
|
|
|
|
2009-11-16 09:13:02 +01:00
|
|
|
float zoomHor; // horizontal zoom amount
|
|
|
|
float zoomVert; // vertical zoom amount
|
|
|
|
int videomode; // 0 - automatic, 1 - NTSC (480i), 2 - Progressive (480p), 3 - PAL (50Hz), 4 - PAL (60Hz)
|
2008-09-11 04:23:48 +02:00
|
|
|
int render; // 0 - original, 1 - filtered, 2 - unfiltered
|
2009-04-22 20:21:37 +02:00
|
|
|
int FilterMethod; // convert to RenderFilter
|
2009-03-11 18:28:37 +01:00
|
|
|
int Controller;
|
2010-03-16 00:18:18 +01:00
|
|
|
int crosshair;
|
2008-08-25 07:57:43 +02:00
|
|
|
int widescreen; // 0 - 4:3 aspect, 1 - 16:9 aspect
|
2009-04-22 20:21:37 +02:00
|
|
|
int xshift; // video output shift
|
2008-09-28 04:13:19 +02:00
|
|
|
int yshift;
|
2009-03-11 18:28:37 +01:00
|
|
|
int WiimoteOrientation;
|
|
|
|
int ExitAction;
|
|
|
|
int MusicVolume;
|
|
|
|
int SFXVolume;
|
2009-05-20 07:22:50 +02:00
|
|
|
int Rumble;
|
2010-01-25 09:24:11 +01:00
|
|
|
int language;
|
2008-08-06 03:09:59 +02:00
|
|
|
};
|
|
|
|
|
2009-03-11 18:28:37 +01:00
|
|
|
void ExitApp();
|
2008-11-17 01:08:51 +01:00
|
|
|
void ShutdownWii();
|
2008-08-06 03:09:59 +02:00
|
|
|
extern struct SGCSettings GCSettings;
|
2009-05-25 08:47:37 +02:00
|
|
|
extern int ScreenshotRequested;
|
2008-11-17 01:08:51 +01:00
|
|
|
extern int ConfigRequested;
|
|
|
|
extern int ShutdownRequested;
|
2009-03-11 18:28:37 +01:00
|
|
|
extern int ExitRequested;
|
2008-11-17 09:01:05 +01:00
|
|
|
extern char appPath[];
|
2009-12-23 01:38:11 +01:00
|
|
|
extern char loadedFile[];
|
2009-07-08 09:14:18 +02:00
|
|
|
extern FreeTypeGX *fontSystem[];
|
2008-08-06 03:09:59 +02:00
|
|
|
|
2008-08-07 05:25:02 +02:00
|
|
|
#endif
|