mirror of
https://github.com/Fledge68/WiiFlow_Lite.git
synced 2025-02-18 21:16:21 +01:00
-Made a BOLD move and removed all DML and NMM stuff. To play GameCube games you must use Devolution or Nintendont. To play GameCube Disc you must use Nintendont. The only advantage to DML was the screenshot feature and cheats work better. If you really want to use DML then use Dios Mios Booter or USBLoader GX like I will.
-Readded the code to paths to be able to change the path where Wii and GC games are kept. But they really should just be kept in dev:/wbfs and dev:/games. -wiiflow_lite.ini changes under [GAMECUBE] are: removed video_setting= - was used to tell wiiflow when using DML or Nintendont to set cfg args for video mode. not needed anymore. dir_usb_games= - is now - gc_games_dir= with default of %s:/games similar to wii_games_dir dm_widescreen= - is now - widescreen= screenshot= is removed. was used for DML wiiu_widescreen= is added. but only used if on a Wii U -gameconfig2.ini changes as well. -NMM and DML is still used in theme ini files. may change in a commit soon but that means all themes have to be modified, a big pain in the butt. -language and help files will need to be updated to remove all DML and NMM crap. -and default names of images for some icons and btns need to be changed but for now left them as they are. -other minor changes. Most of it untested so I hope it all works, if not then repair commits will follow.
This commit is contained in:
parent
9dc3eaaad1
commit
45b39c2be0
@ -7,7 +7,7 @@
|
|||||||
#define STDEMU_DIR "/wiiflow/nandemu"
|
#define STDEMU_DIR "/wiiflow/nandemu"
|
||||||
#define GAMES_DIR "%s:/wbfs"
|
#define GAMES_DIR "%s:/wbfs"
|
||||||
#define HOMEBREW_DIR "%s:/apps"
|
#define HOMEBREW_DIR "%s:/apps"
|
||||||
#define GC_GAMES_DIR "%s:/games"
|
#define DF_GC_GAMES_DIR "%s:/games"
|
||||||
#define CFG_FILENAME "wiiflow_lite.ini"
|
#define CFG_FILENAME "wiiflow_lite.ini"
|
||||||
#define LANG_FILENAME "languages.ini"
|
#define LANG_FILENAME "languages.ini"
|
||||||
#define CAT_FILENAME "categories_lite.ini"
|
#define CAT_FILENAME "categories_lite.ini"
|
||||||
|
199
source/gc/gc.cpp
199
source/gc/gc.cpp
@ -38,122 +38,13 @@
|
|||||||
#include "memory/memory.h"
|
#include "memory/memory.h"
|
||||||
#include "memory/mem2.hpp"
|
#include "memory/mem2.hpp"
|
||||||
|
|
||||||
// DIOS-MIOS
|
|
||||||
DML_CFG DMLCfg;
|
|
||||||
|
|
||||||
void DML_New_SetOptions(const char *GamePath, char *CheatPath, const char *NewCheatPath,
|
|
||||||
const char *partition, bool cheats, bool debugger, u8 NMM, u8 nodisc, u8 DMLvideoMode,
|
|
||||||
u8 videoSetting, bool widescreen, bool new_dm_cfg, bool activity_led, bool screenshot)
|
|
||||||
{
|
|
||||||
gprintf("DIOS-MIOS: Launch game '%s' through memory (new method)\n", GamePath);
|
|
||||||
memset(&DMLCfg, 0, sizeof(DML_CFG));
|
|
||||||
|
|
||||||
DMLCfg.Magicbytes = 0xD1050CF6;
|
|
||||||
if(new_dm_cfg)
|
|
||||||
DMLCfg.CfgVersion = 0x00000002;
|
|
||||||
else
|
|
||||||
DMLCfg.CfgVersion = 0x00000001;
|
|
||||||
|
|
||||||
if(videoSetting == 0)
|
|
||||||
DMLCfg.VideoMode |= DML_VID_NONE;
|
|
||||||
else if(videoSetting == 1)
|
|
||||||
DMLCfg.VideoMode |= DML_VID_DML_AUTO;
|
|
||||||
else
|
|
||||||
DMLCfg.VideoMode |= DML_VID_FORCE;
|
|
||||||
|
|
||||||
DMLCfg.Config |= DML_CFG_PADHOOK; //Makes life easier, l+z+b+digital down...
|
|
||||||
|
|
||||||
if(GamePath != NULL)
|
|
||||||
{
|
|
||||||
strncpy(DMLCfg.GamePath, GamePath, sizeof(DMLCfg.GamePath));
|
|
||||||
DMLCfg.Config |= DML_CFG_GAME_PATH;
|
|
||||||
}
|
|
||||||
|
|
||||||
if(CheatPath != NULL && NewCheatPath != NULL && cheats)
|
|
||||||
{
|
|
||||||
const char *ptr = NULL;
|
|
||||||
if(strncasecmp(CheatPath, partition, strlen(partition)) != 0)
|
|
||||||
{
|
|
||||||
fsop_CopyFile(CheatPath, NewCheatPath, NULL, NULL);
|
|
||||||
ptr = strchr(NewCheatPath, '/');
|
|
||||||
}
|
|
||||||
else
|
|
||||||
ptr = strchr(CheatPath, '/');
|
|
||||||
strncpy(DMLCfg.CheatPath, ptr, sizeof(DMLCfg.CheatPath));
|
|
||||||
gprintf("DIOS-MIOS: Cheat Path %s\n", ptr);
|
|
||||||
DMLCfg.Config |= DML_CFG_CHEAT_PATH;
|
|
||||||
}
|
|
||||||
if(screenshot)
|
|
||||||
DMLCfg.Config |= DML_CFG_SCREENSHOT;
|
|
||||||
if(activity_led)
|
|
||||||
DMLCfg.Config |= DML_CFG_ACTIVITY_LED;
|
|
||||||
if(cheats)
|
|
||||||
DMLCfg.Config |= DML_CFG_CHEATS;
|
|
||||||
if(debugger)
|
|
||||||
DMLCfg.Config |= DML_CFG_DEBUGGER;
|
|
||||||
if(NMM)
|
|
||||||
DMLCfg.Config |= DML_CFG_NMM;
|
|
||||||
if(NMM > 1)
|
|
||||||
DMLCfg.Config |= DML_CFG_NMM_DEBUG;
|
|
||||||
if(nodisc)
|
|
||||||
{
|
|
||||||
if(new_dm_cfg)
|
|
||||||
DMLCfg.Config |= DML_CFG_NODISC_CFG2;
|
|
||||||
else
|
|
||||||
DMLCfg.Config |= DML_CFG_NODISC_CFG1;
|
|
||||||
}
|
|
||||||
if(widescreen && new_dm_cfg)
|
|
||||||
DMLCfg.Config |= DML_CFG_FORCE_WIDE;
|
|
||||||
|
|
||||||
if(DMLvideoMode > 3)
|
|
||||||
DMLCfg.VideoMode |= DML_VID_PROG_PATCH;
|
|
||||||
}
|
|
||||||
|
|
||||||
void DML_Old_SetOptions(const char *GamePath)
|
|
||||||
{
|
|
||||||
gprintf("DIOS-MIOS: Launch game '%s' through boot.bin (old method)\n", GamePath);
|
|
||||||
fsop_WriteFile(DML_BOOT_PATH, GamePath, strlen(GamePath)+1);
|
|
||||||
|
|
||||||
//Tell DML to boot the game from sd card
|
|
||||||
*(vu32*)0x80001800 = 0xB002D105;
|
|
||||||
DCFlushRange((void *)(0x80001800), 4);
|
|
||||||
ICInvalidateRange((void *)(0x80001800), 4);
|
|
||||||
|
|
||||||
*(vu32*)0xCC003024 |= 7;
|
|
||||||
}
|
|
||||||
|
|
||||||
void DML_New_SetBootDiscOption(bool new_dm_cfg)
|
|
||||||
{
|
|
||||||
memset(&DMLCfg, 0, sizeof(DML_CFG));
|
|
||||||
|
|
||||||
DMLCfg.Magicbytes = 0xD1050CF6;
|
|
||||||
if(new_dm_cfg)
|
|
||||||
DMLCfg.CfgVersion = 0x00000002;
|
|
||||||
else
|
|
||||||
DMLCfg.CfgVersion = 0x00000001;
|
|
||||||
DMLCfg.VideoMode |= DML_VID_DML_AUTO;
|
|
||||||
|
|
||||||
DMLCfg.Config |= DML_CFG_BOOT_DISC;
|
|
||||||
}
|
|
||||||
|
|
||||||
void DML_New_WriteOptions()
|
|
||||||
{
|
|
||||||
//Write options into memory
|
|
||||||
memcpy((void *)0x80001700, &DMLCfg, sizeof(DML_CFG));
|
|
||||||
DCFlushRange((void *)(0x80001700), sizeof(DML_CFG));
|
|
||||||
|
|
||||||
//DML v1.2+
|
|
||||||
memcpy((void *)0x81200000, &DMLCfg, sizeof(DML_CFG));
|
|
||||||
DCFlushRange((void *)(0x81200000), sizeof(DML_CFG));
|
|
||||||
}
|
|
||||||
|
|
||||||
// Nintendont
|
// Nintendont
|
||||||
NIN_CFG NinCfg;
|
NIN_CFG NinCfg;
|
||||||
u8 NinDevice = 0;
|
u8 NinDevice = 0;
|
||||||
bool NinArgsboot = false;
|
bool NinArgsboot = false;
|
||||||
|
|
||||||
void Nintendont_SetOptions(const char *game, const char *gameID, char *CheatPath,char *NewCheatPath, const char *partition,
|
void Nintendont_SetOptions(const char *game, const char *gameID, char *CheatPath,char *NewCheatPath, const char *partition,
|
||||||
bool cheats, u8 NMM, u8 videomode, u8 videoSetting, bool widescreen, bool usb_hid, bool native_ctl, bool deflicker, bool screenshot, bool NIN_Debugger)
|
bool cheats, u8 emuMC, u8 videomode, bool widescreen, bool usb_hid, bool native_ctl, bool deflicker, bool wiiu_widescreen, bool NIN_Debugger)
|
||||||
{
|
{
|
||||||
NinDevice = DeviceHandle.PathToDriveType(game);
|
NinDevice = DeviceHandle.PathToDriveType(game);
|
||||||
memset(&NinCfg, 0, sizeof(NIN_CFG));
|
memset(&NinCfg, 0, sizeof(NIN_CFG));
|
||||||
@ -224,9 +115,7 @@ void Nintendont_SetOptions(const char *game, const char *gameID, char *CheatPath
|
|||||||
if(IsOnWiiU() == true)
|
if(IsOnWiiU() == true)
|
||||||
NinCfg.Config |= NIN_CFG_MEMCARDEMU;
|
NinCfg.Config |= NIN_CFG_MEMCARDEMU;
|
||||||
|
|
||||||
videoSetting = 2;
|
NinCfg.VideoMode |= NIN_VID_FORCE;
|
||||||
if(videoSetting == 2)
|
|
||||||
NinCfg.VideoMode |= NIN_VID_FORCE;
|
|
||||||
|
|
||||||
if((videomode > 3) && (videomode != 6))
|
if((videomode > 3) && (videomode != 6))
|
||||||
NinCfg.Config |= NIN_CFG_FORCE_PROG;
|
NinCfg.Config |= NIN_CFG_FORCE_PROG;
|
||||||
@ -243,16 +132,16 @@ void Nintendont_SetOptions(const char *game, const char *gameID, char *CheatPath
|
|||||||
if(deflicker)
|
if(deflicker)
|
||||||
NinCfg.VideoMode |= NIN_VID_FORCE_DF;
|
NinCfg.VideoMode |= NIN_VID_FORCE_DF;
|
||||||
|
|
||||||
if(screenshot)
|
if(wiiu_widescreen)
|
||||||
NinCfg.Config |= NIN_CFG_WIIU_WIDE;
|
NinCfg.Config |= NIN_CFG_WIIU_WIDE;
|
||||||
|
|
||||||
if(widescreen)
|
if(widescreen)
|
||||||
NinCfg.Config |= NIN_CFG_FORCE_WIDE;
|
NinCfg.Config |= NIN_CFG_FORCE_WIDE;
|
||||||
|
|
||||||
if(NMM > 0)
|
if(emuMC > 0)
|
||||||
NinCfg.Config |= NIN_CFG_MEMCARDEMU;
|
NinCfg.Config |= NIN_CFG_MEMCARDEMU;
|
||||||
|
|
||||||
if(NMM > 1)
|
if(emuMC > 1)
|
||||||
{
|
{
|
||||||
NinCfg.Config |= NIN_CFG_MC_MULTI;
|
NinCfg.Config |= NIN_CFG_MC_MULTI;
|
||||||
NinCfg.MemCardBlocks = 0x4;//1019 blocks (8MB)
|
NinCfg.MemCardBlocks = 0x4;//1019 blocks (8MB)
|
||||||
@ -283,7 +172,7 @@ void Nintendont_SetOptions(const char *game, const char *gameID, char *CheatPath
|
|||||||
gprintf("Nintendont Game Path: %s, ID: %08x\n", NinCfg.GamePath, NinCfg.GameID);
|
gprintf("Nintendont Game Path: %s, ID: %08x\n", NinCfg.GamePath, NinCfg.GameID);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Nintendont_BootDisc(u8 NMM, bool widescreen, bool usb_hid, bool native_ctl, bool deflicker)
|
void Nintendont_BootDisc(u8 emuMC, bool widescreen, bool usb_hid, bool native_ctl, bool deflicker)
|
||||||
{
|
{
|
||||||
memset(&NinCfg, 0, sizeof(NIN_CFG));
|
memset(&NinCfg, 0, sizeof(NIN_CFG));
|
||||||
NinCfg.Magicbytes = 0x01070CF6;
|
NinCfg.Magicbytes = 0x01070CF6;
|
||||||
@ -300,12 +189,12 @@ void Nintendont_BootDisc(u8 NMM, bool widescreen, bool usb_hid, bool native_ctl,
|
|||||||
|
|
||||||
if(usb_hid)
|
if(usb_hid)
|
||||||
NinCfg.Config |= NIN_CFG_HID;
|
NinCfg.Config |= NIN_CFG_HID;
|
||||||
if(NMM == 1)
|
if(emuMC == 1)
|
||||||
{
|
{
|
||||||
NinCfg.Config |= NIN_CFG_MEMCARDEMU;
|
NinCfg.Config |= NIN_CFG_MEMCARDEMU;
|
||||||
NinCfg.MemCardBlocks = 0x2;//251 blocks (2MB)
|
NinCfg.MemCardBlocks = 0x2;//251 blocks (2MB)
|
||||||
}
|
}
|
||||||
else if(NMM == 2)
|
else if(emuMC == 2)
|
||||||
{
|
{
|
||||||
NinCfg.Config |= NIN_CFG_MEMCARDEMU;
|
NinCfg.Config |= NIN_CFG_MEMCARDEMU;
|
||||||
NinCfg.Config |= NIN_CFG_MC_MULTI;
|
NinCfg.Config |= NIN_CFG_MC_MULTI;
|
||||||
@ -556,16 +445,13 @@ u32 __SYS_UnlockSram(u32 write);
|
|||||||
u32 __SYS_SyncSram(void);
|
u32 __SYS_SyncSram(void);
|
||||||
}
|
}
|
||||||
|
|
||||||
void GC_SetVideoMode(u8 videomode, u8 videoSetting, u8 loader)
|
void GC_SetVideoMode(u8 videomode, u8 loader)
|
||||||
{
|
{
|
||||||
syssram *sram;
|
syssram *sram;
|
||||||
sram = __SYS_LockSram();
|
sram = __SYS_LockSram();
|
||||||
GXRModeObj *vmode = VIDEO_GetPreferredMode(0);
|
GXRModeObj *vmode = VIDEO_GetPreferredMode(0);
|
||||||
int vmode_reg = 0;
|
int vmode_reg = 0;
|
||||||
|
|
||||||
if(loader == 2)
|
|
||||||
videoSetting = 2;
|
|
||||||
|
|
||||||
if((VIDEO_HaveComponentCable() && (CONF_GetProgressiveScan() > 0)) || ((videomode > 3) && (videomode != 6)))
|
if((VIDEO_HaveComponentCable() && (CONF_GetProgressiveScan() > 0)) || ((videomode > 3) && (videomode != 6)))
|
||||||
sram->flags |= 0x80; //set progressive flag
|
sram->flags |= 0x80; //set progressive flag
|
||||||
else
|
else
|
||||||
@ -585,82 +471,47 @@ void GC_SetVideoMode(u8 videomode, u8 videoSetting, u8 loader)
|
|||||||
|
|
||||||
if(videomode == 1)
|
if(videomode == 1)
|
||||||
{
|
{
|
||||||
if(videoSetting == 2)
|
if(loader == 1)
|
||||||
{
|
NinCfg.VideoMode |= NIN_VID_FORCE_PAL50;
|
||||||
if(loader == 0)
|
|
||||||
DMLCfg.VideoMode |= DML_VID_FORCE_PAL50;
|
|
||||||
else if(loader == 2)
|
|
||||||
NinCfg.VideoMode |= NIN_VID_FORCE_PAL50;
|
|
||||||
}
|
|
||||||
vmode = &TVPal528IntDf;
|
vmode = &TVPal528IntDf;
|
||||||
}
|
}
|
||||||
else if(videomode == 2)
|
else if(videomode == 2)
|
||||||
{
|
{
|
||||||
if(videoSetting == 2)
|
if(loader == 1)
|
||||||
{
|
NinCfg.VideoMode |= NIN_VID_FORCE_NTSC;
|
||||||
if(loader == 0)
|
|
||||||
DMLCfg.VideoMode |= DML_VID_FORCE_NTSC;
|
|
||||||
else if(loader == 2)
|
|
||||||
NinCfg.VideoMode |= NIN_VID_FORCE_NTSC;
|
|
||||||
}
|
|
||||||
vmode = &TVNtsc480IntDf;
|
vmode = &TVNtsc480IntDf;
|
||||||
}
|
}
|
||||||
else if(videomode == 3)
|
else if(videomode == 3)
|
||||||
{
|
{
|
||||||
if(videoSetting == 2)
|
if(loader == 1)
|
||||||
{
|
NinCfg.VideoMode |= NIN_VID_FORCE_PAL60;
|
||||||
if(loader == 0)
|
|
||||||
DMLCfg.VideoMode |= DML_VID_FORCE_PAL60;
|
|
||||||
else if(loader == 2)
|
|
||||||
NinCfg.VideoMode |= NIN_VID_FORCE_PAL60;
|
|
||||||
}
|
|
||||||
vmode = &TVEurgb60Hz480IntDf;
|
vmode = &TVEurgb60Hz480IntDf;
|
||||||
vmode_reg = 5;
|
vmode_reg = 5;
|
||||||
}
|
}
|
||||||
else if(videomode == 4)
|
else if(videomode == 4)
|
||||||
{
|
{
|
||||||
if(videoSetting == 2)
|
if(loader == 1)
|
||||||
{
|
NinCfg.VideoMode |= NIN_VID_FORCE_NTSC;
|
||||||
if(loader == 0)
|
|
||||||
DMLCfg.VideoMode |= DML_VID_FORCE_PROG;
|
|
||||||
else if(loader == 2)
|
|
||||||
NinCfg.VideoMode |= NIN_VID_FORCE_NTSC;
|
|
||||||
}
|
|
||||||
vmode = &TVNtsc480IntDf;// shouldn't this be vmode = &TVNtsc480Prog
|
vmode = &TVNtsc480IntDf;// shouldn't this be vmode = &TVNtsc480Prog
|
||||||
}
|
}
|
||||||
else if(videomode == 5)
|
else if(videomode == 5)
|
||||||
{
|
{
|
||||||
if(videoSetting == 2)
|
if(loader == 1)
|
||||||
{
|
NinCfg.VideoMode |= NIN_VID_FORCE_PAL60;
|
||||||
if(loader == 0)
|
|
||||||
DMLCfg.VideoMode |= DML_VID_FORCE_PROG;
|
|
||||||
else if(loader == 2)
|
|
||||||
NinCfg.VideoMode |= NIN_VID_FORCE_PAL60;
|
|
||||||
}
|
|
||||||
vmode = &TVEurgb60Hz480IntDf;
|
vmode = &TVEurgb60Hz480IntDf;
|
||||||
vmode_reg = 5;
|
vmode_reg = 5;
|
||||||
}
|
}
|
||||||
else if(videomode == 6)
|
else if(videomode == 6)
|
||||||
{
|
{
|
||||||
if(videoSetting == 2)
|
if(loader == 1)
|
||||||
{
|
NinCfg.VideoMode |= NIN_VID_FORCE_MPAL;
|
||||||
if(loader == 0)
|
|
||||||
DMLCfg.VideoMode |= DML_VID_FORCE_PAL60;
|
|
||||||
else if(loader == 2)
|
|
||||||
NinCfg.VideoMode |= NIN_VID_FORCE_MPAL;
|
|
||||||
}
|
|
||||||
vmode = &TVEurgb60Hz480IntDf;
|
vmode = &TVEurgb60Hz480IntDf;
|
||||||
vmode_reg = 5;
|
vmode_reg = 5;// not sure about this
|
||||||
}
|
}
|
||||||
else if(videomode == 7)
|
else if(videomode == 7)
|
||||||
{
|
{
|
||||||
if(videoSetting == 2)
|
if(loader == 1)
|
||||||
{
|
NinCfg.VideoMode |= NIN_VID_FORCE_MPAL;
|
||||||
if(loader == 0)
|
|
||||||
DMLCfg.VideoMode |= DML_VID_FORCE_PROG;
|
|
||||||
else if(loader == 2)
|
|
||||||
NinCfg.VideoMode |= NIN_VID_FORCE_MPAL;
|
|
||||||
}
|
|
||||||
vmode = &TVEurgb60Hz480IntDf;
|
vmode = &TVEurgb60Hz480IntDf;
|
||||||
vmode_reg = 5;
|
vmode_reg = 5;
|
||||||
}
|
}
|
||||||
@ -728,7 +579,7 @@ void GC_SetLanguage(u8 lang, u8 loader)
|
|||||||
while(!__SYS_SyncSram());
|
while(!__SYS_SyncSram());
|
||||||
|
|
||||||
/* write language for nintendont */
|
/* write language for nintendont */
|
||||||
if(loader == 2)
|
if(loader == 1)
|
||||||
{
|
{
|
||||||
switch(lang)
|
switch(lang)
|
||||||
{
|
{
|
||||||
|
@ -19,60 +19,6 @@
|
|||||||
|
|
||||||
#include <gccore.h>
|
#include <gccore.h>
|
||||||
|
|
||||||
// DIOS-MIOS
|
|
||||||
#define DML_BOOT_PATH "sd:/games/boot.bin"
|
|
||||||
|
|
||||||
typedef struct DML_CFG
|
|
||||||
{
|
|
||||||
u32 Magicbytes; //0xD1050CF6
|
|
||||||
u32 CfgVersion; //0x00000001
|
|
||||||
u32 VideoMode;
|
|
||||||
u32 Config;
|
|
||||||
char GamePath[255];
|
|
||||||
char CheatPath[255];
|
|
||||||
} DML_CFG;
|
|
||||||
|
|
||||||
enum dmlconfig
|
|
||||||
{
|
|
||||||
DML_CFG_CHEATS = (1<<0),
|
|
||||||
DML_CFG_DEBUGGER = (1<<1),
|
|
||||||
DML_CFG_DEBUGWAIT = (1<<2),
|
|
||||||
DML_CFG_NMM = (1<<3),
|
|
||||||
DML_CFG_NMM_DEBUG = (1<<4),
|
|
||||||
DML_CFG_GAME_PATH = (1<<5),
|
|
||||||
DML_CFG_CHEAT_PATH = (1<<6),
|
|
||||||
DML_CFG_ACTIVITY_LED= (1<<7),
|
|
||||||
DML_CFG_PADHOOK = (1<<8),
|
|
||||||
DML_CFG_NODISC_CFG1 = (1<<9),
|
|
||||||
DML_CFG_FORCE_WIDE = (1<<9), //v2
|
|
||||||
DML_CFG_BOOT_DISC = (1<<10),
|
|
||||||
DML_CFG_BOOT_DOL = (1<<11), //v1
|
|
||||||
DML_CFG_BOOT_DISC2 = (1<<11), //v2
|
|
||||||
DML_CFG_NODISC_CFG2 = (1<<12),
|
|
||||||
DML_CFG_SCREENSHOT = (1<<13),
|
|
||||||
};
|
|
||||||
|
|
||||||
enum dmlvideomode
|
|
||||||
{
|
|
||||||
DML_VID_DML_AUTO = (0<<16),
|
|
||||||
DML_VID_FORCE = (1<<16),
|
|
||||||
DML_VID_NONE = (2<<16),
|
|
||||||
|
|
||||||
DML_VID_FORCE_PAL50 = (1<<0),
|
|
||||||
DML_VID_FORCE_PAL60 = (1<<1),
|
|
||||||
DML_VID_FORCE_NTSC = (1<<2),
|
|
||||||
DML_VID_FORCE_PROG = (1<<3),
|
|
||||||
DML_VID_PROG_PATCH = (1<<4),
|
|
||||||
};
|
|
||||||
|
|
||||||
void DML_New_SetOptions(const char *GamePath, char *CheatPath, const char *NewCheatPath,
|
|
||||||
const char *partition, bool cheats, bool debugger, u8 NMM, u8 nodisc, u8 DMLvideoMode,
|
|
||||||
u8 videoSetting, bool widescreen, bool new_dm_cfg, bool activity_led, bool screenshot);
|
|
||||||
void DML_Old_SetOptions(const char *GamePath);
|
|
||||||
void DML_New_SetBootDiscOption(bool new_dm_cfg);
|
|
||||||
void DML_New_WriteOptions();
|
|
||||||
|
|
||||||
|
|
||||||
// Nintendont
|
// Nintendont
|
||||||
#include "nin_cfg.h"
|
#include "nin_cfg.h"
|
||||||
#define NIN_CFG_PATH "nincfg.bin"
|
#define NIN_CFG_PATH "nincfg.bin"
|
||||||
@ -81,9 +27,9 @@ void DML_New_WriteOptions();
|
|||||||
|
|
||||||
bool Nintendont_Installed();
|
bool Nintendont_Installed();
|
||||||
bool Nintendont_GetLoader();
|
bool Nintendont_GetLoader();
|
||||||
void Nintendont_BootDisc(u8 NMM, bool widescreen, bool usb_hid, bool native_ctl, bool deflicker);
|
void Nintendont_BootDisc(u8 emuMC, bool widescreen, bool usb_hid, bool native_ctl, bool deflicker);
|
||||||
void Nintendont_SetOptions(const char *game, const char *gameID, char *CheatPath, char *NewCheatPath, const char *partition,
|
void Nintendont_SetOptions(const char *game, const char *gameID, char *CheatPath, char *NewCheatPath, const char *partition,
|
||||||
bool cheats, u8 NMM, u8 videomode, u8 videoSetting, bool widescreen, bool usb_hid, bool native_ctl, bool deflicker, bool screenshot, bool NIN_Debugger);
|
bool cheats, u8 emuMC, u8 videomode, bool widescreen, bool usb_hid, bool native_ctl, bool deflicker, bool wiiu_widescreen, bool NIN_Debugger);
|
||||||
void Nintendont_WriteOptions();
|
void Nintendont_WriteOptions();
|
||||||
|
|
||||||
// Devolution
|
// Devolution
|
||||||
@ -117,7 +63,7 @@ void DEVO_Boot();
|
|||||||
|
|
||||||
|
|
||||||
// General
|
// General
|
||||||
void GC_SetVideoMode(u8 videomode, u8 videoSetting, u8 loader);
|
void GC_SetVideoMode(u8 videomode, u8 loader);
|
||||||
void GC_SetLanguage(u8 lang, u8 loader);
|
void GC_SetLanguage(u8 lang, u8 loader);
|
||||||
|
|
||||||
#endif //_GC_HPP_
|
#endif //_GC_HPP_
|
||||||
|
@ -268,9 +268,9 @@ void ListGenerator::CreateList(u32 Flow, u32 Device, const string& Path, const v
|
|||||||
else if(DeviceHandle.GetFSType(Device) != PART_FS_WBFS)
|
else if(DeviceHandle.GetFSType(Device) != PART_FS_WBFS)
|
||||||
{
|
{
|
||||||
if(Flow == COVERFLOW_GAMECUBE)
|
if(Flow == COVERFLOW_GAMECUBE)
|
||||||
GetFiles(Path.c_str(), FileTypes, Create_GC_List, true);
|
GetFiles(Path.c_str(), FileTypes, Create_GC_List, true);//the only one that looks for a folder (/root)
|
||||||
else if(Flow == COVERFLOW_PLUGIN)
|
else if(Flow == COVERFLOW_PLUGIN)
|
||||||
GetFiles(Path.c_str(), FileTypes, Create_Plugin_List, false, 30);
|
GetFiles(Path.c_str(), FileTypes, Create_Plugin_List, false, 30);//wow 30 subfolders! really?
|
||||||
else if(Flow == COVERFLOW_HOMEBREW)
|
else if(Flow == COVERFLOW_HOMEBREW)
|
||||||
GetFiles(Path.c_str(), FileTypes, Create_Homebrew_List, false);
|
GetFiles(Path.c_str(), FileTypes, Create_Homebrew_List, false);
|
||||||
}
|
}
|
||||||
@ -308,7 +308,7 @@ void GetFiles(const char *Path, const vector<string>& FileTypes,
|
|||||||
FullPathChar = fmt("%s/%s", Path, pent->d_name);
|
FullPathChar = fmt("%s/%s", Path, pent->d_name);
|
||||||
if(pent->d_type == DT_DIR)
|
if(pent->d_type == DT_DIR)
|
||||||
{
|
{
|
||||||
if(CompareFolders && IsFileSupported(pent->d_name, FileTypes))
|
if(CompareFolders && IsFileSupported(pent->d_name, FileTypes))//if root folder for extracted gc games
|
||||||
{
|
{
|
||||||
AddFile(FullPathChar);
|
AddFile(FullPathChar);
|
||||||
continue;
|
continue;
|
||||||
@ -318,7 +318,7 @@ void GetFiles(const char *Path, const vector<string>& FileTypes,
|
|||||||
}
|
}
|
||||||
else if(pent->d_type == DT_REG)
|
else if(pent->d_type == DT_REG)
|
||||||
{
|
{
|
||||||
NewFileName = strrchr(pent->d_name, '.');
|
NewFileName = strrchr(pent->d_name, '.');//the extension
|
||||||
if(NewFileName == NULL) NewFileName = pent->d_name;
|
if(NewFileName == NULL) NewFileName = pent->d_name;
|
||||||
if(IsFileSupported(NewFileName, FileTypes))
|
if(IsFileSupported(NewFileName, FileTypes))
|
||||||
{
|
{
|
||||||
|
@ -296,7 +296,7 @@ s32 GCDump::DumpGame()
|
|||||||
memset(gamepath, 0, MAX_FAT_PATH);
|
memset(gamepath, 0, MAX_FAT_PATH);
|
||||||
char basedir[MAX_FAT_PATH];
|
char basedir[MAX_FAT_PATH];
|
||||||
memset(basedir, 0, MAX_FAT_PATH);
|
memset(basedir, 0, MAX_FAT_PATH);
|
||||||
strncpy(basedir, fmt(GC_GAMES_DIR, gamepartition), MAX_FAT_PATH);
|
strncpy(basedir, fmt(gc_gamesDir, gamepartition), MAX_FAT_PATH);
|
||||||
|
|
||||||
while(!gamedone)
|
while(!gamedone)
|
||||||
{
|
{
|
||||||
|
@ -69,7 +69,7 @@ struct FST
|
|||||||
class GCDump
|
class GCDump
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
void Init(bool skip, bool comp, bool wexf, bool align, u32 nretry, u32 rsize, const char* partition)
|
void Init(bool skip, bool comp, bool wexf, bool align, u32 nretry, u32 rsize, const char* partition, const char* m_GCgamesDir)
|
||||||
{
|
{
|
||||||
skiponerror = skip;
|
skiponerror = skip;
|
||||||
compressed = comp;
|
compressed = comp;
|
||||||
@ -78,7 +78,7 @@ public:
|
|||||||
gc_nbrretry = nretry;
|
gc_nbrretry = nretry;
|
||||||
gc_readsize = rsize;
|
gc_readsize = rsize;
|
||||||
gamepartition = partition;
|
gamepartition = partition;
|
||||||
//gc_games_dir = m_gc_gamesDir;
|
gc_gamesDir = m_GCgamesDir;
|
||||||
gc_skipped = 0;
|
gc_skipped = 0;
|
||||||
waitonerror = true;
|
waitonerror = true;
|
||||||
}
|
}
|
||||||
@ -95,7 +95,7 @@ private:
|
|||||||
bool gamedone;
|
bool gamedone;
|
||||||
bool multigamedisc;
|
bool multigamedisc;
|
||||||
const char *gamepartition;
|
const char *gamepartition;
|
||||||
//const char *gc_games_dir;
|
const char *gc_gamesDir;
|
||||||
char minfo[74];
|
char minfo[74];
|
||||||
u8 Disc;
|
u8 Disc;
|
||||||
u8 Disc2;
|
u8 Disc2;
|
||||||
|
@ -25,6 +25,7 @@ bool shutdown = false;
|
|||||||
volatile u8 ExitOption = 0;
|
volatile u8 ExitOption = 0;
|
||||||
const char *NeekPath = NULL;
|
const char *NeekPath = NULL;
|
||||||
char wii_games_dir[64];
|
char wii_games_dir[64];
|
||||||
|
char gc_games_dir[64];
|
||||||
|
|
||||||
void __Wpad_PowerCallback()
|
void __Wpad_PowerCallback()
|
||||||
{
|
{
|
||||||
@ -71,6 +72,7 @@ int Sys_GetExitTo(void)
|
|||||||
{
|
{
|
||||||
return ExitOption;
|
return ExitOption;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Sys_ExitTo(int option)
|
void Sys_ExitTo(int option)
|
||||||
{
|
{
|
||||||
ExitOption = option;
|
ExitOption = option;
|
||||||
|
@ -1,62 +1,63 @@
|
|||||||
|
|
||||||
#ifndef _SYS_H_
|
#ifndef _SYS_H_
|
||||||
#define _SYS_H_
|
#define _SYS_H_
|
||||||
|
|
||||||
#include "utils.h"
|
#include "utils.h"
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif /* __cplusplus */
|
#endif /* __cplusplus */
|
||||||
|
|
||||||
#define HBC_LULZ 0x000100014c554c5aULL
|
#define HBC_LULZ 0x000100014c554c5aULL
|
||||||
#define HBC_108 0x00010001af1bf516ULL
|
#define HBC_108 0x00010001af1bf516ULL
|
||||||
#define HBC_JODI 0x0001000148415858ULL
|
#define HBC_JODI 0x0001000148415858ULL
|
||||||
#define HBC_HAXX 0x000100014a4f4449ULL
|
#define HBC_HAXX 0x000100014a4f4449ULL
|
||||||
#define RETURN_CHANNEL 0x0001000857494948ULL
|
#define RETURN_CHANNEL 0x0001000857494948ULL
|
||||||
#define SYSTEM_MENU 0x0000000100000002ULL
|
#define SYSTEM_MENU 0x0000000100000002ULL
|
||||||
|
|
||||||
enum
|
enum
|
||||||
{
|
{
|
||||||
PRIILOADER_DEF = 0,
|
PRIILOADER_DEF = 0,
|
||||||
EXIT_TO_MENU,
|
EXIT_TO_MENU,
|
||||||
EXIT_TO_HBC,
|
EXIT_TO_HBC,
|
||||||
EXIT_TO_PRIILOADER,
|
EXIT_TO_PRIILOADER,
|
||||||
EXIT_TO_DISABLE,
|
EXIT_TO_DISABLE,
|
||||||
EXIT_TO_BOOTMII,
|
EXIT_TO_BOOTMII,
|
||||||
EXIT_TO_WFNK2O,
|
EXIT_TO_WFNK2O,
|
||||||
EXIT_TO_SMNK2O,
|
EXIT_TO_SMNK2O,
|
||||||
BUTTON_CALLBACK,
|
BUTTON_CALLBACK,
|
||||||
WIIFLOW_DEF,
|
WIIFLOW_DEF,
|
||||||
};
|
};
|
||||||
|
|
||||||
/* Prototypes */
|
/* Prototypes */
|
||||||
void Sys_Init(void);
|
void Sys_Init(void);
|
||||||
bool Sys_DolphinMode(void);
|
bool Sys_DolphinMode(void);
|
||||||
bool Sys_HW_Access(void);
|
bool Sys_HW_Access(void);
|
||||||
bool Sys_Exiting(void);
|
bool Sys_Exiting(void);
|
||||||
void Sys_Exit(void);
|
void Sys_Exit(void);
|
||||||
void Sys_ExitTo(int);
|
void Sys_ExitTo(int);
|
||||||
int Sys_GetExitTo(void);
|
int Sys_GetExitTo(void);
|
||||||
void Sys_SetNeekPath(const char*);
|
void Sys_SetNeekPath(const char*);
|
||||||
|
|
||||||
void Open_Inputs(void);
|
void Open_Inputs(void);
|
||||||
void Close_Inputs(void);
|
void Close_Inputs(void);
|
||||||
|
|
||||||
bool AHBRPOT_Patched(void);
|
bool AHBRPOT_Patched(void);
|
||||||
bool IsOnWiiU(void);
|
bool IsOnWiiU(void);
|
||||||
|
|
||||||
/* All our extern C stuff */
|
/* All our extern C stuff */
|
||||||
extern void __exception_setreload(int t);
|
extern void __exception_setreload(int t);
|
||||||
extern int mainIOS;
|
extern int mainIOS;
|
||||||
extern bool useMainIOS;
|
extern bool useMainIOS;
|
||||||
extern volatile bool NANDemuView;
|
extern volatile bool NANDemuView;
|
||||||
extern volatile bool networkInit;
|
extern volatile bool networkInit;
|
||||||
extern u8 currentPartition;
|
extern u8 currentPartition;
|
||||||
extern u8 currentPort;
|
extern u8 currentPort;
|
||||||
extern char wii_games_dir[];
|
extern char wii_games_dir[];
|
||||||
|
extern char gc_games_dir[];
|
||||||
#ifdef __cplusplus
|
|
||||||
}
|
#ifdef __cplusplus
|
||||||
#endif /* __cplusplus */
|
}
|
||||||
|
#endif /* __cplusplus */
|
||||||
#endif
|
|
||||||
|
#endif
|
||||||
|
@ -99,11 +99,6 @@ CMenu::CMenu()
|
|||||||
m_thrdDone = false;
|
m_thrdDone = false;
|
||||||
m_thrdWritten = 0;
|
m_thrdWritten = 0;
|
||||||
m_thrdTotal = 0;
|
m_thrdTotal = 0;
|
||||||
/* mios stuff */
|
|
||||||
m_mios_ver = 0;
|
|
||||||
m_sd_dm = false;
|
|
||||||
m_new_dml = false;
|
|
||||||
m_new_dm_cfg = false;
|
|
||||||
/* ftp stuff */
|
/* ftp stuff */
|
||||||
m_ftp_inited = false;
|
m_ftp_inited = false;
|
||||||
m_init_ftp = false;
|
m_init_ftp = false;
|
||||||
@ -245,15 +240,15 @@ void CMenu::init()
|
|||||||
}
|
}
|
||||||
m_allow_random = m_cfg.getBool("GENERAL", "allow_b_on_questionmark", true);
|
m_allow_random = m_cfg.getBool("GENERAL", "allow_b_on_questionmark", true);
|
||||||
m_multisource = m_cfg.getBool("GENERAL", "multisource", false);
|
m_multisource = m_cfg.getBool("GENERAL", "multisource", false);
|
||||||
/* DIOS_MIOS stuff */
|
/* GameCube stuff */
|
||||||
if(m_cfg.getBool(GC_DOMAIN, "always_show_button", true))
|
m_devo_installed = DEVO_Installed(m_dataDir.c_str());
|
||||||
{
|
m_nintendont_installed = Nintendont_Installed();
|
||||||
gprintf("Force enabling DML view\n");
|
m_show_gc = m_cfg.getBool(GC_DOMAIN, "always_show_button", false);
|
||||||
m_show_dml = true;
|
memset(gc_games_dir, 0, 64);
|
||||||
}
|
strncpy(gc_games_dir, m_cfg.getString(GC_DOMAIN, "gc_games_dir", DF_GC_GAMES_DIR).c_str(), 64);
|
||||||
MIOSisDML();
|
if(strncmp(gc_games_dir, "%s:/", 4) != 0)
|
||||||
if(m_show_dml == false)
|
strcpy(gc_games_dir, DF_GC_GAMES_DIR);
|
||||||
m_show_dml = (m_mios_ver > 0);
|
gprintf("GameCube Games Directory: %s\n", gc_games_dir);
|
||||||
/* Emu NAND */
|
/* Emu NAND */
|
||||||
m_cfg.getString(CHANNEL_DOMAIN, "path", "");
|
m_cfg.getString(CHANNEL_DOMAIN, "path", "");
|
||||||
m_cfg.getInt(CHANNEL_DOMAIN, "partition", 1);
|
m_cfg.getInt(CHANNEL_DOMAIN, "partition", 1);
|
||||||
@ -369,8 +364,6 @@ void CMenu::init()
|
|||||||
m_theme.load(fmt("%s.ini", m_themeDataDir.c_str()));
|
m_theme.load(fmt("%s.ini", m_themeDataDir.c_str()));
|
||||||
m_plugin.init(m_pluginsDir);
|
m_plugin.init(m_pluginsDir);
|
||||||
|
|
||||||
m_devo_installed = DEVO_Installed(m_dataDir.c_str());
|
|
||||||
m_nintendont_installed = Nintendont_Installed();
|
|
||||||
const char *defLang = "Default";
|
const char *defLang = "Default";
|
||||||
switch (CONF_GetLanguage())
|
switch (CONF_GetLanguage())
|
||||||
{
|
{
|
||||||
@ -2190,7 +2183,7 @@ bool CMenu::_loadList(void)
|
|||||||
m_cfg.getBool(GC_DOMAIN, "source"))
|
m_cfg.getBool(GC_DOMAIN, "source"))
|
||||||
{
|
{
|
||||||
m_current_view = COVERFLOW_GAMECUBE;
|
m_current_view = COVERFLOW_GAMECUBE;
|
||||||
_loadDmlList();
|
_loadGCList();
|
||||||
if(m_combined_view)
|
if(m_combined_view)
|
||||||
for(vector<dir_discHdr>::iterator tmp_itr = m_gameList.begin(); tmp_itr != m_gameList.end(); tmp_itr++)
|
for(vector<dir_discHdr>::iterator tmp_itr = m_gameList.begin(); tmp_itr != m_gameList.end(); tmp_itr++)
|
||||||
combinedList.push_back(*tmp_itr);
|
combinedList.push_back(*tmp_itr);
|
||||||
@ -2249,14 +2242,14 @@ bool CMenu::_loadHomebrewList()
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CMenu::_loadDmlList()
|
bool CMenu::_loadGCList()
|
||||||
{
|
{
|
||||||
currentPartition = m_cfg.getInt(GC_DOMAIN, "partition", USB1);
|
currentPartition = m_cfg.getInt(GC_DOMAIN, "partition", USB1);
|
||||||
if(!DeviceHandle.IsInserted(currentPartition))
|
if(!DeviceHandle.IsInserted(currentPartition))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
m_gameList.clear();
|
m_gameList.clear();
|
||||||
string gameDir(fmt(GC_GAMES_DIR, DeviceName[currentPartition]));
|
string gameDir(fmt(gc_games_dir, DeviceName[currentPartition]));
|
||||||
string cacheDir(fmt("%s/%s_gamecube.db", m_listCacheDir.c_str(), DeviceName[currentPartition]));
|
string cacheDir(fmt("%s/%s_gamecube.db", m_listCacheDir.c_str(), DeviceName[currentPartition]));
|
||||||
bool updateCache = m_cfg.getBool(GC_DOMAIN, "update_cache");
|
bool updateCache = m_cfg.getBool(GC_DOMAIN, "update_cache");
|
||||||
m_gameList.CreateList(COVERFLOW_GAMECUBE, currentPartition, gameDir,
|
m_gameList.CreateList(COVERFLOW_GAMECUBE, currentPartition, gameDir,
|
||||||
@ -2567,69 +2560,6 @@ void CMenu::UpdateCache(u32 view)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void CMenu::MIOSisDML()
|
|
||||||
{
|
|
||||||
/*
|
|
||||||
0=mios
|
|
||||||
1=dm
|
|
||||||
2=qf
|
|
||||||
*/
|
|
||||||
m_mios_ver = 0;
|
|
||||||
m_sd_dm = false;
|
|
||||||
m_new_dml = false;
|
|
||||||
m_new_dm_cfg = false;
|
|
||||||
|
|
||||||
u32 size = 0;
|
|
||||||
char ISFS_Filename[ISFS_MAXPATH] ATTRIBUTE_ALIGN(32);
|
|
||||||
strcpy(ISFS_Filename, "/title/00000001/00000101/content/0000000c.app");
|
|
||||||
u8 *appfile = ISFS_GetFile(ISFS_Filename, &size, -1);
|
|
||||||
if(appfile)
|
|
||||||
{
|
|
||||||
for(u32 i = 0; i < size; ++i)
|
|
||||||
{
|
|
||||||
/* check for some odd looking elf signs */
|
|
||||||
if(m_mios_ver == 0 && *(vu32*)(appfile+i) == 0x7F454C46 && *(vu32*)(appfile+i+4) != 0x01020161)
|
|
||||||
{
|
|
||||||
m_mios_ver = 1;
|
|
||||||
m_new_dml = true; /* assume cfg dm */
|
|
||||||
}
|
|
||||||
/* seaching for an old debug print in boot.bin only dml revs */
|
|
||||||
if(*(vu32*)(appfile+i) == 0x5573696E && *(vu32*)(appfile+i+4) == 0x6720656E)
|
|
||||||
{
|
|
||||||
m_mios_ver = 1;
|
|
||||||
m_new_dml = false; /* boot.bin dm */
|
|
||||||
}
|
|
||||||
/* pic checks */
|
|
||||||
if(*(vu32*)(appfile+i) == 0xF282F280 && *(vu32*)(appfile+i+4) == 0xF281F27F) /* pic at 0x35000 */
|
|
||||||
{
|
|
||||||
m_mios_ver = 1;
|
|
||||||
m_new_dm_cfg = true; /* newer dm cfg */
|
|
||||||
}
|
|
||||||
if(*(vu32*)(appfile+i) == 0x5A9B5A77 && *(vu32*)(appfile+i+4) == 0x5C9A5B78) /* pic at 0x35000 */
|
|
||||||
{
|
|
||||||
m_mios_ver = 1;
|
|
||||||
m_new_dm_cfg = true; /* current dm cfg */
|
|
||||||
}
|
|
||||||
if(*(vu32*)(appfile+i) == 0x68846791 && *(vu32*)(appfile+i+4) == 0x63836390) /* pic at 0x6b000 */
|
|
||||||
{
|
|
||||||
m_mios_ver = 1;
|
|
||||||
m_new_dm_cfg = false; /* older dm cfg */
|
|
||||||
}
|
|
||||||
if(*(vu32*)(appfile+i) == 0x1D981F78 && *(vu32*)(appfile+i+4) == 0x1E991E79) /* pic at 0x95000 */
|
|
||||||
{
|
|
||||||
m_mios_ver = 2;
|
|
||||||
m_new_dm_cfg = true; /* qf */
|
|
||||||
}
|
|
||||||
/* Lite or Quad string for SD versions */
|
|
||||||
if(*(vu32*)(appfile+i) == 0x4C697465 || *(vu32*)(appfile+i) == 0x51756164)
|
|
||||||
m_sd_dm = true;
|
|
||||||
}
|
|
||||||
free(appfile);
|
|
||||||
}
|
|
||||||
gprintf("m_mios_ver = %u; m_sd_dm = %d; m_new_dml = %d; m_new_dm_cfg = %d\n",
|
|
||||||
m_mios_ver, m_sd_dm, m_new_dml, m_new_dm_cfg);
|
|
||||||
}
|
|
||||||
|
|
||||||
void CMenu::RemoveCover(const char *id)
|
void CMenu::RemoveCover(const char *id)
|
||||||
{
|
{
|
||||||
const char *CoverPath = NULL;
|
const char *CoverPath = NULL;
|
||||||
|
@ -187,22 +187,18 @@ private:
|
|||||||
s16 m_mainBtnPrev;
|
s16 m_mainBtnPrev;
|
||||||
s16 m_mainBtnQuit;
|
s16 m_mainBtnQuit;
|
||||||
s16 m_mainBtnDVD;
|
s16 m_mainBtnDVD;
|
||||||
s16 m_mainBtnDML;
|
s16 m_mainBtnGamecube;
|
||||||
s16 m_mainBtnEmu;
|
s16 m_mainBtnPlugin;
|
||||||
s16 m_mainBtnUsb;
|
s16 m_mainBtnWii;
|
||||||
s16 m_mainBtnChannel;
|
s16 m_mainBtnChannel;
|
||||||
s16 m_mainBtnHomebrew;
|
s16 m_mainBtnHomebrew;
|
||||||
s16 m_mainBtnInit;
|
s16 m_mainBtnInit;
|
||||||
s16 m_mainBtnInit2;
|
s16 m_mainBtnInit2;
|
||||||
s16 m_mainLblInit;
|
s16 m_mainLblInit;
|
||||||
s16 m_mainLblUser[6];
|
s16 m_mainLblUser[6];
|
||||||
u8 m_mios_ver;
|
bool m_show_gc;
|
||||||
bool m_show_dml;
|
|
||||||
bool m_sd_dm;
|
|
||||||
bool m_devo_installed;
|
bool m_devo_installed;
|
||||||
bool m_nintendont_installed;
|
bool m_nintendont_installed;
|
||||||
bool m_new_dml;
|
|
||||||
bool m_new_dm_cfg;
|
|
||||||
bool m_GameTDBLoaded;
|
bool m_GameTDBLoaded;
|
||||||
//Main Config menus
|
//Main Config menus
|
||||||
s16 m_configLblPage;
|
s16 m_configLblPage;
|
||||||
@ -242,18 +238,18 @@ private:
|
|||||||
s16 m_config3BtnVideoP;
|
s16 m_config3BtnVideoP;
|
||||||
s16 m_config3BtnVideoM;
|
s16 m_config3BtnVideoM;
|
||||||
|
|
||||||
s16 m_config3LblDMLGameLanguage;
|
s16 m_config3LblGCGameLanguage;
|
||||||
s16 m_config3LblDMLLanguage;
|
s16 m_config3LblGCLanguage;
|
||||||
s16 m_config3BtnDMLLanguageP;
|
s16 m_config3BtnGCLanguageP;
|
||||||
s16 m_config3BtnDMLLanguageM;
|
s16 m_config3BtnGCLanguageM;
|
||||||
s16 m_config3LblDMLGameVideo;
|
s16 m_config3LblGCGameVideo;
|
||||||
s16 m_config3LblDMLVideo;
|
s16 m_config3LblGCVideo;
|
||||||
s16 m_config3BtnDMLVideoP;
|
s16 m_config3BtnGCVideoP;
|
||||||
s16 m_config3BtnDMLVideoM;
|
s16 m_config3BtnGCVideoM;
|
||||||
s16 m_config3LblDMLGameLoader;
|
s16 m_config3LblGCGameLoader;
|
||||||
s16 m_config3LblDMLLoader;
|
s16 m_config3LblGCLoader;
|
||||||
s16 m_config3BtnDMLLoaderP;
|
s16 m_config3BtnGCLoaderP;
|
||||||
s16 m_config3BtnDMLLoaderM;
|
s16 m_config3BtnGCLoaderM;
|
||||||
|
|
||||||
s16 m_config3LblOcarina;
|
s16 m_config3LblOcarina;
|
||||||
s16 m_config3BtnOcarina;
|
s16 m_config3BtnOcarina;
|
||||||
@ -464,9 +460,6 @@ private:
|
|||||||
s16 m_gameSettingsLblLED;
|
s16 m_gameSettingsLblLED;
|
||||||
s16 m_gameSettingsBtnLED;
|
s16 m_gameSettingsBtnLED;
|
||||||
|
|
||||||
s16 m_gameSettingsLblScreenshot;
|
|
||||||
s16 m_gameSettingsBtnScreenshot;
|
|
||||||
|
|
||||||
s16 m_gameSettingsLblAspectRatio;
|
s16 m_gameSettingsLblAspectRatio;
|
||||||
s16 m_gameSettingsLblAspectRatioVal;
|
s16 m_gameSettingsLblAspectRatioVal;
|
||||||
s16 m_gameSettingsBtnAspectRatioP;
|
s16 m_gameSettingsBtnAspectRatioP;
|
||||||
@ -477,11 +470,6 @@ private:
|
|||||||
s16 m_gameSettingsBtnEmuMemCard_P;
|
s16 m_gameSettingsBtnEmuMemCard_P;
|
||||||
s16 m_gameSettingsBtnEmuMemCard_M;
|
s16 m_gameSettingsBtnEmuMemCard_M;
|
||||||
|
|
||||||
s16 m_gameSettingsLblNoDVD;
|
|
||||||
s16 m_gameSettingsLblNoDVD_Val;
|
|
||||||
s16 m_gameSettingsBtnNoDVD_P;
|
|
||||||
s16 m_gameSettingsBtnNoDVD_M;
|
|
||||||
|
|
||||||
s16 m_gameSettingsLblDevoMemcardEmu;
|
s16 m_gameSettingsLblDevoMemcardEmu;
|
||||||
s16 m_gameSettingsBtnDevoMemcardEmu;
|
s16 m_gameSettingsBtnDevoMemcardEmu;
|
||||||
|
|
||||||
@ -864,7 +852,7 @@ private:
|
|||||||
//
|
//
|
||||||
bool _loadList(void);
|
bool _loadList(void);
|
||||||
bool _loadGameList(void);
|
bool _loadGameList(void);
|
||||||
bool _loadDmlList(void);
|
bool _loadGCList(void);
|
||||||
bool _loadChannelList(void);
|
bool _loadChannelList(void);
|
||||||
bool _loadEmuList(void);
|
bool _loadEmuList(void);
|
||||||
bool _loadHomebrewList(void);
|
bool _loadHomebrewList(void);
|
||||||
@ -1059,7 +1047,7 @@ private:
|
|||||||
void _CoverBanner(void);
|
void _CoverBanner(void);
|
||||||
void _Explorer(void);
|
void _Explorer(void);
|
||||||
const char *_FolderExplorer(const char *startPath);
|
const char *_FolderExplorer(const char *startPath);
|
||||||
void _Wad(const char *wad_path = NULL, bool autoInstall = false);
|
void _Wad(const char *wad_path = NULL);
|
||||||
void _CheatSettings();
|
void _CheatSettings();
|
||||||
bool _Source();
|
bool _Source();
|
||||||
void _CfgSrc();
|
void _CfgSrc();
|
||||||
@ -1108,7 +1096,6 @@ private:
|
|||||||
const char *_domainFromView(void);
|
const char *_domainFromView(void);
|
||||||
const char *_cfDomain(bool selected = false);
|
const char *_cfDomain(bool selected = false);
|
||||||
void UpdateCache(u32 view = COVERFLOW_MAX);
|
void UpdateCache(u32 view = COVERFLOW_MAX);
|
||||||
void MIOSisDML();
|
|
||||||
void RemoveCover(const char *id);
|
void RemoveCover(const char *id);
|
||||||
SFont _font(const char *domain, const char *key, u32 fontSize, u32 lineSpacing, u32 weight, u32 index, const char *genKey);
|
SFont _font(const char *domain, const char *key, u32 fontSize, u32 lineSpacing, u32 weight, u32 index, const char *genKey);
|
||||||
TexData _texture(const char *domain, const char *key, TexData &def, bool freeDef = true);
|
TexData _texture(const char *domain, const char *key, TexData &def, bool freeDef = true);
|
||||||
@ -1213,11 +1200,9 @@ private:
|
|||||||
static const SOption _SaveEmu[5];
|
static const SOption _SaveEmu[5];
|
||||||
static const SOption _GlobalSaveEmu[4];
|
static const SOption _GlobalSaveEmu[4];
|
||||||
static const SOption _AspectRatio[3];
|
static const SOption _AspectRatio[3];
|
||||||
static const SOption _NMM[4];
|
|
||||||
static const SOption _NinEmuCard[5];
|
static const SOption _NinEmuCard[5];
|
||||||
static const SOption _NoDVD[3];
|
static const SOption _GlobalGCLoaders[2];
|
||||||
static const SOption _GlobalGCLoaders[3];
|
static const SOption _GCLoader[3];
|
||||||
static const SOption _GCLoader[4];
|
|
||||||
static const SOption _vidModePatch[4];
|
static const SOption _vidModePatch[4];
|
||||||
static const SOption _debugger[3];
|
static const SOption _debugger[3];
|
||||||
static const SOption _hooktype[8];
|
static const SOption _hooktype[8];
|
||||||
|
@ -25,19 +25,19 @@ void CMenu::_hideConfig3(bool instant)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_btnMgr.hide(m_config3LblDMLGameLanguage, instant);
|
m_btnMgr.hide(m_config3LblGCGameLanguage, instant);
|
||||||
m_btnMgr.hide(m_config3LblDMLLanguage, instant);
|
m_btnMgr.hide(m_config3LblGCLanguage, instant);
|
||||||
m_btnMgr.hide(m_config3BtnDMLLanguageP, instant);
|
m_btnMgr.hide(m_config3BtnGCLanguageP, instant);
|
||||||
m_btnMgr.hide(m_config3BtnDMLLanguageM, instant);
|
m_btnMgr.hide(m_config3BtnGCLanguageM, instant);
|
||||||
m_btnMgr.hide(m_config3LblDMLGameVideo, instant);
|
m_btnMgr.hide(m_config3LblGCGameVideo, instant);
|
||||||
m_btnMgr.hide(m_config3LblDMLVideo, instant);
|
m_btnMgr.hide(m_config3LblGCVideo, instant);
|
||||||
m_btnMgr.hide(m_config3BtnDMLVideoP, instant);
|
m_btnMgr.hide(m_config3BtnGCVideoP, instant);
|
||||||
m_btnMgr.hide(m_config3BtnDMLVideoM, instant);
|
m_btnMgr.hide(m_config3BtnGCVideoM, instant);
|
||||||
}
|
}
|
||||||
m_btnMgr.hide(m_config3LblDMLGameLoader, instant);
|
m_btnMgr.hide(m_config3LblGCGameLoader, instant);
|
||||||
m_btnMgr.hide(m_config3LblDMLLoader, instant);
|
m_btnMgr.hide(m_config3LblGCLoader, instant);
|
||||||
m_btnMgr.hide(m_config3BtnDMLLoaderP, instant);
|
m_btnMgr.hide(m_config3BtnGCLoaderP, instant);
|
||||||
m_btnMgr.hide(m_config3BtnDMLLoaderM, instant);
|
m_btnMgr.hide(m_config3BtnGCLoaderM, instant);
|
||||||
m_btnMgr.hide(m_config3LblOcarina, instant);
|
m_btnMgr.hide(m_config3LblOcarina, instant);
|
||||||
m_btnMgr.hide(m_config3BtnOcarina, instant);
|
m_btnMgr.hide(m_config3BtnOcarina, instant);
|
||||||
for(u8 i = 0; i < ARRAY_SIZE(m_config3LblUser); ++i)
|
for(u8 i = 0; i < ARRAY_SIZE(m_config3LblUser); ++i)
|
||||||
@ -62,19 +62,19 @@ void CMenu::_showConfig3(void)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_btnMgr.show(m_config3LblDMLGameLanguage);
|
m_btnMgr.show(m_config3LblGCGameLanguage);
|
||||||
m_btnMgr.show(m_config3LblDMLLanguage);
|
m_btnMgr.show(m_config3LblGCLanguage);
|
||||||
m_btnMgr.show(m_config3BtnDMLLanguageP);
|
m_btnMgr.show(m_config3BtnGCLanguageP);
|
||||||
m_btnMgr.show(m_config3BtnDMLLanguageM);
|
m_btnMgr.show(m_config3BtnGCLanguageM);
|
||||||
m_btnMgr.show(m_config3LblDMLGameVideo);
|
m_btnMgr.show(m_config3LblGCGameVideo);
|
||||||
m_btnMgr.show(m_config3LblDMLVideo);
|
m_btnMgr.show(m_config3LblGCVideo);
|
||||||
m_btnMgr.show(m_config3BtnDMLVideoP);
|
m_btnMgr.show(m_config3BtnGCVideoP);
|
||||||
m_btnMgr.show(m_config3BtnDMLVideoM);
|
m_btnMgr.show(m_config3BtnGCVideoM);
|
||||||
}
|
}
|
||||||
m_btnMgr.show(m_config3LblDMLGameLoader);
|
m_btnMgr.show(m_config3LblGCGameLoader);
|
||||||
m_btnMgr.show(m_config3LblDMLLoader);
|
m_btnMgr.show(m_config3LblGCLoader);
|
||||||
m_btnMgr.show(m_config3BtnDMLLoaderP);
|
m_btnMgr.show(m_config3BtnGCLoaderP);
|
||||||
m_btnMgr.show(m_config3BtnDMLLoaderM);
|
m_btnMgr.show(m_config3BtnGCLoaderM);
|
||||||
m_btnMgr.show(m_config3LblOcarina);
|
m_btnMgr.show(m_config3LblOcarina);
|
||||||
m_btnMgr.show(m_config3BtnOcarina);
|
m_btnMgr.show(m_config3BtnOcarina);
|
||||||
|
|
||||||
@ -95,13 +95,13 @@ void CMenu::_showConfig3(void)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
i = min(max(0, m_cfg.getInt(GC_DOMAIN, "video_mode", 0)), (int)ARRAY_SIZE(CMenu::_GlobalGCvideoModes) - 1);
|
i = min(max(0, m_cfg.getInt(GC_DOMAIN, "video_mode", 0)), (int)ARRAY_SIZE(CMenu::_GlobalGCvideoModes) - 1);
|
||||||
m_btnMgr.setText(m_config3LblDMLVideo, _t(CMenu::_GlobalGCvideoModes[i].id, CMenu::_GlobalGCvideoModes[i].text));
|
m_btnMgr.setText(m_config3LblGCVideo, _t(CMenu::_GlobalGCvideoModes[i].id, CMenu::_GlobalGCvideoModes[i].text));
|
||||||
|
|
||||||
i = min(max(0, m_cfg.getInt(GC_DOMAIN, "game_language", 0)), (int)ARRAY_SIZE(CMenu::_GlobalGClanguages) - 1);
|
i = min(max(0, m_cfg.getInt(GC_DOMAIN, "game_language", 0)), (int)ARRAY_SIZE(CMenu::_GlobalGClanguages) - 1);
|
||||||
m_btnMgr.setText(m_config3LblDMLLanguage, _t(CMenu::_GlobalGClanguages[i].id, CMenu::_GlobalGClanguages[i].text));
|
m_btnMgr.setText(m_config3LblGCLanguage, _t(CMenu::_GlobalGClanguages[i].id, CMenu::_GlobalGClanguages[i].text));
|
||||||
}
|
}
|
||||||
i = min(max(0, m_cfg.getInt(GC_DOMAIN, "default_loader", 2)), (int)ARRAY_SIZE(CMenu::_GlobalGCLoaders) - 1);
|
i = min(max(0, m_cfg.getInt(GC_DOMAIN, "default_loader", 2)), (int)ARRAY_SIZE(CMenu::_GlobalGCLoaders) - 1);
|
||||||
m_btnMgr.setText(m_config3LblDMLLoader, _t(CMenu::_GlobalGCLoaders[i].id, CMenu::_GlobalGCLoaders[i].text));
|
m_btnMgr.setText(m_config3LblGCLoader, _t(CMenu::_GlobalGCLoaders[i].id, CMenu::_GlobalGCLoaders[i].text));
|
||||||
|
|
||||||
m_btnMgr.setText(m_config3BtnOcarina, m_cfg.getBool(_domainFromView(), "cheat", false) ? _t("on", L"On") : _t("off", L"Off"));
|
m_btnMgr.setText(m_config3BtnOcarina, m_cfg.getBool(_domainFromView(), "cheat", false) ? _t("on", L"On") : _t("off", L"Off"));
|
||||||
}
|
}
|
||||||
@ -130,22 +130,22 @@ int CMenu::_config3(void)
|
|||||||
m_cfg.setInt("GENERAL", "video_mode", (int)loopNum((u32)m_cfg.getInt("GENERAL", "video_mode", 0) + direction, ARRAY_SIZE(CMenu::_GlobalVideoModes)));
|
m_cfg.setInt("GENERAL", "video_mode", (int)loopNum((u32)m_cfg.getInt("GENERAL", "video_mode", 0) + direction, ARRAY_SIZE(CMenu::_GlobalVideoModes)));
|
||||||
_showConfig3();
|
_showConfig3();
|
||||||
}
|
}
|
||||||
else if (m_btnMgr.selected(m_config3BtnDMLLanguageP) || m_btnMgr.selected(m_config3BtnDMLLanguageM))
|
else if (m_btnMgr.selected(m_config3BtnGCLanguageP) || m_btnMgr.selected(m_config3BtnGCLanguageM))
|
||||||
{
|
{
|
||||||
s8 direction = m_btnMgr.selected(m_config3BtnDMLLanguageP) ? 1 : -1;
|
s8 direction = m_btnMgr.selected(m_config3BtnGCLanguageP) ? 1 : -1;
|
||||||
m_cfg.setInt(GC_DOMAIN, "game_language", (int)loopNum((u32)m_cfg.getInt(GC_DOMAIN, "game_language", 0) + direction, ARRAY_SIZE(CMenu::_GlobalGClanguages)));
|
m_cfg.setInt(GC_DOMAIN, "game_language", (int)loopNum((u32)m_cfg.getInt(GC_DOMAIN, "game_language", 0) + direction, ARRAY_SIZE(CMenu::_GlobalGClanguages)));
|
||||||
_showConfig3();
|
_showConfig3();
|
||||||
}
|
}
|
||||||
else if (m_btnMgr.selected(m_config3BtnDMLVideoP) || m_btnMgr.selected(m_config3BtnDMLVideoM))
|
else if (m_btnMgr.selected(m_config3BtnGCVideoP) || m_btnMgr.selected(m_config3BtnGCVideoM))
|
||||||
{
|
{
|
||||||
s8 direction = m_btnMgr.selected(m_config3BtnDMLVideoP) ? 1 : -1;
|
s8 direction = m_btnMgr.selected(m_config3BtnGCVideoP) ? 1 : -1;
|
||||||
m_cfg.setInt(GC_DOMAIN, "video_mode", (int)loopNum((u32)m_cfg.getInt(GC_DOMAIN, "video_mode", 0) + direction, ARRAY_SIZE(CMenu::_GlobalGCvideoModes)));
|
m_cfg.setInt(GC_DOMAIN, "video_mode", (int)loopNum((u32)m_cfg.getInt(GC_DOMAIN, "video_mode", 0) + direction, ARRAY_SIZE(CMenu::_GlobalGCvideoModes)));
|
||||||
_showConfig3();
|
_showConfig3();
|
||||||
}
|
}
|
||||||
else if (m_btnMgr.selected(m_config3BtnDMLLoaderP) || m_btnMgr.selected(m_config3BtnDMLLoaderM))
|
else if (m_btnMgr.selected(m_config3BtnGCLoaderP) || m_btnMgr.selected(m_config3BtnGCLoaderM))
|
||||||
{
|
{
|
||||||
s8 direction = m_btnMgr.selected(m_config3BtnDMLLoaderP) ? 1 : -1;
|
s8 direction = m_btnMgr.selected(m_config3BtnGCLoaderP) ? 1 : -1;
|
||||||
m_cfg.setInt(GC_DOMAIN, "default_loader", (int)loopNum((u32)m_cfg.getInt(GC_DOMAIN, "default_loader", 2) + direction, ARRAY_SIZE(CMenu::_GlobalGCLoaders)));
|
m_cfg.setInt(GC_DOMAIN, "default_loader", (int)loopNum((u32)m_cfg.getInt(GC_DOMAIN, "default_loader", 1) + direction, ARRAY_SIZE(CMenu::_GlobalGCLoaders)));
|
||||||
_showConfig3();
|
_showConfig3();
|
||||||
}
|
}
|
||||||
else if (m_btnMgr.selected(m_config3BtnOcarina))
|
else if (m_btnMgr.selected(m_config3BtnOcarina))
|
||||||
@ -172,18 +172,18 @@ void CMenu::_initConfig3Menu()
|
|||||||
m_config3BtnLanguageM = _addPicButton("CONFIG3/GAME_LANG_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 420, 190, 48, 48);
|
m_config3BtnLanguageM = _addPicButton("CONFIG3/GAME_LANG_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 420, 190, 48, 48);
|
||||||
m_config3BtnLanguageP = _addPicButton("CONFIG3/GAME_LANG_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 572, 190, 48, 48);
|
m_config3BtnLanguageP = _addPicButton("CONFIG3/GAME_LANG_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 572, 190, 48, 48);
|
||||||
|
|
||||||
m_config3LblDMLGameVideo = _addLabel("CONFIG3/DML_VIDEO", theme.lblFont, L"", 20, 125, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
m_config3LblGCGameVideo = _addLabel("CONFIG3/DML_VIDEO", theme.lblFont, L"", 20, 125, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||||
m_config3LblDMLVideo = _addLabel("CONFIG3/DML_VIDEO_BTN", theme.btnFont, L"", 468, 130, 104, 48, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
m_config3LblGCVideo = _addLabel("CONFIG3/DML_VIDEO_BTN", theme.btnFont, L"", 468, 130, 104, 48, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
||||||
m_config3BtnDMLVideoM = _addPicButton("CONFIG3/DML_VIDEO_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 420, 130, 48, 48);
|
m_config3BtnGCVideoM = _addPicButton("CONFIG3/DML_VIDEO_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 420, 130, 48, 48);
|
||||||
m_config3BtnDMLVideoP = _addPicButton("CONFIG3/DML_VIDEO_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 572, 130, 48, 48);
|
m_config3BtnGCVideoP = _addPicButton("CONFIG3/DML_VIDEO_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 572, 130, 48, 48);
|
||||||
m_config3LblDMLGameLanguage = _addLabel("CONFIG3/DML_LANG", theme.lblFont, L"", 20, 185, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
m_config3LblGCGameLanguage = _addLabel("CONFIG3/DML_LANG", theme.lblFont, L"", 20, 185, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||||
m_config3LblDMLLanguage = _addLabel("CONFIG3/DML_LANG_BTN", theme.btnFont, L"", 468, 190, 104, 48, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
m_config3LblGCLanguage = _addLabel("CONFIG3/DML_LANG_BTN", theme.btnFont, L"", 468, 190, 104, 48, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
||||||
m_config3BtnDMLLanguageM = _addPicButton("CONFIG3/DML_LANG_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 420, 190, 48, 48);
|
m_config3BtnGCLanguageM = _addPicButton("CONFIG3/DML_LANG_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 420, 190, 48, 48);
|
||||||
m_config3BtnDMLLanguageP = _addPicButton("CONFIG3/DML_LANG_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 572, 190, 48, 48);
|
m_config3BtnGCLanguageP = _addPicButton("CONFIG3/DML_LANG_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 572, 190, 48, 48);
|
||||||
m_config3LblDMLGameLoader = _addLabel("CONFIG3/GC_LOADER", theme.lblFont, L"", 20, 245, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
m_config3LblGCGameLoader = _addLabel("CONFIG3/GC_LOADER", theme.lblFont, L"", 20, 245, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||||
m_config3LblDMLLoader = _addLabel("CONFIG3/GC_LOADER_BTN", theme.btnFont, L"", 468, 250, 104, 48, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
m_config3LblGCLoader = _addLabel("CONFIG3/GC_LOADER_BTN", theme.btnFont, L"", 468, 250, 104, 48, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
||||||
m_config3BtnDMLLoaderM = _addPicButton("CONFIG3/GC_LOADER_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 420, 250, 48, 48);
|
m_config3BtnGCLoaderM = _addPicButton("CONFIG3/GC_LOADER_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 420, 250, 48, 48);
|
||||||
m_config3BtnDMLLoaderP = _addPicButton("CONFIG3/GC_LOADER_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 572, 250, 48, 48);
|
m_config3BtnGCLoaderP = _addPicButton("CONFIG3/GC_LOADER_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 572, 250, 48, 48);
|
||||||
|
|
||||||
m_config3LblOcarina = _addLabel("CONFIG3/OCARINA", theme.lblFont, L"", 20, 305, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
m_config3LblOcarina = _addLabel("CONFIG3/OCARINA", theme.lblFont, L"", 20, 305, 290, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||||
m_config3BtnOcarina = _addButton("CONFIG3/OCARINA_BTN", theme.btnFont, L"", 420, 310, 200, 48, theme.btnFontColor);
|
m_config3BtnOcarina = _addButton("CONFIG3/OCARINA_BTN", theme.btnFont, L"", 420, 310, 200, 48, theme.btnFontColor);
|
||||||
@ -197,18 +197,18 @@ void CMenu::_initConfig3Menu()
|
|||||||
_setHideAnim(m_config3BtnLanguageM, "CONFIG3/GAME_LANG_MINUS", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_config3BtnLanguageM, "CONFIG3/GAME_LANG_MINUS", -50, 0, 1.f, 0.f);
|
||||||
_setHideAnim(m_config3BtnLanguageP, "CONFIG3/GAME_LANG_PLUS", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_config3BtnLanguageP, "CONFIG3/GAME_LANG_PLUS", -50, 0, 1.f, 0.f);
|
||||||
|
|
||||||
_setHideAnim(m_config3LblDMLGameVideo, "CONFIG3/DML_VIDEO", 50, 0, -2.f, 0.f);
|
_setHideAnim(m_config3LblGCGameVideo, "CONFIG3/DML_VIDEO", 50, 0, -2.f, 0.f);
|
||||||
_setHideAnim(m_config3LblDMLVideo, "CONFIG3/DML_VIDEO_BTN", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_config3LblGCVideo, "CONFIG3/DML_VIDEO_BTN", -50, 0, 1.f, 0.f);
|
||||||
_setHideAnim(m_config3BtnDMLVideoM, "CONFIG3/DML_VIDEO_MINUS", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_config3BtnGCVideoM, "CONFIG3/DML_VIDEO_MINUS", -50, 0, 1.f, 0.f);
|
||||||
_setHideAnim(m_config3BtnDMLVideoP, "CONFIG3/DML_VIDEO_PLUS", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_config3BtnGCVideoP, "CONFIG3/DML_VIDEO_PLUS", -50, 0, 1.f, 0.f);
|
||||||
_setHideAnim(m_config3LblDMLGameLanguage, "CONFIG3/DML_LANG", 50, 0, -2.f, 0.f);
|
_setHideAnim(m_config3LblGCGameLanguage, "CONFIG3/DML_LANG", 50, 0, -2.f, 0.f);
|
||||||
_setHideAnim(m_config3LblDMLLanguage, "CONFIG3/DML_LANG_BTN", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_config3LblGCLanguage, "CONFIG3/DML_LANG_BTN", -50, 0, 1.f, 0.f);
|
||||||
_setHideAnim(m_config3BtnDMLLanguageM, "CONFIG3/DML_LANG_MINUS", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_config3BtnGCLanguageM, "CONFIG3/DML_LANG_MINUS", -50, 0, 1.f, 0.f);
|
||||||
_setHideAnim(m_config3BtnDMLLanguageP, "CONFIG3/DML_LANG_PLUS", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_config3BtnGCLanguageP, "CONFIG3/DML_LANG_PLUS", -50, 0, 1.f, 0.f);
|
||||||
_setHideAnim(m_config3LblDMLGameLoader, "CONFIG3/GC_LOADER", 50, 0, -2.f, 0.f);
|
_setHideAnim(m_config3LblGCGameLoader, "CONFIG3/GC_LOADER", 50, 0, -2.f, 0.f);
|
||||||
_setHideAnim(m_config3LblDMLLoader, "CONFIG3/GC_LOADER_BTN", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_config3LblGCLoader, "CONFIG3/GC_LOADER_BTN", -50, 0, 1.f, 0.f);
|
||||||
_setHideAnim(m_config3BtnDMLLoaderM, "CONFIG3/GC_LOADER_MINUS", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_config3BtnGCLoaderM, "CONFIG3/GC_LOADER_MINUS", -50, 0, 1.f, 0.f);
|
||||||
_setHideAnim(m_config3BtnDMLLoaderP, "CONFIG3/GC_LOADER_PLUS", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_config3BtnGCLoaderP, "CONFIG3/GC_LOADER_PLUS", -50, 0, 1.f, 0.f);
|
||||||
|
|
||||||
_setHideAnim(m_config3LblOcarina, "CONFIG3/OCARINA", 50, 0, -2.f, 0.f);
|
_setHideAnim(m_config3LblOcarina, "CONFIG3/OCARINA", 50, 0, -2.f, 0.f);
|
||||||
_setHideAnim(m_config3BtnOcarina, "CONFIG3/OCARINA_BTN", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_config3BtnOcarina, "CONFIG3/OCARINA_BTN", -50, 0, 1.f, 0.f);
|
||||||
@ -220,9 +220,9 @@ void CMenu::_textConfig3(void)
|
|||||||
{
|
{
|
||||||
m_btnMgr.setText(m_config3LblGameVideo, _t("cfgb3", L"Default video mode"));
|
m_btnMgr.setText(m_config3LblGameVideo, _t("cfgb3", L"Default video mode"));
|
||||||
m_btnMgr.setText(m_config3LblGameLanguage, _t("cfgb4", L"Default game language"));
|
m_btnMgr.setText(m_config3LblGameLanguage, _t("cfgb4", L"Default game language"));
|
||||||
m_btnMgr.setText(m_config3LblDMLGameVideo, _t("cfgb5", L"Default GC video mode"));
|
m_btnMgr.setText(m_config3LblGCGameVideo, _t("cfgb5", L"Default GC video mode"));
|
||||||
m_btnMgr.setText(m_config3LblDMLGameLanguage, _t("cfgb6", L"Default GC game language"));
|
m_btnMgr.setText(m_config3LblGCGameLanguage, _t("cfgb6", L"Default GC game language"));
|
||||||
m_btnMgr.setText(m_config3LblDMLGameLoader, _t("cfgb2", L"Default GC game loader"));
|
m_btnMgr.setText(m_config3LblGCGameLoader, _t("cfgb2", L"Default GC game loader"));
|
||||||
m_btnMgr.setText(m_config3LblOcarina, _t("cfgb1", L"Ocarina"));
|
m_btnMgr.setText(m_config3LblOcarina, _t("cfgb1", L"Ocarina"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -84,10 +84,6 @@ void CMenu::_hideGameSettings(bool instant)
|
|||||||
m_btnMgr.hide(m_gameSettingsBtnEmuMemCard_M, instant);
|
m_btnMgr.hide(m_gameSettingsBtnEmuMemCard_M, instant);
|
||||||
m_btnMgr.hide(m_gameSettingsLblDevoMemcardEmu, instant);
|
m_btnMgr.hide(m_gameSettingsLblDevoMemcardEmu, instant);
|
||||||
m_btnMgr.hide(m_gameSettingsBtnDevoMemcardEmu, instant);
|
m_btnMgr.hide(m_gameSettingsBtnDevoMemcardEmu, instant);
|
||||||
m_btnMgr.hide(m_gameSettingsLblNoDVD, instant);
|
|
||||||
m_btnMgr.hide(m_gameSettingsLblNoDVD_Val, instant);
|
|
||||||
m_btnMgr.hide(m_gameSettingsBtnNoDVD_P, instant);
|
|
||||||
m_btnMgr.hide(m_gameSettingsBtnNoDVD_M, instant);
|
|
||||||
m_btnMgr.hide(m_gameSettingsLblWidescreen, instant);
|
m_btnMgr.hide(m_gameSettingsLblWidescreen, instant);
|
||||||
m_btnMgr.hide(m_gameSettingsBtnWidescreen, instant);
|
m_btnMgr.hide(m_gameSettingsBtnWidescreen, instant);
|
||||||
m_btnMgr.hide(m_gameSettingsLblGCLoader, instant);
|
m_btnMgr.hide(m_gameSettingsLblGCLoader, instant);
|
||||||
@ -100,8 +96,6 @@ void CMenu::_hideGameSettings(bool instant)
|
|||||||
m_btnMgr.hide(m_gameSettingsBtnNATIVE_CTL, instant);
|
m_btnMgr.hide(m_gameSettingsBtnNATIVE_CTL, instant);
|
||||||
m_btnMgr.hide(m_gameSettingsLblDeflicker, instant);
|
m_btnMgr.hide(m_gameSettingsLblDeflicker, instant);
|
||||||
m_btnMgr.hide(m_gameSettingsBtnDeflicker, instant);
|
m_btnMgr.hide(m_gameSettingsBtnDeflicker, instant);
|
||||||
m_btnMgr.hide(m_gameSettingsLblScreenshot, instant);
|
|
||||||
m_btnMgr.hide(m_gameSettingsBtnScreenshot, instant);
|
|
||||||
m_btnMgr.hide(m_gameSettingsLblCustom, instant);
|
m_btnMgr.hide(m_gameSettingsLblCustom, instant);
|
||||||
m_btnMgr.hide(m_gameSettingsBtnCustom, instant);
|
m_btnMgr.hide(m_gameSettingsBtnCustom, instant);
|
||||||
m_btnMgr.hide(m_gameSettingsLblLaunchNK, instant);
|
m_btnMgr.hide(m_gameSettingsLblLaunchNK, instant);
|
||||||
@ -166,9 +160,6 @@ void CMenu::_hideGameSettingsPg(void)
|
|||||||
m_btnMgr.hide(m_gameSettingsLblDeflicker);
|
m_btnMgr.hide(m_gameSettingsLblDeflicker);
|
||||||
m_btnMgr.hide(m_gameSettingsBtnDeflicker);
|
m_btnMgr.hide(m_gameSettingsBtnDeflicker);
|
||||||
|
|
||||||
m_btnMgr.hide(m_gameSettingsLblScreenshot);
|
|
||||||
m_btnMgr.hide(m_gameSettingsBtnScreenshot);
|
|
||||||
|
|
||||||
m_btnMgr.hide(m_gameSettingsLblOcarina);
|
m_btnMgr.hide(m_gameSettingsLblOcarina);
|
||||||
m_btnMgr.hide(m_gameSettingsBtnOcarina);
|
m_btnMgr.hide(m_gameSettingsBtnOcarina);
|
||||||
|
|
||||||
@ -213,14 +204,6 @@ void CMenu::_hideGameSettingsPg(void)
|
|||||||
m_btnMgr.hide(m_gameSettingsLblWidescreen);
|
m_btnMgr.hide(m_gameSettingsLblWidescreen);
|
||||||
m_btnMgr.hide(m_gameSettingsBtnWidescreen);
|
m_btnMgr.hide(m_gameSettingsBtnWidescreen);
|
||||||
|
|
||||||
m_btnMgr.hide(m_gameSettingsLblLED);
|
|
||||||
m_btnMgr.hide(m_gameSettingsBtnLED);
|
|
||||||
|
|
||||||
m_btnMgr.hide(m_gameSettingsLblNoDVD);
|
|
||||||
m_btnMgr.hide(m_gameSettingsLblNoDVD_Val);
|
|
||||||
m_btnMgr.hide(m_gameSettingsBtnNoDVD_P);
|
|
||||||
m_btnMgr.hide(m_gameSettingsBtnNoDVD_M);
|
|
||||||
|
|
||||||
m_btnMgr.hide(m_gameSettingsLblUSB_HID);
|
m_btnMgr.hide(m_gameSettingsLblUSB_HID);
|
||||||
m_btnMgr.hide(m_gameSettingsBtnUSB_HID);
|
m_btnMgr.hide(m_gameSettingsBtnUSB_HID);
|
||||||
|
|
||||||
@ -280,7 +263,7 @@ void CMenu::_showGameSettings(void)
|
|||||||
if(GameHdr->type == TYPE_GC_GAME)
|
if(GameHdr->type == TYPE_GC_GAME)
|
||||||
{
|
{
|
||||||
GCLoader = min((u32)m_gcfg2.getInt(id, "gc_loader", 0), ARRAY_SIZE(CMenu::_GCLoader) - 1u);
|
GCLoader = min((u32)m_gcfg2.getInt(id, "gc_loader", 0), ARRAY_SIZE(CMenu::_GCLoader) - 1u);
|
||||||
GCLoader = (GCLoader == 0) ? min((u32)m_cfg.getInt(GC_DOMAIN, "default_loader", 2), ARRAY_SIZE(CMenu::_GlobalGCLoaders) - 1u) : GCLoader-1;
|
GCLoader = (GCLoader == 0) ? min((u32)m_cfg.getInt(GC_DOMAIN, "default_loader", 1), ARRAY_SIZE(CMenu::_GlobalGCLoaders) - 1u) : GCLoader-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
m_gameSettingsMaxPgs = 4;
|
m_gameSettingsMaxPgs = 4;
|
||||||
@ -338,16 +321,8 @@ void CMenu::_showGameSettings(void)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if(GCLoader == NINTENDONT)
|
m_btnMgr.show(m_gameSettingsLblDeflicker);
|
||||||
{
|
m_btnMgr.show(m_gameSettingsBtnDeflicker);
|
||||||
m_btnMgr.show(m_gameSettingsLblDeflicker);
|
|
||||||
m_btnMgr.show(m_gameSettingsBtnDeflicker);
|
|
||||||
}
|
|
||||||
else //dml
|
|
||||||
{
|
|
||||||
m_btnMgr.show(m_gameSettingsLblScreenshot);
|
|
||||||
m_btnMgr.show(m_gameSettingsBtnScreenshot);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
m_btnMgr.show(m_gameSettingsLblOcarina);
|
m_btnMgr.show(m_gameSettingsLblOcarina);
|
||||||
@ -396,24 +371,6 @@ void CMenu::_showGameSettings(void)
|
|||||||
m_btnMgr.show(m_gameSettingsBtnApploader);
|
m_btnMgr.show(m_gameSettingsBtnApploader);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(GCLoader == AUTOMIOS)// DIOS MIOS
|
|
||||||
{
|
|
||||||
m_btnMgr.show(m_gameSettingsLblEmuMemCard);
|
|
||||||
m_btnMgr.show(m_gameSettingsLblEmuMemCard_Val);
|
|
||||||
m_btnMgr.show(m_gameSettingsBtnEmuMemCard_P);
|
|
||||||
m_btnMgr.show(m_gameSettingsBtnEmuMemCard_M);
|
|
||||||
|
|
||||||
m_btnMgr.show(m_gameSettingsLblWidescreen);
|
|
||||||
m_btnMgr.show(m_gameSettingsBtnWidescreen);
|
|
||||||
|
|
||||||
m_btnMgr.show(m_gameSettingsLblLED);
|
|
||||||
m_btnMgr.show(m_gameSettingsBtnLED);
|
|
||||||
|
|
||||||
m_btnMgr.show(m_gameSettingsLblNoDVD);
|
|
||||||
m_btnMgr.show(m_gameSettingsLblNoDVD_Val);
|
|
||||||
m_btnMgr.show(m_gameSettingsBtnNoDVD_P);
|
|
||||||
m_btnMgr.show(m_gameSettingsBtnNoDVD_M);
|
|
||||||
}
|
|
||||||
else if(GCLoader == NINTENDONT)
|
else if(GCLoader == NINTENDONT)
|
||||||
{
|
{
|
||||||
m_btnMgr.show(m_gameSettingsLblEmuMemCard);
|
m_btnMgr.show(m_gameSettingsLblEmuMemCard);
|
||||||
@ -495,7 +452,6 @@ void CMenu::_showGameSettings(void)
|
|||||||
//widescreen is shared by all, in the future might seperate them
|
//widescreen is shared by all, in the future might seperate them
|
||||||
m_btnMgr.setText(m_gameSettingsBtnWidescreen, _optBoolToString(m_gcfg2.getOptBool(id, "widescreen", m_cfg.getBool(GC_DOMAIN, "dm_widescreen", 0))));
|
m_btnMgr.setText(m_gameSettingsBtnWidescreen, _optBoolToString(m_gcfg2.getOptBool(id, "widescreen", m_cfg.getBool(GC_DOMAIN, "dm_widescreen", 0))));
|
||||||
m_btnMgr.setText(m_gameSettingsBtnDevoMemcardEmu, _optBoolToString(m_gcfg2.getOptBool(id, "devo_memcard_emu", 0)));
|
m_btnMgr.setText(m_gameSettingsBtnDevoMemcardEmu, _optBoolToString(m_gcfg2.getOptBool(id, "devo_memcard_emu", 0)));
|
||||||
m_btnMgr.setText(m_gameSettingsBtnScreenshot, _optBoolToString(m_gcfg2.getOptBool(id, "screenshot", m_cfg.getBool(GC_DOMAIN, "screenshot", 0))));
|
|
||||||
m_btnMgr.setText(m_gameSettingsBtnUSB_HID, _optBoolToString(m_gcfg2.getOptBool(id, "USB_HID", m_cfg.getBool(GC_DOMAIN, "USB_HID", 0))));
|
m_btnMgr.setText(m_gameSettingsBtnUSB_HID, _optBoolToString(m_gcfg2.getOptBool(id, "USB_HID", m_cfg.getBool(GC_DOMAIN, "USB_HID", 0))));
|
||||||
m_btnMgr.setText(m_gameSettingsBtnNATIVE_CTL, _optBoolToString(m_gcfg2.getOptBool(id, "NATIVE_CTL", m_cfg.getBool(GC_DOMAIN, "NATIVE_CTL", 0))));
|
m_btnMgr.setText(m_gameSettingsBtnNATIVE_CTL, _optBoolToString(m_gcfg2.getOptBool(id, "NATIVE_CTL", m_cfg.getBool(GC_DOMAIN, "NATIVE_CTL", 0))));
|
||||||
m_btnMgr.setText(m_gameSettingsBtnDeflicker, _optBoolToString(m_gcfg2.getOptBool(id, "Deflicker", m_cfg.getBool(GC_DOMAIN, "Deflicker", 0))));
|
m_btnMgr.setText(m_gameSettingsBtnDeflicker, _optBoolToString(m_gcfg2.getOptBool(id, "Deflicker", m_cfg.getBool(GC_DOMAIN, "Deflicker", 0))));
|
||||||
@ -517,15 +473,6 @@ void CMenu::_showGameSettings(void)
|
|||||||
i = min((u32)m_gcfg2.getInt(id, "nin_memcard", 0), ARRAY_SIZE(CMenu::_NinEmuCard) - 1u);
|
i = min((u32)m_gcfg2.getInt(id, "nin_memcard", 0), ARRAY_SIZE(CMenu::_NinEmuCard) - 1u);
|
||||||
m_btnMgr.setText(m_gameSettingsLblEmuMemCard_Val, _t(CMenu::_NinEmuCard[i].id, CMenu::_NinEmuCard[i].text));
|
m_btnMgr.setText(m_gameSettingsLblEmuMemCard_Val, _t(CMenu::_NinEmuCard[i].id, CMenu::_NinEmuCard[i].text));
|
||||||
}
|
}
|
||||||
else if(GCLoader == AUTOMIOS)
|
|
||||||
{
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblEmuMemCard, _t("cfgg28", L"NMM"));
|
|
||||||
i = min((u32)m_gcfg2.getInt(id, "dml_nmm", 0), ARRAY_SIZE(CMenu::_NMM) - 1u);
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblEmuMemCard_Val, _t(CMenu::_NMM[i].id, CMenu::_NMM[i].text));
|
|
||||||
}
|
|
||||||
|
|
||||||
i = min((u32)m_gcfg2.getInt(id, "no_disc_patch", 0), ARRAY_SIZE(CMenu::_NoDVD) - 1u);
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblNoDVD_Val, _t(CMenu::_NoDVD[i].id, CMenu::_NoDVD[i].text));
|
|
||||||
|
|
||||||
i = min((u32)m_gcfg2.getInt(id, "gc_loader", 0), ARRAY_SIZE(CMenu::_GCLoader) - 1u);
|
i = min((u32)m_gcfg2.getInt(id, "gc_loader", 0), ARRAY_SIZE(CMenu::_GCLoader) - 1u);
|
||||||
m_btnMgr.setText(m_gameSettingsLblGCLoader_Val, _t(CMenu::_GCLoader[i].id, CMenu::_GCLoader[i].text));
|
m_btnMgr.setText(m_gameSettingsLblGCLoader_Val, _t(CMenu::_GCLoader[i].id, CMenu::_GCLoader[i].text));
|
||||||
@ -535,7 +482,6 @@ void CMenu::_showGameSettings(void)
|
|||||||
m_btnMgr.setText(m_gameSettingsBtnVipatch, _optBoolToString(m_gcfg2.getOptBool(id, "vipatch", 0)));
|
m_btnMgr.setText(m_gameSettingsBtnVipatch, _optBoolToString(m_gcfg2.getOptBool(id, "vipatch", 0)));
|
||||||
m_btnMgr.setText(m_gameSettingsBtnCountryPatch, _optBoolToString(m_gcfg2.getOptBool(id, "country_patch", 0)));
|
m_btnMgr.setText(m_gameSettingsBtnCountryPatch, _optBoolToString(m_gcfg2.getOptBool(id, "country_patch", 0)));
|
||||||
m_btnMgr.setText(m_gameSettingsBtnPrivateServer, _optBoolToString(m_gcfg2.getOptBool(id, "private_server", m_cfg.getBool(WII_DOMAIN, "private_server", 0))));
|
m_btnMgr.setText(m_gameSettingsBtnPrivateServer, _optBoolToString(m_gcfg2.getOptBool(id, "private_server", m_cfg.getBool(WII_DOMAIN, "private_server", 0))));
|
||||||
//m_btnMgr.setText(m_gameSettingsBtnIOSreloadBlock, _optBoolToString(m_gcfg2.getOptBool(id, "reload_block", 0)));
|
|
||||||
m_btnMgr.setText(m_gameSettingsBtnCustom, _optBoolToString(m_gcfg2.getOptBool(id, "custom", 0)));
|
m_btnMgr.setText(m_gameSettingsBtnCustom, _optBoolToString(m_gcfg2.getOptBool(id, "custom", 0)));
|
||||||
m_btnMgr.setText(m_gameSettingsBtnLaunchNK, _optBoolToString(m_gcfg2.getOptBool(id, "useneek", m_cfg.getBool(CHANNEL_DOMAIN, "useneek", 0))));
|
m_btnMgr.setText(m_gameSettingsBtnLaunchNK, _optBoolToString(m_gcfg2.getOptBool(id, "useneek", m_cfg.getBool(CHANNEL_DOMAIN, "useneek", 0))));
|
||||||
m_btnMgr.setText(m_gameSettingsBtnApploader, _optBoolToString(m_gcfg2.getOptBool(id, "apploader", 0)));
|
m_btnMgr.setText(m_gameSettingsBtnApploader, _optBoolToString(m_gcfg2.getOptBool(id, "apploader", 0)));
|
||||||
@ -633,11 +579,6 @@ void CMenu::_gameSettings(void)
|
|||||||
m_gcfg2.setBool(id, "country_patch", !m_gcfg2.getBool(id, "country_patch", 0));
|
m_gcfg2.setBool(id, "country_patch", !m_gcfg2.getBool(id, "country_patch", 0));
|
||||||
_showGameSettings();
|
_showGameSettings();
|
||||||
}
|
}
|
||||||
/*else if(m_btnMgr.selected(m_gameSettingsBtnIOSreloadBlock))
|
|
||||||
{
|
|
||||||
m_gcfg2.setBool(id, "reload_block", !m_gcfg2.getBool(id, "reload_block", 1));
|
|
||||||
_showGameSettings();
|
|
||||||
}*/
|
|
||||||
else if(m_btnMgr.selected(m_gameSettingsBtnCustom))
|
else if(m_btnMgr.selected(m_gameSettingsBtnCustom))
|
||||||
{
|
{
|
||||||
m_gcfg2.setBool(id, "custom", !m_gcfg2.getBool(id, "custom", 0));
|
m_gcfg2.setBool(id, "custom", !m_gcfg2.getBool(id, "custom", 0));
|
||||||
@ -656,7 +597,7 @@ void CMenu::_gameSettings(void)
|
|||||||
else if(m_btnMgr.selected(m_gameSettingsBtnWidescreen))
|
else if(m_btnMgr.selected(m_gameSettingsBtnWidescreen))
|
||||||
{
|
{
|
||||||
if(IsOnWiiU() and GCLoader == NINTENDONT)
|
if(IsOnWiiU() and GCLoader == NINTENDONT)
|
||||||
m_gcfg2.setBool(id, "screenshot", !m_gcfg2.getBool(id, "screenshot", 0));
|
m_gcfg2.setBool(id, "wiiu_widescreen", !m_gcfg2.getBool(id, "wiiu_widescreen", 0));
|
||||||
else
|
else
|
||||||
m_gcfg2.setBool(id, "widescreen", !m_gcfg2.getBool(id, "widescreen", 0));
|
m_gcfg2.setBool(id, "widescreen", !m_gcfg2.getBool(id, "widescreen", 0));
|
||||||
_showGameSettings();
|
_showGameSettings();
|
||||||
@ -688,16 +629,7 @@ void CMenu::_gameSettings(void)
|
|||||||
else if(m_btnMgr.selected(m_gameSettingsBtnEmuMemCard_P) || m_btnMgr.selected(m_gameSettingsBtnEmuMemCard_M))
|
else if(m_btnMgr.selected(m_gameSettingsBtnEmuMemCard_P) || m_btnMgr.selected(m_gameSettingsBtnEmuMemCard_M))
|
||||||
{
|
{
|
||||||
s8 direction = m_btnMgr.selected(m_gameSettingsBtnEmuMemCard_P) ? 1 : -1;
|
s8 direction = m_btnMgr.selected(m_gameSettingsBtnEmuMemCard_P) ? 1 : -1;
|
||||||
if(GCLoader == NINTENDONT)
|
m_gcfg2.setInt(id, "nin_memcard", (int)loopNum((u32)m_gcfg2.getInt(id, "nin_memcard", 2) + direction, ARRAY_SIZE(CMenu::_NinEmuCard)));
|
||||||
m_gcfg2.setInt(id, "nin_memcard", (int)loopNum((u32)m_gcfg2.getInt(id, "nin_memcard", 2) + direction, ARRAY_SIZE(CMenu::_NinEmuCard)));
|
|
||||||
else
|
|
||||||
m_gcfg2.setInt(id, "dml_nmm", (int)loopNum((u32)m_gcfg2.getInt(id, "dml_nmm", 2) + direction, ARRAY_SIZE(CMenu::_NMM)));
|
|
||||||
_showGameSettings();
|
|
||||||
}
|
|
||||||
else if(m_btnMgr.selected(m_gameSettingsBtnNoDVD_P) || m_btnMgr.selected(m_gameSettingsBtnNoDVD_M))
|
|
||||||
{
|
|
||||||
s8 direction = m_btnMgr.selected(m_gameSettingsBtnNoDVD_P) ? 1 : -1;
|
|
||||||
m_gcfg2.setInt(id, "no_disc_patch", (int)loopNum((u32)m_gcfg2.getInt(id, "no_disc_patch", 0) + direction, ARRAY_SIZE(CMenu::_NoDVD)));
|
|
||||||
_showGameSettings();
|
_showGameSettings();
|
||||||
}
|
}
|
||||||
else if(m_btnMgr.selected(m_gameSettingsBtnGCLoader_P) || m_btnMgr.selected(m_gameSettingsBtnGCLoader_M))
|
else if(m_btnMgr.selected(m_gameSettingsBtnGCLoader_P) || m_btnMgr.selected(m_gameSettingsBtnGCLoader_M))
|
||||||
@ -787,11 +719,6 @@ void CMenu::_gameSettings(void)
|
|||||||
m_gcfg2.setBool(id, "Deflicker", !m_gcfg2.getBool(id, "Deflicker", 0));
|
m_gcfg2.setBool(id, "Deflicker", !m_gcfg2.getBool(id, "Deflicker", 0));
|
||||||
_showGameSettings();
|
_showGameSettings();
|
||||||
}
|
}
|
||||||
else if(m_btnMgr.selected(m_gameSettingsBtnScreenshot))
|
|
||||||
{
|
|
||||||
m_gcfg2.setBool(id, "screenshot", !m_gcfg2.getBool(id, "screenshot", 0));
|
|
||||||
_showGameSettings();
|
|
||||||
}
|
|
||||||
else if(m_btnMgr.selected(m_gameSettingsBtnUSB_HID))
|
else if(m_btnMgr.selected(m_gameSettingsBtnUSB_HID))
|
||||||
{
|
{
|
||||||
m_gcfg2.setBool(id, "USB_HID", !m_gcfg2.getBool(id, "USB_HID", 0));
|
m_gcfg2.setBool(id, "USB_HID", !m_gcfg2.getBool(id, "USB_HID", 0));
|
||||||
@ -875,8 +802,7 @@ void CMenu::_initGameSettingsMenu()
|
|||||||
m_gameSettingsBtnCheat = _addButton("GAME_SETTINGS/CHEAT_BTN", theme.btnFont, L"", 420, 310, 200, 48, theme.btnFontColor);
|
m_gameSettingsBtnCheat = _addButton("GAME_SETTINGS/CHEAT_BTN", theme.btnFont, L"", 420, 310, 200, 48, theme.btnFontColor);
|
||||||
|
|
||||||
//GC Page 2
|
//GC Page 2
|
||||||
//nintendot = debugger, deflicker, ocarina, cheats
|
//nintendont = debugger, deflicker, ocarina, cheats
|
||||||
//dml = debugger, screenshot, ocarina, cheats
|
|
||||||
//devolution = emucard, widescreen, led_activity(pg4), (blank)
|
//devolution = emucard, widescreen, led_activity(pg4), (blank)
|
||||||
|
|
||||||
m_gameSettingsLblDevoMemcardEmu = _addLabel("GAME_SETTINGS/DEVO_MEMCARD_EMU", theme.lblFont, L"", 20, 125, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
m_gameSettingsLblDevoMemcardEmu = _addLabel("GAME_SETTINGS/DEVO_MEMCARD_EMU", theme.lblFont, L"", 20, 125, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||||
@ -910,8 +836,7 @@ void CMenu::_initGameSettingsMenu()
|
|||||||
m_gameSettingsBtnApploader = _addButton("GAME_SETTINGS/APPLDR_BTN", theme.btnFont, L"", 420, 310, 200, 48, theme.btnFontColor);
|
m_gameSettingsBtnApploader = _addButton("GAME_SETTINGS/APPLDR_BTN", theme.btnFont, L"", 420, 310, 200, 48, theme.btnFontColor);
|
||||||
|
|
||||||
//GC Page 3
|
//GC Page 3
|
||||||
//dml=nmm, widescreen, led_activity (pg4), no dvd
|
//nintendont=emucard, widescreen(pg2)/wiiu widescreen, usb_hid, native_ctl
|
||||||
//nintendont=emucard, widescreen(pg2)/wiiu widescreen(screenshot), usb_hid, native_ctl
|
|
||||||
//devo=nothing
|
//devo=nothing
|
||||||
|
|
||||||
m_gameSettingsLblEmuMemCard = _addLabel("GAME_SETTINGS/DML_NMM", theme.lblFont, L"", 20, 125, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
m_gameSettingsLblEmuMemCard = _addLabel("GAME_SETTINGS/DML_NMM", theme.lblFont, L"", 20, 125, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||||
@ -919,20 +844,12 @@ void CMenu::_initGameSettingsMenu()
|
|||||||
m_gameSettingsBtnEmuMemCard_M = _addPicButton("GAME_SETTINGS/DML_NMM_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 420, 130, 48, 48);
|
m_gameSettingsBtnEmuMemCard_M = _addPicButton("GAME_SETTINGS/DML_NMM_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 420, 130, 48, 48);
|
||||||
m_gameSettingsBtnEmuMemCard_P = _addPicButton("GAME_SETTINGS/DML_NMM_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 572, 130, 48, 48);
|
m_gameSettingsBtnEmuMemCard_P = _addPicButton("GAME_SETTINGS/DML_NMM_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 572, 130, 48, 48);
|
||||||
|
|
||||||
m_gameSettingsLblScreenshot = _addLabel("GAME_SETTINGS/SCREENSHOT", theme.lblFont, L"", 20, 185, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
|
||||||
m_gameSettingsBtnScreenshot = _addButton("GAME_SETTINGS/SCREENSHOT_BTN", theme.btnFont, L"", 420, 190, 200, 48, theme.btnFontColor);
|
|
||||||
|
|
||||||
m_gameSettingsLblUSB_HID = _addLabel("GAME_SETTINGS/USB_HID", theme.lblFont, L"", 20, 245, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
m_gameSettingsLblUSB_HID = _addLabel("GAME_SETTINGS/USB_HID", theme.lblFont, L"", 20, 245, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||||
m_gameSettingsBtnUSB_HID = _addButton("GAME_SETTINGS/USB_HID_BTN", theme.btnFont, L"", 420, 250, 200, 48, theme.btnFontColor);
|
m_gameSettingsBtnUSB_HID = _addButton("GAME_SETTINGS/USB_HID_BTN", theme.btnFont, L"", 420, 250, 200, 48, theme.btnFontColor);
|
||||||
|
|
||||||
m_gameSettingsLblNATIVE_CTL = _addLabel("GAME_SETTINGS/NATIVE_CTL", theme.lblFont, L"", 20, 305, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
m_gameSettingsLblNATIVE_CTL = _addLabel("GAME_SETTINGS/NATIVE_CTL", theme.lblFont, L"", 20, 305, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||||
m_gameSettingsBtnNATIVE_CTL = _addButton("GAME_SETTINGS/NATIVE_CTL_BTN", theme.btnFont, L"", 420, 310, 200, 48, theme.btnFontColor);
|
m_gameSettingsBtnNATIVE_CTL = _addButton("GAME_SETTINGS/NATIVE_CTL_BTN", theme.btnFont, L"", 420, 310, 200, 48, theme.btnFontColor);
|
||||||
|
|
||||||
m_gameSettingsLblNoDVD = _addLabel("GAME_SETTINGS/NO_DVD_PATCH", theme.lblFont, L"", 20, 305, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
|
||||||
m_gameSettingsLblNoDVD_Val = _addLabel("GAME_SETTINGS/NO_DVD_PATCH_BTN", theme.btnFont, L"", 468, 310, 104, 48, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
|
||||||
m_gameSettingsBtnNoDVD_M = _addPicButton("GAME_SETTINGS/NO_DVD_PATCH_MINUS", theme.btnTexMinus, theme.btnTexMinusS, 420, 310, 48, 48);
|
|
||||||
m_gameSettingsBtnNoDVD_P = _addPicButton("GAME_SETTINGS/NO_DVD_PATCH_PLUS", theme.btnTexPlus, theme.btnTexPlusS, 572, 310, 48, 48);
|
|
||||||
|
|
||||||
//Page 4
|
//Page 4
|
||||||
m_gameSettingsLblEmulation = _addLabel("GAME_SETTINGS/EMU_SAVE", theme.lblFont, L"", 20, 125, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
m_gameSettingsLblEmulation = _addLabel("GAME_SETTINGS/EMU_SAVE", theme.lblFont, L"", 20, 125, 385, 56, theme.lblFontColor, FTGX_JUSTIFY_LEFT | FTGX_ALIGN_MIDDLE);
|
||||||
m_gameSettingsLblEmulationVal = _addLabel("GAME_SETTINGS/EMU_SAVE_BTN", theme.btnFont, L"", 468, 130, 104, 48, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
m_gameSettingsLblEmulationVal = _addLabel("GAME_SETTINGS/EMU_SAVE_BTN", theme.btnFont, L"", 468, 130, 104, 48, theme.btnFontColor, FTGX_JUSTIFY_CENTER | FTGX_ALIGN_MIDDLE, theme.btnTexC);
|
||||||
@ -1038,19 +955,11 @@ void CMenu::_initGameSettingsMenu()
|
|||||||
_setHideAnim(m_gameSettingsLblDeflicker, "GAME_SETTINGS/DEFLICKER", 50, 0, -2.f, 0.f);
|
_setHideAnim(m_gameSettingsLblDeflicker, "GAME_SETTINGS/DEFLICKER", 50, 0, -2.f, 0.f);
|
||||||
_setHideAnim(m_gameSettingsBtnDeflicker, "GAME_SETTINGS/DEFLICKER_BTN", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_gameSettingsBtnDeflicker, "GAME_SETTINGS/DEFLICKER_BTN", -50, 0, 1.f, 0.f);
|
||||||
|
|
||||||
_setHideAnim(m_gameSettingsLblScreenshot, "GAME_SETTINGS/SCREENSHOT", 50, 0, -2.f, 0.f);
|
|
||||||
_setHideAnim(m_gameSettingsBtnScreenshot, "GAME_SETTINGS/SCREENSHOT_BTN", -50, 0, 1.f, 0.f);
|
|
||||||
|
|
||||||
_setHideAnim(m_gameSettingsLblEmuMemCard, "GAME_SETTINGS/DML_NMM", 50, 0, -2.f, 0.f);
|
_setHideAnim(m_gameSettingsLblEmuMemCard, "GAME_SETTINGS/DML_NMM", 50, 0, -2.f, 0.f);
|
||||||
_setHideAnim(m_gameSettingsLblEmuMemCard_Val, "GAME_SETTINGS/DML_NMM_BTN", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_gameSettingsLblEmuMemCard_Val, "GAME_SETTINGS/DML_NMM_BTN", -50, 0, 1.f, 0.f);
|
||||||
_setHideAnim(m_gameSettingsBtnEmuMemCard_P, "GAME_SETTINGS/DML_NMM_PLUS", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_gameSettingsBtnEmuMemCard_P, "GAME_SETTINGS/DML_NMM_PLUS", -50, 0, 1.f, 0.f);
|
||||||
_setHideAnim(m_gameSettingsBtnEmuMemCard_M, "GAME_SETTINGS/DML_NMM_MINUS", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_gameSettingsBtnEmuMemCard_M, "GAME_SETTINGS/DML_NMM_MINUS", -50, 0, 1.f, 0.f);
|
||||||
|
|
||||||
_setHideAnim(m_gameSettingsLblNoDVD, "GAME_SETTINGS/NO_DVD_PATCH", 50, 0, -2.f, 0.f);
|
|
||||||
_setHideAnim(m_gameSettingsLblNoDVD_Val, "GAME_SETTINGS/NO_DVD_PATCH_BTN", -50, 0, 1.f, 0.f);
|
|
||||||
_setHideAnim(m_gameSettingsBtnNoDVD_P, "GAME_SETTINGS/NO_DVD_PATCH_PLUS", -50, 0, 1.f, 0.f);
|
|
||||||
_setHideAnim(m_gameSettingsBtnNoDVD_M, "GAME_SETTINGS/NO_DVD_PATCH_MINUS", -50, 0, 1.f, 0.f);
|
|
||||||
|
|
||||||
_setHideAnim(m_gameSettingsLblDevoMemcardEmu, "GAME_SETTINGS/DEVO_MEMCARD_EMU", 50, 0, -2.f, 0.f);
|
_setHideAnim(m_gameSettingsLblDevoMemcardEmu, "GAME_SETTINGS/DEVO_MEMCARD_EMU", 50, 0, -2.f, 0.f);
|
||||||
_setHideAnim(m_gameSettingsBtnDevoMemcardEmu, "GAME_SETTINGS/DEVO_MEMCARD_EMU_BTN", -50, 0, 1.f, 0.f);
|
_setHideAnim(m_gameSettingsBtnDevoMemcardEmu, "GAME_SETTINGS/DEVO_MEMCARD_EMU_BTN", -50, 0, 1.f, 0.f);
|
||||||
|
|
||||||
@ -1098,41 +1007,43 @@ void CMenu::_initGameSettingsMenu()
|
|||||||
void CMenu::_textGameSettings(void)
|
void CMenu::_textGameSettings(void)
|
||||||
{
|
{
|
||||||
m_btnMgr.setText(m_gameSettingsLblTitle, _t("cfgg1", L"Settings"));
|
m_btnMgr.setText(m_gameSettingsLblTitle, _t("cfgg1", L"Settings"));
|
||||||
m_btnMgr.setText(m_gameSettingsLblGameVideo, _t("cfgg2", L"Video mode"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblGameLanguage, _t("cfgg3", L"Language"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblCountryPatch, _t("cfgg4", L"Patch country strings"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblOcarina, _t("cfgg5", L"Ocarina"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblVipatch, _t("cfgg7", L"Vipatch"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsBtnBack, _t("cfgg8", L"Back"));
|
m_btnMgr.setText(m_gameSettingsBtnBack, _t("cfgg8", L"Back"));
|
||||||
m_btnMgr.setText(m_gameSettingsLblGameIOS, _t("cfgg10", L"IOS"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblPatchVidModes, _t("cfgg14", L"Patch video modes"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblCheat, _t("cfgg15", L"Cheat Codes"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsBtnCheat, _t("cfgg16", L"Select"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblCategoryMain, _t("cfgg17", L"Categories"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsBtnCategoryMain, _t("cfgg16", L"Select"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblHooktype, _t("cfgg18", L"Hook Type"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblDebugger, _t("cfgg22", L"Debugger"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblEmulation, _t("cfgg24", L"NAND Emulation"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblAspectRatio, _t("cfgg27", L"Aspect Ratio"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblEmuMemCard, _t("cfgg28", L"NMM"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblNoDVD, _t("cfgg29", L"No DVD Patch"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblCustom, _t("custom", L"Custom"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblLaunchNK, _t("neek1", L"Launch Title with neek2o"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblExtractSave, _t("cfgg30", L"Extract Save from NAND"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsBtnExtractSave, _t("cfgg31", L"Extract"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblFlashSave, _t("cfgg32", L"Flash Save to NAND"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsBtnFlashSave, _t("cfgg33", L"Flash"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblDevoMemcardEmu, _t("cfgg47", L"Emulated MemCard"));
|
|
||||||
//m_btnMgr.setText(m_gameSettingsLblDevoMemcardEmu, _t("cfgg34", L"Devolution Memcard Emulator"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblGCLoader, _t("cfgg35", L"GameCube Loader"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblWidescreen, _t("cfgg36", L"Widescreen Patch"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblApploader, _t("cfgg37", L"Boot Apploader"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblLED, _t("cfgg38", L"Activity LED"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblScreenshot, _t("cfgg39", L"DiosMios ScreenShot"));
|
|
||||||
m_btnMgr.setText(m_gameSettingsLblManage, _t("cfgg40", L"Manage Cover and Banner"));
|
m_btnMgr.setText(m_gameSettingsLblManage, _t("cfgg40", L"Manage Cover and Banner"));
|
||||||
m_btnMgr.setText(m_gameSettingsBtnManage, _t("cfgg41", L"Manage"));
|
m_btnMgr.setText(m_gameSettingsBtnManage, _t("cfgg41", L"Manage"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblCategoryMain, _t("cfgg17", L"Categories"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsBtnCategoryMain, _t("cfgg16", L"Select"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblGCLoader, _t("cfgg35", L"GameCube Loader"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblGameVideo, _t("cfgg2", L"Video mode"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblGameLanguage, _t("cfgg3", L"Language"));
|
||||||
|
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblHooktype, _t("cfgg18", L"Hook Type"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblDebugger, _t("cfgg22", L"Debugger"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblOcarina, _t("cfgg5", L"Ocarina"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblCheat, _t("cfgg15", L"Cheat Codes"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsBtnCheat, _t("cfgg16", L"Select"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblDeflicker, _t("cfgg44", L"Video Deflicker"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblDevoMemcardEmu, _t("cfgg47", L"Emulated MemCard"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblWidescreen, _t("cfgg36", L"Widescreen Patch"));
|
||||||
|
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblCountryPatch, _t("cfgg4", L"Patch country strings"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblVipatch, _t("cfgg7", L"Vipatch"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblPatchVidModes, _t("cfgg14", L"Patch video modes"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblAspectRatio, _t("cfgg27", L"Aspect Ratio"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblApploader, _t("cfgg37", L"Boot Apploader"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblEmuMemCard, _t("cfgg47", L"Emulated MemCard"));
|
||||||
m_btnMgr.setText(m_gameSettingsLblUSB_HID, _t("cfgg42", L"USB-HID Controller"));
|
m_btnMgr.setText(m_gameSettingsLblUSB_HID, _t("cfgg42", L"USB-HID Controller"));
|
||||||
m_btnMgr.setText(m_gameSettingsLblNATIVE_CTL, _t("cfgg43", L"Native Control"));
|
m_btnMgr.setText(m_gameSettingsLblNATIVE_CTL, _t("cfgg43", L"Native Control"));
|
||||||
m_btnMgr.setText(m_gameSettingsLblDeflicker, _t("cfgg44", L"Video Deflicker"));
|
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblEmulation, _t("cfgg24", L"NAND Emulation"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblGameIOS, _t("cfgg10", L"IOS"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblLED, _t("cfgg38", L"Activity LED"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblExtractSave, _t("cfgg30", L"Extract Save from NAND"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsBtnExtractSave, _t("cfgg31", L"Extract"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblCustom, _t("custom", L"Custom"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblLaunchNK, _t("neek1", L"Launch Title with neek2o"));
|
||||||
|
|
||||||
|
m_btnMgr.setText(m_gameSettingsLblFlashSave, _t("cfgg32", L"Flash Save to NAND"));
|
||||||
|
m_btnMgr.setText(m_gameSettingsBtnFlashSave, _t("cfgg33", L"Flash"));
|
||||||
m_btnMgr.setText(m_gameSettingsLblPrivateServer, _t("cfgg45", L"Private Server"));
|
m_btnMgr.setText(m_gameSettingsLblPrivateServer, _t("cfgg45", L"Private Server"));
|
||||||
}
|
}
|
||||||
|
@ -24,7 +24,7 @@
|
|||||||
#include "homebrew/homebrew.h"
|
#include "homebrew/homebrew.h"
|
||||||
#include "loader/alt_ios.h"
|
#include "loader/alt_ios.h"
|
||||||
#include "loader/wdvd.h"
|
#include "loader/wdvd.h"
|
||||||
#include "loader/alt_ios.h"
|
//#include "loader/alt_ios.h"
|
||||||
#include "loader/playlog.h"
|
#include "loader/playlog.h"
|
||||||
#include "loader/wbfs.h"
|
#include "loader/wbfs.h"
|
||||||
#include "loader/wip.h"
|
#include "loader/wip.h"
|
||||||
@ -149,13 +149,7 @@ const CMenu::SOption CMenu::_AspectRatio[3] = {
|
|||||||
{ "aspect169", L"Force 16:9" },
|
{ "aspect169", L"Force 16:9" },
|
||||||
};
|
};
|
||||||
|
|
||||||
const CMenu::SOption CMenu::_NMM[4] = {
|
//still need to change the NMM's
|
||||||
{ "NMMDef", L"Default" },
|
|
||||||
{ "NMMOff", L"Disabled" },
|
|
||||||
{ "NMMon", L"Enabled" },
|
|
||||||
{ "NMMdebug", L"Debug" },
|
|
||||||
};
|
|
||||||
|
|
||||||
const CMenu::SOption CMenu::_NinEmuCard[5] = {
|
const CMenu::SOption CMenu::_NinEmuCard[5] = {
|
||||||
{ "NMMDef", L"Default" },
|
{ "NMMDef", L"Default" },
|
||||||
{ "NMMOff", L"Disabled" },
|
{ "NMMOff", L"Disabled" },
|
||||||
@ -164,21 +158,13 @@ const CMenu::SOption CMenu::_NinEmuCard[5] = {
|
|||||||
{ "NMMdebug", L"Debug" },
|
{ "NMMdebug", L"Debug" },
|
||||||
};
|
};
|
||||||
|
|
||||||
const CMenu::SOption CMenu::_NoDVD[3] = {
|
const CMenu::SOption CMenu::_GlobalGCLoaders[2] = {
|
||||||
{ "NoDVDDef", L"Default" },
|
|
||||||
{ "NoDVDOff", L"Disabled" },
|
|
||||||
{ "NoDVDon", L"Enabled" },
|
|
||||||
};
|
|
||||||
|
|
||||||
const CMenu::SOption CMenu::_GlobalGCLoaders[3] = {
|
|
||||||
{ "GC_Auto", L"Auto MIOS" },
|
|
||||||
{ "GC_Devo", L"Devolution" },
|
{ "GC_Devo", L"Devolution" },
|
||||||
{ "GC_Nindnt", L"Nintendont" },
|
{ "GC_Nindnt", L"Nintendont" },
|
||||||
};
|
};
|
||||||
|
|
||||||
const CMenu::SOption CMenu::_GCLoader[4] = {
|
const CMenu::SOption CMenu::_GCLoader[3] = {
|
||||||
{ "GC_Def", L"Default" },
|
{ "GC_Def", L"Default" },
|
||||||
{ "GC_Auto", L"Auto MIOS" },
|
|
||||||
{ "GC_Devo", L"Devolution" },
|
{ "GC_Devo", L"Devolution" },
|
||||||
{ "GC_Nindnt", L"Nintendont" },
|
{ "GC_Nindnt", L"Nintendont" },
|
||||||
};
|
};
|
||||||
@ -306,7 +292,6 @@ void CMenu::_hideGame(bool instant)
|
|||||||
m_btnMgr.hide(m_gameBtnSettings, instant);
|
m_btnMgr.hide(m_gameBtnSettings, instant);
|
||||||
m_btnMgr.hide(m_gameBtnToggle, instant);
|
m_btnMgr.hide(m_gameBtnToggle, instant);
|
||||||
m_btnMgr.hide(m_gameBtnToggleFull, instant);
|
m_btnMgr.hide(m_gameBtnToggleFull, instant);
|
||||||
|
|
||||||
m_btnMgr.hide(m_gameBtnFavoriteOn, instant);
|
m_btnMgr.hide(m_gameBtnFavoriteOn, instant);
|
||||||
m_btnMgr.hide(m_gameBtnFavoriteOff, instant);
|
m_btnMgr.hide(m_gameBtnFavoriteOff, instant);
|
||||||
m_btnMgr.hide(m_gameBtnAdultOn, instant);
|
m_btnMgr.hide(m_gameBtnAdultOn, instant);
|
||||||
@ -791,6 +776,7 @@ void CMenu::_launchShutdown()
|
|||||||
exitHandler(PRIILOADER_DEF); //Making wiiflow ready to boot something
|
exitHandler(PRIILOADER_DEF); //Making wiiflow ready to boot something
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool gcLaunchFail = false;
|
||||||
void CMenu::_launch(const dir_discHdr *hdr)
|
void CMenu::_launch(const dir_discHdr *hdr)
|
||||||
{
|
{
|
||||||
dir_discHdr launchHdr;
|
dir_discHdr launchHdr;
|
||||||
@ -799,7 +785,11 @@ void CMenu::_launch(const dir_discHdr *hdr)
|
|||||||
if(launchHdr.type == TYPE_WII_GAME)
|
if(launchHdr.type == TYPE_WII_GAME)
|
||||||
_launchGame(&launchHdr, false);
|
_launchGame(&launchHdr, false);
|
||||||
else if(launchHdr.type == TYPE_GC_GAME)
|
else if(launchHdr.type == TYPE_GC_GAME)
|
||||||
|
{
|
||||||
|
gcLaunchFail = false;
|
||||||
_launchGC(&launchHdr, false);
|
_launchGC(&launchHdr, false);
|
||||||
|
if(gcLaunchFail) return;
|
||||||
|
}
|
||||||
else if(launchHdr.type == TYPE_CHANNEL)
|
else if(launchHdr.type == TYPE_CHANNEL)
|
||||||
_launchChannel(&launchHdr);
|
_launchChannel(&launchHdr);
|
||||||
else if(launchHdr.type == TYPE_PLUGIN)
|
else if(launchHdr.type == TYPE_PLUGIN)
|
||||||
@ -837,18 +827,7 @@ void CMenu::_launch(const dir_discHdr *hdr)
|
|||||||
wcstombs(title, launchHdr.title, 63);
|
wcstombs(title, launchHdr.title, 63);
|
||||||
}
|
}
|
||||||
m_cfg.setString(PLUGIN_DOMAIN, "current_item", title);
|
m_cfg.setString(PLUGIN_DOMAIN, "current_item", title);
|
||||||
// check if quadforce plugin if so then set proper quadforce mios
|
|
||||||
const char *mios_wad = NULL;
|
|
||||||
u32 magic = strtoul("444d4c62", NULL, 16);
|
|
||||||
if(m_plugin.GetEnableStatus(m_cfg, magic))
|
|
||||||
{
|
|
||||||
if(currentPartition == SD && (m_mios_ver != 2 || m_sd_dm == false))
|
|
||||||
mios_wad = fmt("%s/qfsd.wad", m_miosDir.c_str());
|
|
||||||
else if(currentPartition != SD && (m_mios_ver != 2 || m_sd_dm == true))
|
|
||||||
mios_wad = fmt("%s/qfusb.wad", m_miosDir.c_str());
|
|
||||||
if(mios_wad != NULL && fsop_FileExist(mios_wad))
|
|
||||||
_Wad(mios_wad, true);//install mios
|
|
||||||
}
|
|
||||||
const char *device = (currentPartition == 0 ? "sd" : (DeviceHandle.GetFSType(currentPartition) == PART_FS_NTFS ? "ntfs" : "usb"));
|
const char *device = (currentPartition == 0 ? "sd" : (DeviceHandle.GetFSType(currentPartition) == PART_FS_NTFS ? "ntfs" : "usb"));
|
||||||
/* this is weird - he sets the return to loader to be dev:/wiiflow/plugins/WiiFlowLoader.dol
|
/* this is weird - he sets the return to loader to be dev:/wiiflow/plugins/WiiFlowLoader.dol
|
||||||
but there is no such dol in the plugins directory and WiiFlowLoader.dol is really a hidden channel
|
but there is no such dol in the plugins directory and WiiFlowLoader.dol is really a hidden channel
|
||||||
@ -890,32 +869,6 @@ void CMenu::_launch(const dir_discHdr *hdr)
|
|||||||
Sys_Exit();
|
Sys_Exit();
|
||||||
}
|
}
|
||||||
|
|
||||||
// taken from Postloader by Stfour
|
|
||||||
#define QFIDN 9
|
|
||||||
static const char qfid[QFIDN][7] = {
|
|
||||||
"RELSAB", //Sample Header?
|
|
||||||
"GGPE01", //Mario Kart Arcade GP
|
|
||||||
"MKAGP1", //Mario Kart Arcade GP (Alt ID)
|
|
||||||
"GGPE02", //Mario Kart Arcade GP 2
|
|
||||||
"MKAGP2", //Mario Kart Arcade GP 2 (Alt ID)
|
|
||||||
"GFZJ8P", //F-Zero AX
|
|
||||||
"GVSJ8P", // Virtua Striker 4 Ver.2006 (PAL)
|
|
||||||
"GVS46E", // Virtua Striker 4 Ver.2006 (NTSC)
|
|
||||||
"GVS46J", // Virtua Striker 4 Ver.2006 (JAP)
|
|
||||||
};
|
|
||||||
|
|
||||||
bool CMenu::_QF_Game(const char *game_id)
|
|
||||||
{
|
|
||||||
if(game_id == NULL)
|
|
||||||
return false;
|
|
||||||
for(u8 i = 0; i < QFIDN; i++)
|
|
||||||
{
|
|
||||||
if(memcmp(game_id, qfid[i], 7) == 0)
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
void CMenu::_launchGC(dir_discHdr *hdr, bool disc)
|
void CMenu::_launchGC(dir_discHdr *hdr, bool disc)
|
||||||
{
|
{
|
||||||
const char *id = hdr->id;
|
const char *id = hdr->id;
|
||||||
@ -923,19 +876,33 @@ void CMenu::_launchGC(dir_discHdr *hdr, bool disc)
|
|||||||
DCFlushRange((u8*)Disc_ID, 32);
|
DCFlushRange((u8*)Disc_ID, 32);
|
||||||
|
|
||||||
const char *path = hdr->path;
|
const char *path = hdr->path;
|
||||||
|
|
||||||
|
u8 loader = min((u32)m_gcfg2.getInt(id, "gc_loader", 0), ARRAY_SIZE(CMenu::_GCLoader) - 1u);
|
||||||
|
loader = (loader == 0) ? min((u32)m_cfg.getInt(GC_DOMAIN, "default_loader", 1), ARRAY_SIZE(CMenu::_GlobalGCLoaders) - 1u) : loader-1;
|
||||||
|
|
||||||
|
if(disc)
|
||||||
|
loader = 1;
|
||||||
|
if((loader == 1 && !m_nintendont_installed) || (loader == 0 && !m_devo_installed))
|
||||||
|
{
|
||||||
|
error(_t("errgame11", L"GameCube Loader not found! Can't launch game."));
|
||||||
|
gcLaunchFail = true;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
_launchShutdown();
|
||||||
m_gcfg1.setInt("PLAYCOUNT", id, m_gcfg1.getInt("PLAYCOUNT", id, 0) + 1);
|
m_gcfg1.setInt("PLAYCOUNT", id, m_gcfg1.getInt("PLAYCOUNT", id, 0) + 1);
|
||||||
m_gcfg1.setUInt("LASTPLAYED", id, time(NULL));
|
m_gcfg1.setUInt("LASTPLAYED", id, time(NULL));
|
||||||
|
m_cfg.setString(GC_DOMAIN, "current_item", id);
|
||||||
|
|
||||||
if(has_enabled_providers() && _initNetwork() == 0)
|
if(has_enabled_providers() && _initNetwork() == 0)
|
||||||
add_game_to_card(id);
|
add_game_to_card(id);
|
||||||
|
|
||||||
u8 videoSetting = min(m_cfg.getInt(GC_DOMAIN, "video_setting", 1), 2);
|
|
||||||
|
|
||||||
u8 GClanguage = min((u32)m_gcfg2.getInt(id, "gc_language", 0), ARRAY_SIZE(CMenu::_GClanguages) - 1u);
|
u8 GClanguage = min((u32)m_gcfg2.getInt(id, "gc_language", 0), ARRAY_SIZE(CMenu::_GClanguages) - 1u);
|
||||||
GClanguage = (GClanguage == 0) ? min((u32)m_cfg.getInt(GC_DOMAIN, "game_language", 0), ARRAY_SIZE(CMenu::_GlobalGClanguages) - 1u) : GClanguage-1;
|
GClanguage = (GClanguage == 0) ? min((u32)m_cfg.getInt(GC_DOMAIN, "game_language", 0), ARRAY_SIZE(CMenu::_GlobalGClanguages) - 1u) : GClanguage-1;
|
||||||
if(id[3] == 'E' || id[3] == 'J')
|
if(id[3] == 'E' || id[3] == 'J')
|
||||||
GClanguage = 1; //=english
|
GClanguage = 1; //=english
|
||||||
u8 videoMode = min((u32)m_gcfg2.getInt(id, "dml_video_mode", 0), ARRAY_SIZE(CMenu::_GCvideoModes) - 1u);
|
|
||||||
|
u8 videoMode = min((u32)m_gcfg2.getInt(id, "gc_video_mode", 0), ARRAY_SIZE(CMenu::_GCvideoModes) - 1u);
|
||||||
videoMode = (videoMode == 0) ? min((u32)m_cfg.getInt(GC_DOMAIN, "video_mode", 0), ARRAY_SIZE(CMenu::_GlobalGCvideoModes) - 1u) : videoMode-1;
|
videoMode = (videoMode == 0) ? min((u32)m_cfg.getInt(GC_DOMAIN, "video_mode", 0), ARRAY_SIZE(CMenu::_GlobalGCvideoModes) - 1u) : videoMode-1;
|
||||||
if(disc || videoMode == 0)
|
if(disc || videoMode == 0)
|
||||||
{
|
{
|
||||||
@ -945,167 +912,51 @@ void CMenu::_launchGC(dir_discHdr *hdr, bool disc)
|
|||||||
videoMode = 1; //PAL 576i
|
videoMode = 1; //PAL 576i
|
||||||
}
|
}
|
||||||
|
|
||||||
u8 loader = min((u32)m_gcfg2.getInt(id, "gc_loader", 0), ARRAY_SIZE(CMenu::_GCLoader) - 1u);
|
bool widescreen = m_gcfg2.getBool(id, "widescreen", false);
|
||||||
loader = (loader == 0) ? min((u32)m_cfg.getInt(GC_DOMAIN, "default_loader", 2), ARRAY_SIZE(CMenu::_GlobalGCLoaders) - 1u) : loader-1;
|
|
||||||
bool memcard_emu = m_gcfg2.getBool(id, "devo_memcard_emu", false);
|
|
||||||
bool widescreen = m_gcfg2.getBool(id, "dm_widescreen", false);
|
|
||||||
bool activity_led = m_gcfg2.getBool(id, "led", false);
|
|
||||||
bool usb_hid = m_gcfg2.getBool(id, "USB_HID", m_cfg.getBool(GC_DOMAIN, "USB_HID", false));
|
|
||||||
bool native_ctl = m_gcfg2.getBool(id, "NATIVE_CTL", m_cfg.getBool(GC_DOMAIN, "NATIVE_CTL", false));
|
|
||||||
bool deflicker = m_gcfg2.getBool(id, "Deflicker", m_cfg.getBool(GC_DOMAIN, "Deflicker", false));
|
|
||||||
|
|
||||||
if(loader == 2 && m_nintendont_installed == false)
|
if(loader == 0)
|
||||||
loader = 0;
|
|
||||||
|
|
||||||
//always enable for nintendont
|
|
||||||
u8 NMM = min((u32)m_gcfg2.getInt(id, "dml_nmm", m_cfg.getInt(GC_DOMAIN, "dml_nmm", 1)), ARRAY_SIZE(CMenu::_NMM) - 1u);
|
|
||||||
NMM = (NMM == 0) ? m_cfg.getInt(GC_DOMAIN, "dml_nmm", 1) : NMM-1;
|
|
||||||
|
|
||||||
m_cfg.setString(GC_DOMAIN, "current_item", id);
|
|
||||||
|
|
||||||
if(loader == 0) //auto selected
|
|
||||||
{
|
{
|
||||||
if(IsOnWiiU())
|
bool memcard_emu = m_gcfg2.getBool(id, "devo_memcard_emu", false);
|
||||||
{
|
bool activity_led = m_gcfg2.getBool(id, "led", false);
|
||||||
if(m_nintendont_installed)
|
DEVO_GetLoader(m_dataDir.c_str());
|
||||||
loader = 2;
|
DEVO_SetOptions(path, id, memcard_emu, widescreen, activity_led, m_use_wifi_gecko);
|
||||||
else if(m_devo_installed)
|
|
||||||
loader = 1;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
gprintf("Auto installing MIOS\n");
|
|
||||||
const char *mios_wad = NULL;
|
|
||||||
_showWaitMessage();
|
|
||||||
if(_QF_Game(id) == true)
|
|
||||||
{
|
|
||||||
if(currentPartition == SD && (m_mios_ver != 2 || m_sd_dm == false))
|
|
||||||
mios_wad = fmt("%s/qfsd.wad", m_miosDir.c_str());
|
|
||||||
else if(currentPartition != SD && (m_mios_ver != 2 || m_sd_dm == true))
|
|
||||||
mios_wad = fmt("%s/qfusb.wad", m_miosDir.c_str());
|
|
||||||
}
|
|
||||||
else if(disc == false)
|
|
||||||
{
|
|
||||||
if(currentPartition == SD && (m_mios_ver != 1 || m_sd_dm == false))
|
|
||||||
mios_wad = fmt("%s/dml.wad", m_miosDir.c_str());
|
|
||||||
else if(currentPartition != SD && (m_mios_ver != 1 || m_sd_dm == true))
|
|
||||||
mios_wad = fmt("%s/dm.wad", m_miosDir.c_str());
|
|
||||||
}
|
|
||||||
else if(m_mios_ver != 0)
|
|
||||||
mios_wad = fmt("%s/mios.wad", m_miosDir.c_str());
|
|
||||||
if(mios_wad != NULL && fsop_FileExist(mios_wad))
|
|
||||||
_Wad(mios_wad, true);//install mios
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//copy DML game from USB to SD if needed for DML
|
|
||||||
if(disc == false && loader == 0 && currentPartition != SD && m_sd_dm == true && strcasestr(hdr->path, ".iso") == NULL)
|
|
||||||
{
|
|
||||||
bool foundOnSD = false;
|
|
||||||
ListGenerator SD_List;
|
|
||||||
string gameDir(fmt(GC_GAMES_DIR, DeviceName[SD]));
|
|
||||||
string cacheDir(fmt("%s/%s_gamecube.db", m_listCacheDir.c_str(), DeviceName[SD]));
|
|
||||||
SD_List.CreateList(COVERFLOW_GAMECUBE, SD, gameDir,
|
|
||||||
stringToVector(".iso|root", '|'), cacheDir, false);
|
|
||||||
for(vector<dir_discHdr>::iterator List = SD_List.begin(); List != SD_List.end(); List++)
|
|
||||||
{
|
|
||||||
if(strncasecmp(hdr->id, List->id, 6) == 0)
|
|
||||||
{
|
|
||||||
foundOnSD = true;
|
|
||||||
memset(hdr->path, 0, sizeof(hdr->path));
|
|
||||||
strncpy(hdr->path, List->path, sizeof(hdr->path));
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
SD_List.clear();
|
|
||||||
if(!foundOnSD)
|
|
||||||
{
|
|
||||||
if(_wbfsOp(CMenu::WO_COPY_GAME))
|
|
||||||
{
|
|
||||||
char folder[50];
|
|
||||||
string GC_Path(hdr->path);
|
|
||||||
if(strcasestr(GC_Path.c_str(), "boot.bin") != NULL)
|
|
||||||
GC_Path.erase(GC_Path.end() - 13, GC_Path.end());
|
|
||||||
else
|
|
||||||
GC_Path.erase(GC_Path.end() - 9, GC_Path.end());
|
|
||||||
u32 Place = GC_Path.find_last_of("/");
|
|
||||||
GC_Path = hdr->path;
|
|
||||||
memset(hdr->path, 0, sizeof(hdr->path));
|
|
||||||
snprintf(folder, sizeof(folder), GC_GAMES_DIR, DeviceName[SD]);
|
|
||||||
snprintf(hdr->path, sizeof(hdr->path), "%s/%s", folder, &GC_Path[Place]+1);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
currentPartition = SD;
|
|
||||||
}
|
|
||||||
_launchShutdown();
|
|
||||||
if(disc == true)
|
|
||||||
{
|
|
||||||
if(loader == 0)
|
|
||||||
DML_New_SetBootDiscOption(m_new_dm_cfg);
|
|
||||||
else if(loader == 2)
|
|
||||||
{
|
|
||||||
NMM = m_cfg.getInt(GC_DOMAIN, "dml_nmm", 1);
|
|
||||||
Nintendont_BootDisc(NMM, widescreen, usb_hid, native_ctl, deflicker);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if(loader == 0)
|
|
||||||
{
|
|
||||||
char CheatPath[256];
|
|
||||||
u8 nodisc = min((u32)m_gcfg2.getInt(id, "no_disc_patch", 0), ARRAY_SIZE(CMenu::_NoDVD) - 1u);
|
|
||||||
nodisc = (nodisc == 0) ? m_cfg.getInt(GC_DOMAIN, "no_disc_patch", 0) : nodisc-1;
|
|
||||||
bool cheats = m_gcfg2.testOptBool(id, "cheat", m_cfg.getBool(GC_DOMAIN, "cheat", false));
|
|
||||||
bool DML_debug = (m_gcfg2.getInt(id, "debugger", 0) == 1);
|
|
||||||
bool screenshot = m_gcfg2.getBool(id, "screenshot", false);
|
|
||||||
/* Generate gct path */
|
|
||||||
char GC_Path[1024];
|
|
||||||
GC_Path[1023] = '\0';
|
|
||||||
strncpy(GC_Path, path, 1023);
|
|
||||||
if(strcasestr(path, "boot.bin") != NULL)
|
|
||||||
{
|
|
||||||
*strrchr(GC_Path, '/') = '\0'; //boot.bin
|
|
||||||
*(strrchr(GC_Path, '/')+1) = '\0'; //sys
|
|
||||||
}
|
|
||||||
else
|
|
||||||
*(strrchr(GC_Path, '/')+1) = '\0'; //iso path
|
|
||||||
const char *NewCheatPath = fmt("%s%s.gct", GC_Path, id);
|
|
||||||
if(cheats)
|
|
||||||
snprintf(CheatPath, sizeof(CheatPath), "%s/%s", m_cheatDir.c_str(), fmt("%s.gct", id));
|
|
||||||
const char *newPath = strcasestr(path, "boot.bin") == NULL ? strchr(path, '/') : strchr(GC_Path, '/');
|
|
||||||
if(m_new_dml)
|
|
||||||
DML_New_SetOptions(newPath, CheatPath, NewCheatPath, DeviceName[currentPartition],
|
|
||||||
cheats, DML_debug, NMM, nodisc, videoMode, videoSetting, widescreen, m_new_dm_cfg, activity_led, screenshot);
|
|
||||||
else
|
|
||||||
DML_Old_SetOptions(newPath);
|
|
||||||
if(!nodisc || !m_new_dml)
|
|
||||||
WDVD_StopMotor();
|
|
||||||
}
|
}
|
||||||
else if(loader == 1)
|
else if(loader == 1)
|
||||||
DEVO_GetLoader(m_dataDir.c_str());
|
|
||||||
else if(loader == 2)
|
|
||||||
{
|
{
|
||||||
bool NIN_Debugger = (m_gcfg2.getInt(id, "debugger", 0) == 2);
|
u8 emuMC = min((u32)m_gcfg2.getInt(id, "emu_memcard", m_cfg.getInt(GC_DOMAIN, "emu_memcard", 1)), ARRAY_SIZE(CMenu::_NinEmuCard) - 1u);
|
||||||
bool screenshot = m_gcfg2.getBool(id, "screenshot", false);
|
emuMC = (emuMC == 0) ? m_cfg.getInt(GC_DOMAIN, "emu_memcard", 1) : emuMC-1;
|
||||||
bool cheats = m_gcfg2.testOptBool(id, "cheat", m_cfg.getBool(GC_DOMAIN, "cheat", false));
|
bool usb_hid = m_gcfg2.getBool(id, "USB_HID", m_cfg.getBool(GC_DOMAIN, "USB_HID", false));
|
||||||
/* Generate gct path */
|
bool native_ctl = m_gcfg2.getBool(id, "NATIVE_CTL", m_cfg.getBool(GC_DOMAIN, "NATIVE_CTL", false));
|
||||||
char GC_Path[256];
|
bool deflicker = m_gcfg2.getBool(id, "Deflicker", m_cfg.getBool(GC_DOMAIN, "Deflicker", false));
|
||||||
GC_Path[255] = '\0';
|
if(disc == true)
|
||||||
strncpy(GC_Path, path, 255);
|
|
||||||
if(strcasestr(path, "boot.bin") != NULL)
|
|
||||||
{
|
{
|
||||||
*strrchr(GC_Path, '/') = '\0'; //boot.bin
|
emuMC = m_cfg.getInt(GC_DOMAIN, "emu_memcard", 1);
|
||||||
*(strrchr(GC_Path, '/')+1) = '\0'; //sys
|
Nintendont_BootDisc(emuMC, widescreen, usb_hid, native_ctl, deflicker);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
*(strrchr(GC_Path, '/')+1) = '\0'; //iso path
|
{
|
||||||
//const char *NewPath = fmt("%s%s.gct", GC_Path, id);
|
bool NIN_Debugger = (m_gcfg2.getInt(id, "debugger", 0) == 2);
|
||||||
char CheatPath[256];
|
bool wiiu_widescreen = m_gcfg2.getBool(id, "wiiu_widescreen", false);
|
||||||
char NewCheatPath[256];
|
bool cheats = m_gcfg2.testOptBool(id, "cheat", m_cfg.getBool(GC_DOMAIN, "cheat", false));
|
||||||
snprintf(CheatPath, sizeof(CheatPath), "%s/%s", m_cheatDir.c_str(), fmt("%s.gct", id));
|
/* Generate gct path */
|
||||||
snprintf(NewCheatPath, sizeof(NewCheatPath), "%s%s.gct",GC_Path,id);
|
char GC_Path[256];
|
||||||
|
GC_Path[255] = '\0';
|
||||||
Nintendont_SetOptions(path, id, CheatPath,NewCheatPath,DeviceName[currentPartition],
|
strncpy(GC_Path, path, 255);
|
||||||
cheats, NMM, videoMode,videoSetting, widescreen,usb_hid,native_ctl,deflicker,screenshot,NIN_Debugger);
|
if(strcasestr(path, "boot.bin") != NULL)//games/title [id]/sys/boot.bin
|
||||||
|
{
|
||||||
|
*strrchr(GC_Path, '/') = '\0'; //erase /boot.bin
|
||||||
|
*(strrchr(GC_Path, '/')+1) = '\0'; //erase sys folder
|
||||||
|
}
|
||||||
|
else //games/title [id]/game.iso
|
||||||
|
*(strrchr(GC_Path, '/')+1) = '\0'; //erase game.iso
|
||||||
|
char CheatPath[256];// wiiflow cheats path - sd:/wiiflow/cheats/id.gct
|
||||||
|
char NewCheatPath[256];// nintendont cheat path - games/title [id]/id.gct
|
||||||
|
snprintf(CheatPath, sizeof(CheatPath), "%s/%s", m_cheatDir.c_str(), fmt("%s.gct", id));
|
||||||
|
snprintf(NewCheatPath, sizeof(NewCheatPath), "%s%s.gct",GC_Path,id);
|
||||||
|
|
||||||
|
Nintendont_SetOptions(path, id, CheatPath, NewCheatPath, DeviceName[currentPartition],
|
||||||
|
cheats, emuMC, videoMode, widescreen, usb_hid, native_ctl, deflicker, wiiu_widescreen, NIN_Debugger);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
m_gcfg1.save(true);
|
m_gcfg1.save(true);
|
||||||
m_gcfg2.save(true);
|
m_gcfg2.save(true);
|
||||||
@ -1113,28 +964,19 @@ void CMenu::_launchGC(dir_discHdr *hdr, bool disc)
|
|||||||
m_cfg.save(true);
|
m_cfg.save(true);
|
||||||
cleanup();
|
cleanup();
|
||||||
|
|
||||||
GC_SetVideoMode(videoMode, (disc ? 1 : videoSetting), loader);
|
GC_SetVideoMode(videoMode, loader);
|
||||||
GC_SetLanguage(GClanguage, loader);
|
GC_SetLanguage(GClanguage, loader);
|
||||||
/* NTSC-J Patch by FIX94 */
|
/* NTSC-J Patch by FIX94 */
|
||||||
if(id[3] == 'J')
|
if(id[3] == 'J')
|
||||||
*HW_PPCSPEED = 0x0002A9E0;
|
*HW_PPCSPEED = 0x0002A9E0;
|
||||||
|
|
||||||
if(loader == 0)
|
if(loader == 0)
|
||||||
{
|
|
||||||
DML_New_WriteOptions();
|
|
||||||
ShutdownBeforeExit();
|
|
||||||
WII_Initialize();
|
|
||||||
WII_LaunchTitle(0x100000100LL);
|
|
||||||
}
|
|
||||||
else if(loader == 1)
|
|
||||||
{
|
{
|
||||||
if(AHBRPOT_Patched())
|
if(AHBRPOT_Patched())
|
||||||
loadIOS(58, false);
|
loadIOS(58, false);
|
||||||
else //use cIOS instead to make sure Devolution works anyways
|
else //use cIOS instead to make sure Devolution works anyways
|
||||||
loadIOS(mainIOS, false);
|
loadIOS(mainIOS, false);
|
||||||
ShutdownBeforeExit();
|
ShutdownBeforeExit();
|
||||||
DEVO_SetOptions(path, id, memcard_emu,
|
|
||||||
widescreen, activity_led, m_use_wifi_gecko);
|
|
||||||
DEVO_Boot();
|
DEVO_Boot();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -1425,7 +1267,7 @@ void CMenu::_launchGame(dir_discHdr *hdr, bool dvd)
|
|||||||
/* Check disc */
|
/* Check disc */
|
||||||
if(Disc_IsWii() < 0)
|
if(Disc_IsWii() < 0)
|
||||||
{
|
{
|
||||||
if (Disc_IsGC() < 0)
|
if(Disc_IsGC() < 0)
|
||||||
{
|
{
|
||||||
error(_t("errgame9", L"This is not a Wii or GC disc"));
|
error(_t("errgame9", L"This is not a Wii or GC disc"));
|
||||||
Sys_Exit();
|
Sys_Exit();
|
||||||
@ -1435,8 +1277,12 @@ void CMenu::_launchGame(dir_discHdr *hdr, bool dvd)
|
|||||||
/* Read GC disc header */
|
/* Read GC disc header */
|
||||||
Disc_ReadGCHeader(&gc_hdr);
|
Disc_ReadGCHeader(&gc_hdr);
|
||||||
memcpy(hdr->id, gc_hdr.id, 6);
|
memcpy(hdr->id, gc_hdr.id, 6);
|
||||||
|
|
||||||
/* Launching GC Game */
|
/* Launching GC Game */
|
||||||
_launchGC(hdr, true);
|
if(m_nintendont_installed)
|
||||||
|
_launchGC(hdr, true);
|
||||||
|
else
|
||||||
|
error(_t("errgame12", L"Nintendont not found! Can't launch GC Disc."));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1764,14 +1610,12 @@ void CMenu::_gameSoundThread(CMenu *m)
|
|||||||
}
|
}
|
||||||
if(custom_bnr_file == NULL && GameHdr->type == TYPE_GC_GAME)
|
if(custom_bnr_file == NULL && GameHdr->type == TYPE_GC_GAME)
|
||||||
{
|
{
|
||||||
if(m->_QF_Game(GameHdr->id) == false)
|
GC_Disc_Reader.init(GameHdr->path);
|
||||||
{
|
u8 *opening_bnr = GC_Disc_Reader.GetGameCubeBanner();
|
||||||
GC_Disc_Reader.init(GameHdr->path);
|
if(opening_bnr != NULL)
|
||||||
u8 *opening_bnr = GC_Disc_Reader.GetGameCubeBanner();
|
m_banner.CreateGCBanner(opening_bnr, m->m_wbf1_font, m->m_wbf2_font, GameHdr->title);
|
||||||
if(opening_bnr != NULL)
|
GC_Disc_Reader.clear();
|
||||||
m_banner.CreateGCBanner(opening_bnr, m->m_wbf1_font, m->m_wbf2_font, GameHdr->title);
|
|
||||||
GC_Disc_Reader.clear();
|
|
||||||
}
|
|
||||||
m->m_gameSound.Load(gc_ogg, gc_ogg_size, false);
|
m->m_gameSound.Load(gc_ogg, gc_ogg_size, false);
|
||||||
if(m->m_gameSound.IsLoaded())
|
if(m->m_gameSound.IsLoaded())
|
||||||
m->m_gamesound_changed = true;
|
m->m_gamesound_changed = true;
|
||||||
|
@ -29,9 +29,9 @@ void CMenu::_hideMain(bool instant)
|
|||||||
m_btnMgr.hide(m_mainBtnQuit, instant);
|
m_btnMgr.hide(m_mainBtnQuit, instant);
|
||||||
m_btnMgr.hide(m_mainBtnHomebrew, instant);
|
m_btnMgr.hide(m_mainBtnHomebrew, instant);
|
||||||
m_btnMgr.hide(m_mainBtnChannel, instant);
|
m_btnMgr.hide(m_mainBtnChannel, instant);
|
||||||
m_btnMgr.hide(m_mainBtnUsb, instant);
|
m_btnMgr.hide(m_mainBtnWii, instant);
|
||||||
m_btnMgr.hide(m_mainBtnDML, instant);
|
m_btnMgr.hide(m_mainBtnGamecube, instant);
|
||||||
m_btnMgr.hide(m_mainBtnEmu, instant);
|
m_btnMgr.hide(m_mainBtnPlugin, instant);
|
||||||
m_btnMgr.hide(m_mainBtnDVD, instant);
|
m_btnMgr.hide(m_mainBtnDVD, instant);
|
||||||
m_btnMgr.hide(m_mainBtnInit, instant);
|
m_btnMgr.hide(m_mainBtnInit, instant);
|
||||||
m_btnMgr.hide(m_mainBtnInit2, instant);
|
m_btnMgr.hide(m_mainBtnInit2, instant);
|
||||||
@ -72,41 +72,41 @@ start_main:
|
|||||||
if(show_channel)
|
if(show_channel)
|
||||||
m_btnMgr.show(m_mainBtnChannel);
|
m_btnMgr.show(m_mainBtnChannel);
|
||||||
else if(show_emu)
|
else if(show_emu)
|
||||||
m_btnMgr.show(m_mainBtnEmu);
|
m_btnMgr.show(m_mainBtnPlugin);
|
||||||
else if(show_homebrew)
|
else if(show_homebrew)
|
||||||
m_btnMgr.show(m_mainBtnHomebrew);
|
m_btnMgr.show(m_mainBtnHomebrew);
|
||||||
else
|
else
|
||||||
m_btnMgr.show(m_mainBtnUsb);
|
m_btnMgr.show(m_mainBtnWii);
|
||||||
break;
|
break;
|
||||||
case COVERFLOW_CHANNEL:
|
case COVERFLOW_CHANNEL:
|
||||||
if(show_emu)
|
if(show_emu)
|
||||||
m_btnMgr.show(m_mainBtnEmu);
|
m_btnMgr.show(m_mainBtnPlugin);
|
||||||
else if(show_homebrew)
|
else if(show_homebrew)
|
||||||
m_btnMgr.show(m_mainBtnHomebrew);
|
m_btnMgr.show(m_mainBtnHomebrew);
|
||||||
else
|
else
|
||||||
m_btnMgr.show(m_mainBtnUsb);
|
m_btnMgr.show(m_mainBtnWii);
|
||||||
break;
|
break;
|
||||||
case COVERFLOW_MAX:
|
case COVERFLOW_MAX:
|
||||||
case COVERFLOW_HOMEBREW:
|
case COVERFLOW_HOMEBREW:
|
||||||
m_btnMgr.show(m_mainBtnUsb);
|
m_btnMgr.show(m_mainBtnWii);
|
||||||
break;
|
break;
|
||||||
case COVERFLOW_PLUGIN:
|
case COVERFLOW_PLUGIN:
|
||||||
if(show_homebrew)
|
if(show_homebrew)
|
||||||
m_btnMgr.show(m_mainBtnHomebrew);
|
m_btnMgr.show(m_mainBtnHomebrew);
|
||||||
else
|
else
|
||||||
m_btnMgr.show(m_mainBtnUsb);
|
m_btnMgr.show(m_mainBtnWii);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
if(show_gamecube)
|
if(show_gamecube)
|
||||||
m_btnMgr.show(m_mainBtnDML);
|
m_btnMgr.show(m_mainBtnGamecube);
|
||||||
else if(show_channel)
|
else if(show_channel)
|
||||||
m_btnMgr.show(m_mainBtnChannel);
|
m_btnMgr.show(m_mainBtnChannel);
|
||||||
else if(show_emu)
|
else if(show_emu)
|
||||||
m_btnMgr.show(m_mainBtnEmu);
|
m_btnMgr.show(m_mainBtnPlugin);
|
||||||
else if(show_homebrew)
|
else if(show_homebrew)
|
||||||
m_btnMgr.show(m_mainBtnHomebrew);
|
m_btnMgr.show(m_mainBtnHomebrew);
|
||||||
else
|
else
|
||||||
m_btnMgr.show(m_mainBtnUsb);
|
m_btnMgr.show(m_mainBtnWii);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -120,7 +120,7 @@ start_main:
|
|||||||
{
|
{
|
||||||
case COVERFLOW_WII:
|
case COVERFLOW_WII:
|
||||||
case COVERFLOW_GAMECUBE:
|
case COVERFLOW_GAMECUBE:
|
||||||
// m_btnMgr.setText(m_mainLblInit, _t("main2", L"Sorry, could not find any games. Please click Install to install games or Select partition to change the device/partition where your games are."));
|
// m_btnMgr.setText(m_mainLblInit, _t("main2", L"No games found! Please select partition to change the device/partition or click Install to install a game."));
|
||||||
m_btnMgr.setText(m_mainLblInit, _t("main2", L"Welcome to WiiFlow. I have not found any games. Click Install to install games, or Select partition to select your partition type."));
|
m_btnMgr.setText(m_mainLblInit, _t("main2", L"Welcome to WiiFlow. I have not found any games. Click Install to install games, or Select partition to select your partition type."));
|
||||||
m_btnMgr.show(m_mainBtnInit);
|
m_btnMgr.show(m_mainBtnInit);
|
||||||
m_btnMgr.show(m_mainBtnInit2);
|
m_btnMgr.show(m_mainBtnInit2);
|
||||||
@ -129,7 +129,6 @@ start_main:
|
|||||||
case COVERFLOW_CHANNEL:
|
case COVERFLOW_CHANNEL:
|
||||||
if(NANDemuView)
|
if(NANDemuView)
|
||||||
{
|
{
|
||||||
//"sorry, could not find your emu NAND. Would you like me to create one for you?
|
|
||||||
_hideMain();
|
_hideMain();
|
||||||
if(!_AutoCreateNand())
|
if(!_AutoCreateNand())
|
||||||
{
|
{
|
||||||
@ -141,13 +140,13 @@ start_main:
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case COVERFLOW_HOMEBREW:
|
case COVERFLOW_HOMEBREW:
|
||||||
// m_btnMgr.setText(m_mainLblInit, _t("main4", L"Sorry, could not find any homebrew apps. Try changing the partition to select your device/partition where they are."));
|
// m_btnMgr.setText(m_mainLblInit, _t("main4", L"No homebrew apps found! Try changing the partition to select the correct device/partition."));
|
||||||
m_btnMgr.setText(m_mainLblInit, _t("main4", L"Welcome to WiiFlow. I have not found any homebrew apps. Select partition to select your partition type."));
|
m_btnMgr.setText(m_mainLblInit, _t("main4", L"Welcome to WiiFlow. I have not found any homebrew apps. Select partition to select your partition type."));
|
||||||
m_btnMgr.show(m_mainBtnInit2);
|
m_btnMgr.show(m_mainBtnInit2);
|
||||||
m_btnMgr.show(m_mainLblInit);
|
m_btnMgr.show(m_mainLblInit);
|
||||||
break;
|
break;
|
||||||
case COVERFLOW_PLUGIN:
|
case COVERFLOW_PLUGIN:
|
||||||
// m_btnMgr.setText(m_mainLblInit, _t("main5", L"Sorry, could not find any roms or items for your plugin. Try changing the partition to select your device/partition where they are."));
|
// m_btnMgr.setText(m_mainLblInit, _t("main5", L"No roms/items for your plugin found! Try changing the partition to select the correct device/partition."));
|
||||||
m_btnMgr.setText(m_mainLblInit, _t("main5", L"Welcome to WiiFlow. I have not found any plugins. Select partition to select your partition type."));
|
m_btnMgr.setText(m_mainLblInit, _t("main5", L"Welcome to WiiFlow. I have not found any plugins. Select partition to select your partition type."));
|
||||||
m_btnMgr.show(m_mainBtnInit2);
|
m_btnMgr.show(m_mainBtnInit2);
|
||||||
m_btnMgr.show(m_mainLblInit);
|
m_btnMgr.show(m_mainLblInit);
|
||||||
@ -250,7 +249,7 @@ int CMenu::main(void)
|
|||||||
show_homebrew = (!m_cfg.getBool(HOMEBREW_DOMAIN, "disable", false) && (parental_homebrew || !m_locked));
|
show_homebrew = (!m_cfg.getBool(HOMEBREW_DOMAIN, "disable", false) && (parental_homebrew || !m_locked));
|
||||||
show_channel = !m_cfg.getBool("GENERAL", "hidechannel", false);
|
show_channel = !m_cfg.getBool("GENERAL", "hidechannel", false);
|
||||||
show_emu = !m_cfg.getBool(PLUGIN_DOMAIN, "disable", false);
|
show_emu = !m_cfg.getBool(PLUGIN_DOMAIN, "disable", false);
|
||||||
show_gamecube = (m_show_dml || m_devo_installed || m_nintendont_installed);
|
show_gamecube = m_show_gc;
|
||||||
m_use_source = m_cfg.getBool("GENERAL", "use_source", true);
|
m_use_source = m_cfg.getBool("GENERAL", "use_source", true);
|
||||||
bool bheld = false;
|
bool bheld = false;
|
||||||
bool bUsed = false;
|
bool bUsed = false;
|
||||||
@ -295,6 +294,7 @@ int CMenu::main(void)
|
|||||||
WDVD_GetCoverStatus(&disc_check);
|
WDVD_GetCoverStatus(&disc_check);
|
||||||
/* Main Loop */
|
/* Main Loop */
|
||||||
_mainLoopCommon(true);
|
_mainLoopCommon(true);
|
||||||
|
//this will make the source menu/flow display. what happens when a sourceflow cover is selected is taken care of later.
|
||||||
if(bheld && !BTN_B_HELD)//if button b was held and now released
|
if(bheld && !BTN_B_HELD)//if button b was held and now released
|
||||||
{
|
{
|
||||||
bheld = false;
|
bheld = false;
|
||||||
@ -370,7 +370,7 @@ int CMenu::main(void)
|
|||||||
if(BTN_B_HELD)
|
if(BTN_B_HELD)
|
||||||
bUsed = true;
|
bUsed = true;
|
||||||
}
|
}
|
||||||
else if(m_btnMgr.selected(m_mainBtnChannel) || m_btnMgr.selected(m_mainBtnUsb) || m_btnMgr.selected(m_mainBtnDML) || m_btnMgr.selected(m_mainBtnHomebrew) || m_btnMgr.selected(m_mainBtnEmu))
|
else if(m_btnMgr.selected(m_mainBtnChannel) || m_btnMgr.selected(m_mainBtnWii) || m_btnMgr.selected(m_mainBtnGamecube) || m_btnMgr.selected(m_mainBtnHomebrew) || m_btnMgr.selected(m_mainBtnPlugin))
|
||||||
{
|
{
|
||||||
if(m_current_view == COVERFLOW_WII)
|
if(m_current_view == COVERFLOW_WII)
|
||||||
m_current_view = show_gamecube ? COVERFLOW_GAMECUBE : (show_channel ? COVERFLOW_CHANNEL : (show_emu ? COVERFLOW_PLUGIN : (show_homebrew ? COVERFLOW_HOMEBREW : COVERFLOW_WII)));
|
m_current_view = show_gamecube ? COVERFLOW_GAMECUBE : (show_channel ? COVERFLOW_CHANNEL : (show_emu ? COVERFLOW_PLUGIN : (show_homebrew ? COVERFLOW_HOMEBREW : COVERFLOW_WII)));
|
||||||
@ -453,7 +453,7 @@ int CMenu::main(void)
|
|||||||
/* Create Fake Header */
|
/* Create Fake Header */
|
||||||
dir_discHdr hdr;
|
dir_discHdr hdr;
|
||||||
memset(&hdr, 0, sizeof(dir_discHdr));
|
memset(&hdr, 0, sizeof(dir_discHdr));
|
||||||
memcpy(&hdr.id, "dvddvd", 6);
|
memcpy(&hdr.id, "dvddvd", 6);//only the id is used for a disc and this is changed in _launchGame.
|
||||||
/* Boot the Disc */
|
/* Boot the Disc */
|
||||||
_launchGame(&hdr, true);
|
_launchGame(&hdr, true);
|
||||||
_showMain();
|
_showMain();
|
||||||
@ -501,7 +501,7 @@ int CMenu::main(void)
|
|||||||
_initCF();
|
_initCF();
|
||||||
}
|
}
|
||||||
//Events to show source menu or sourceflow if B on mode icon
|
//Events to show source menu or sourceflow if B on mode icon
|
||||||
else if(m_btnMgr.selected(m_mainBtnChannel) || m_btnMgr.selected(m_mainBtnUsb) || m_btnMgr.selected(m_mainBtnDML)|| m_btnMgr.selected(m_mainBtnEmu) || m_btnMgr.selected(m_mainBtnHomebrew))
|
else if(m_btnMgr.selected(m_mainBtnChannel) || m_btnMgr.selected(m_mainBtnWii) || m_btnMgr.selected(m_mainBtnGamecube)|| m_btnMgr.selected(m_mainBtnPlugin) || m_btnMgr.selected(m_mainBtnHomebrew))
|
||||||
{
|
{
|
||||||
if(!m_use_source)//only use if B to source menu not enabled
|
if(!m_use_source)//only use if B to source menu not enabled
|
||||||
{
|
{
|
||||||
@ -747,41 +747,41 @@ int CMenu::main(void)
|
|||||||
if(show_channel)
|
if(show_channel)
|
||||||
m_btnMgr.show(m_mainBtnChannel);
|
m_btnMgr.show(m_mainBtnChannel);
|
||||||
else if(show_emu)
|
else if(show_emu)
|
||||||
m_btnMgr.show(m_mainBtnEmu);
|
m_btnMgr.show(m_mainBtnPlugin);
|
||||||
else if(show_homebrew)
|
else if(show_homebrew)
|
||||||
m_btnMgr.show(m_mainBtnHomebrew);
|
m_btnMgr.show(m_mainBtnHomebrew);
|
||||||
else
|
else
|
||||||
m_btnMgr.show(m_mainBtnUsb);
|
m_btnMgr.show(m_mainBtnWii);
|
||||||
break;
|
break;
|
||||||
case COVERFLOW_CHANNEL:
|
case COVERFLOW_CHANNEL:
|
||||||
if(show_emu)
|
if(show_emu)
|
||||||
m_btnMgr.show(m_mainBtnEmu);
|
m_btnMgr.show(m_mainBtnPlugin);
|
||||||
else if(show_homebrew)
|
else if(show_homebrew)
|
||||||
m_btnMgr.show(m_mainBtnHomebrew);
|
m_btnMgr.show(m_mainBtnHomebrew);
|
||||||
else
|
else
|
||||||
m_btnMgr.show(m_mainBtnUsb);
|
m_btnMgr.show(m_mainBtnWii);
|
||||||
break;
|
break;
|
||||||
case COVERFLOW_PLUGIN:
|
case COVERFLOW_PLUGIN:
|
||||||
if(show_homebrew)
|
if(show_homebrew)
|
||||||
m_btnMgr.show(m_mainBtnHomebrew);
|
m_btnMgr.show(m_mainBtnHomebrew);
|
||||||
else
|
else
|
||||||
m_btnMgr.show(m_mainBtnUsb);
|
m_btnMgr.show(m_mainBtnWii);
|
||||||
break;
|
break;
|
||||||
case COVERFLOW_HOMEBREW:
|
case COVERFLOW_HOMEBREW:
|
||||||
case COVERFLOW_MAX:
|
case COVERFLOW_MAX:
|
||||||
m_btnMgr.show(m_mainBtnUsb);
|
m_btnMgr.show(m_mainBtnWii);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
if(show_gamecube)
|
if(show_gamecube)
|
||||||
m_btnMgr.show(m_mainBtnDML);
|
m_btnMgr.show(m_mainBtnGamecube);
|
||||||
else if(show_channel)
|
else if(show_channel)
|
||||||
m_btnMgr.show(m_mainBtnChannel);
|
m_btnMgr.show(m_mainBtnChannel);
|
||||||
else if(show_emu)
|
else if(show_emu)
|
||||||
m_btnMgr.show(m_mainBtnEmu);
|
m_btnMgr.show(m_mainBtnPlugin);
|
||||||
else if(show_homebrew)
|
else if(show_homebrew)
|
||||||
m_btnMgr.show(m_mainBtnHomebrew);
|
m_btnMgr.show(m_mainBtnHomebrew);
|
||||||
else
|
else
|
||||||
m_btnMgr.show(m_mainBtnUsb);
|
m_btnMgr.show(m_mainBtnWii);
|
||||||
}
|
}
|
||||||
m_btnMgr.show(m_mainLblUser[2]);
|
m_btnMgr.show(m_mainLblUser[2]);
|
||||||
m_btnMgr.show(m_mainLblUser[3]);
|
m_btnMgr.show(m_mainLblUser[3]);
|
||||||
@ -790,9 +790,9 @@ int CMenu::main(void)
|
|||||||
{
|
{
|
||||||
m_btnMgr.hide(m_mainBtnHomebrew);
|
m_btnMgr.hide(m_mainBtnHomebrew);
|
||||||
m_btnMgr.hide(m_mainBtnChannel);
|
m_btnMgr.hide(m_mainBtnChannel);
|
||||||
m_btnMgr.hide(m_mainBtnUsb);
|
m_btnMgr.hide(m_mainBtnWii);
|
||||||
m_btnMgr.hide(m_mainBtnDML);
|
m_btnMgr.hide(m_mainBtnGamecube);
|
||||||
m_btnMgr.hide(m_mainBtnEmu);
|
m_btnMgr.hide(m_mainBtnPlugin);
|
||||||
m_btnMgr.hide(m_mainLblUser[2]);
|
m_btnMgr.hide(m_mainLblUser[2]);
|
||||||
m_btnMgr.hide(m_mainLblUser[3]);
|
m_btnMgr.hide(m_mainLblUser[3]);
|
||||||
}
|
}
|
||||||
@ -852,14 +852,14 @@ void CMenu::_initMainMenu()
|
|||||||
TexData texInfoS;
|
TexData texInfoS;
|
||||||
TexData texConfig;
|
TexData texConfig;
|
||||||
TexData texConfigS;
|
TexData texConfigS;
|
||||||
TexData texDML;
|
TexData texGamecube;
|
||||||
TexData texDMLs;
|
TexData texGamecubes;
|
||||||
TexData texEmu;
|
TexData texPlugin;
|
||||||
TexData texEmus;
|
TexData texPlugins;
|
||||||
TexData texDVD;
|
TexData texDVD;
|
||||||
TexData texDVDs;
|
TexData texDVDs;
|
||||||
TexData texUsb;
|
TexData texWii;
|
||||||
TexData texUsbs;
|
TexData texWiis;
|
||||||
TexData texChannel;
|
TexData texChannel;
|
||||||
TexData texChannels;
|
TexData texChannels;
|
||||||
TexData texHomebrew;
|
TexData texHomebrew;
|
||||||
@ -887,12 +887,12 @@ void CMenu::_initMainMenu()
|
|||||||
TexHandle.fromImageFile(texConfigS, fmt("%s/btnconfigs.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texConfigS, fmt("%s/btnconfigs.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texDVD, fmt("%s/btndvd.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texDVD, fmt("%s/btndvd.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texDVDs, fmt("%s/btndvds.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texDVDs, fmt("%s/btndvds.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texUsb, fmt("%s/btnusb.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texWii, fmt("%s/btnusb.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texUsbs, fmt("%s/btnusbs.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texWiis, fmt("%s/btnusbs.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texDML, fmt("%s/btndml.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texGamecube, fmt("%s/btndml.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texDMLs, fmt("%s/btndmls.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texGamecubes, fmt("%s/btndmls.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texEmu, fmt("%s/btnemu.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texPlugin, fmt("%s/btnemu.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texEmus, fmt("%s/btnemus.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texPlugins, fmt("%s/btnemus.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texChannel, fmt("%s/btnchannel.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texChannel, fmt("%s/btnchannel.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texChannels, fmt("%s/btnchannels.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texChannels, fmt("%s/btnchannels.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texHomebrew, fmt("%s/btnhomebrew.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texHomebrew, fmt("%s/btnhomebrew.png", m_imgsDir.c_str()));
|
||||||
@ -913,9 +913,9 @@ void CMenu::_initMainMenu()
|
|||||||
m_mainBtnQuit = _addPicButton("MAIN/QUIT_BTN", texQuit, texQuitS, 570, 400, 48, 48);
|
m_mainBtnQuit = _addPicButton("MAIN/QUIT_BTN", texQuit, texQuitS, 570, 400, 48, 48);
|
||||||
m_mainBtnChannel = _addPicButton("MAIN/CHANNEL_BTN", texChannel, texChannels, 520, 400, 48, 48);
|
m_mainBtnChannel = _addPicButton("MAIN/CHANNEL_BTN", texChannel, texChannels, 520, 400, 48, 48);
|
||||||
m_mainBtnHomebrew = _addPicButton("MAIN/HOMEBREW_BTN", texHomebrew, texHomebrews, 520, 400, 48, 48);
|
m_mainBtnHomebrew = _addPicButton("MAIN/HOMEBREW_BTN", texHomebrew, texHomebrews, 520, 400, 48, 48);
|
||||||
m_mainBtnUsb = _addPicButton("MAIN/USB_BTN", texUsb, texUsbs, 520, 400, 48, 48);
|
m_mainBtnWii = _addPicButton("MAIN/USB_BTN", texWii, texWiis, 520, 400, 48, 48);
|
||||||
m_mainBtnDML = _addPicButton("MAIN/DML_BTN", texDML, texDMLs, 520, 400, 48, 48);
|
m_mainBtnGamecube = _addPicButton("MAIN/DML_BTN", texGamecube, texGamecubes, 520, 400, 48, 48);
|
||||||
m_mainBtnEmu = _addPicButton("MAIN/EMU_BTN", texEmu, texEmus, 520, 400, 48, 48);
|
m_mainBtnPlugin = _addPicButton("MAIN/EMU_BTN", texPlugin, texPlugins, 520, 400, 48, 48);
|
||||||
m_mainBtnDVD = _addPicButton("MAIN/DVD_BTN", texDVD, texDVDs, 470, 400, 48, 48);
|
m_mainBtnDVD = _addPicButton("MAIN/DVD_BTN", texDVD, texDVDs, 470, 400, 48, 48);
|
||||||
m_mainBtnNext = _addPicButton("MAIN/NEXT_BTN", texNext, texNextS, 540, 146, 80, 80);
|
m_mainBtnNext = _addPicButton("MAIN/NEXT_BTN", texNext, texNextS, 540, 146, 80, 80);
|
||||||
m_mainBtnPrev = _addPicButton("MAIN/PREV_BTN", texPrev, texPrevS, 20, 146, 80, 80);
|
m_mainBtnPrev = _addPicButton("MAIN/PREV_BTN", texPrev, texPrevS, 20, 146, 80, 80);
|
||||||
@ -969,9 +969,9 @@ void CMenu::_initMainMenu()
|
|||||||
_setHideAnim(m_mainBtnQuit, "MAIN/QUIT_BTN", 0, 40, 0.f, 0.f);
|
_setHideAnim(m_mainBtnQuit, "MAIN/QUIT_BTN", 0, 40, 0.f, 0.f);
|
||||||
_setHideAnim(m_mainBtnChannel, "MAIN/CHANNEL_BTN", 0, 40, 0.f, 0.f);
|
_setHideAnim(m_mainBtnChannel, "MAIN/CHANNEL_BTN", 0, 40, 0.f, 0.f);
|
||||||
_setHideAnim(m_mainBtnHomebrew, "MAIN/HOMEBREW_BTN", 0, 40, 0.f, 0.f);
|
_setHideAnim(m_mainBtnHomebrew, "MAIN/HOMEBREW_BTN", 0, 40, 0.f, 0.f);
|
||||||
_setHideAnim(m_mainBtnUsb, "MAIN/USB_BTN", 0, 40, 0.f, 0.f);
|
_setHideAnim(m_mainBtnWii, "MAIN/USB_BTN", 0, 40, 0.f, 0.f);
|
||||||
_setHideAnim(m_mainBtnDML, "MAIN/DML_BTN", 0, 40, 0.f, 0.f);
|
_setHideAnim(m_mainBtnGamecube, "MAIN/DML_BTN", 0, 40, 0.f, 0.f);
|
||||||
_setHideAnim(m_mainBtnEmu, "MAIN/EMU_BTN", 0, 40, 0.f, 0.f);
|
_setHideAnim(m_mainBtnPlugin, "MAIN/EMU_BTN", 0, 40, 0.f, 0.f);
|
||||||
_setHideAnim(m_mainBtnDVD, "MAIN/DVD_BTN", 0, 40, 0.f, 0.f);
|
_setHideAnim(m_mainBtnDVD, "MAIN/DVD_BTN", 0, 40, 0.f, 0.f);
|
||||||
_setHideAnim(m_mainBtnFavoritesOn, "MAIN/FAVORITES_ON", 0, 40, 0.f, 0.f);
|
_setHideAnim(m_mainBtnFavoritesOn, "MAIN/FAVORITES_ON", 0, 40, 0.f, 0.f);
|
||||||
_setHideAnim(m_mainBtnFavoritesOff, "MAIN/FAVORITES_OFF", 0, 40, 0.f, 0.f);
|
_setHideAnim(m_mainBtnFavoritesOff, "MAIN/FAVORITES_OFF", 0, 40, 0.f, 0.f);
|
||||||
|
@ -171,7 +171,7 @@ void CMenu::_Paths(void)
|
|||||||
}
|
}
|
||||||
else if (BTN_A_PRESSED && paths_curPage == 2)
|
else if (BTN_A_PRESSED && paths_curPage == 2)
|
||||||
{
|
{
|
||||||
/*if (m_btnMgr.selected(m_pathsBtn1))
|
if (m_btnMgr.selected(m_pathsBtn1))
|
||||||
{
|
{
|
||||||
_hidePaths();
|
_hidePaths();
|
||||||
currentPartition = m_cfg.getInt(WII_DOMAIN, "partition", USB1);
|
currentPartition = m_cfg.getInt(WII_DOMAIN, "partition", USB1);
|
||||||
@ -202,29 +202,30 @@ void CMenu::_Paths(void)
|
|||||||
{
|
{
|
||||||
_hidePaths();
|
_hidePaths();
|
||||||
currentPartition = m_cfg.getInt(GC_DOMAIN, "partition", USB1);
|
currentPartition = m_cfg.getInt(GC_DOMAIN, "partition", USB1);
|
||||||
string gameDir(fmt(m_usb_gc_gamesDir.c_str(), DeviceName[currentPartition]));
|
string gameDir(fmt(gc_games_dir, DeviceName[currentPartition]));
|
||||||
path = _FolderExplorer(gameDir.c_str());
|
path = _FolderExplorer(gameDir.c_str());
|
||||||
//can only change usb1 folder name.
|
if(strlen(path) > 0)
|
||||||
if(strlen(path) > 0 && (strncmp(path, "usb1:/", 6) == 0))
|
|
||||||
{
|
{
|
||||||
if(strncmp(path, "sd:/", 4) == 0)
|
if(strncmp(path, "sd:/", 4) == 0)
|
||||||
m_cfg.setInt(GC_DOMAIN, "partition", 0);
|
m_cfg.setInt(GC_DOMAIN, "partition", 0);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
//might add error check to make sure its first partition and FAT only
|
||||||
const char *partval = &path[3];
|
const char *partval = &path[3];
|
||||||
m_cfg.setInt(GC_DOMAIN, "partition", atoi(partval));
|
m_cfg.setInt(GC_DOMAIN, "partition", atoi(partval));
|
||||||
}
|
}
|
||||||
char tmpPath[MAX_FAT_PATH];
|
char tmpPath[MAX_FAT_PATH];
|
||||||
strncpy(tmpPath, strchr(path, '/')+1, MAX_FAT_PATH-1);
|
strcpy(tmpPath, "%s");
|
||||||
m_cfg.setString(GC_DOMAIN, "dir_usb_games", tmpPath);
|
strcat(tmpPath, strchr(path, ':'));
|
||||||
m_usb_gc_gamesDir = fmt("%%s:/%s", tmpPath);
|
m_cfg.setString(GC_DOMAIN, "gc_games_dir", tmpPath);
|
||||||
//m_usb_gc_gamesDir = fmt("%%s:/%s", m_cfg.getString(GC_DOMAIN, "dir_usb_games", "games").c_str());
|
memset(gc_games_dir, 0, 64);
|
||||||
|
strncpy(gc_games_dir, tmpPath, 64);
|
||||||
m_cfg.setBool(GC_DOMAIN, "update_cache", true);
|
m_cfg.setBool(GC_DOMAIN, "update_cache", true);
|
||||||
if(m_cfg.getBool(GC_DOMAIN, "source"))
|
if(m_cfg.getBool(GC_DOMAIN, "source"))
|
||||||
m_load_view = true;
|
m_load_view = true;
|
||||||
}
|
}
|
||||||
_showPaths();
|
_showPaths();
|
||||||
}*/
|
}
|
||||||
if (m_btnMgr.selected(m_pathsBtn3))
|
if (m_btnMgr.selected(m_pathsBtn3))
|
||||||
{
|
{
|
||||||
_hidePaths();
|
_hidePaths();
|
||||||
|
@ -13,9 +13,9 @@ s16 m_sourceBtnBack;
|
|||||||
s16 m_sourceLblTitle;
|
s16 m_sourceLblTitle;
|
||||||
s16 m_sourceBtnSource[12];
|
s16 m_sourceBtnSource[12];
|
||||||
s16 m_sourceLblUser[4];
|
s16 m_sourceLblUser[4];
|
||||||
s16 m_sourceBtnDML;
|
s16 m_sourceBtnGamecube;
|
||||||
s16 m_sourceBtnEmu;
|
s16 m_sourceBtnPlugin;
|
||||||
s16 m_sourceBtnUsb;
|
s16 m_sourceBtnWii;
|
||||||
s16 m_sourceBtnChannel;
|
s16 m_sourceBtnChannel;
|
||||||
s16 m_sourceBtnHomebrew;
|
s16 m_sourceBtnHomebrew;
|
||||||
|
|
||||||
@ -40,9 +40,9 @@ void CMenu::_hideSource(bool instant)
|
|||||||
m_btnMgr.hide(m_sourceBtnBack, instant);
|
m_btnMgr.hide(m_sourceBtnBack, instant);
|
||||||
m_btnMgr.hide(m_sourceBtnHomebrew, instant);
|
m_btnMgr.hide(m_sourceBtnHomebrew, instant);
|
||||||
m_btnMgr.hide(m_sourceBtnChannel, instant);
|
m_btnMgr.hide(m_sourceBtnChannel, instant);
|
||||||
m_btnMgr.hide(m_sourceBtnUsb, instant);
|
m_btnMgr.hide(m_sourceBtnWii, instant);
|
||||||
m_btnMgr.hide(m_sourceBtnDML, instant);
|
m_btnMgr.hide(m_sourceBtnGamecube, instant);
|
||||||
m_btnMgr.hide(m_sourceBtnEmu, instant);
|
m_btnMgr.hide(m_sourceBtnPlugin, instant);
|
||||||
|
|
||||||
u8 i;
|
u8 i;
|
||||||
for(i = 0; i < ARRAY_SIZE(m_sourceLblUser); ++i)
|
for(i = 0; i < ARRAY_SIZE(m_sourceLblUser); ++i)
|
||||||
@ -195,7 +195,7 @@ void CMenu::_createSFList()
|
|||||||
string source = m_source.getString(btn_selected, "source","");
|
string source = m_source.getString(btn_selected, "source","");
|
||||||
if(source == "")
|
if(source == "")
|
||||||
continue;
|
continue;
|
||||||
if(source == "dml" && !m_show_dml && !m_devo_installed && !m_nintendont_installed)
|
if(source == "dml" && !m_show_gc)
|
||||||
continue;
|
continue;
|
||||||
else if(source == "emunand" && !show_channel)
|
else if(source == "emunand" && !show_channel)
|
||||||
continue;
|
continue;
|
||||||
@ -254,7 +254,16 @@ void CMenu::_sourceFlow()
|
|||||||
memset(btn_selected, 0, 256);
|
memset(btn_selected, 0, 256);
|
||||||
strncpy(btn_selected, fmt("BUTTON_%i", hdr->settings[0]), 255);
|
strncpy(btn_selected, fmt("BUTTON_%i", hdr->settings[0]), 255);
|
||||||
string source = m_source.getString(btn_selected, "source", "");
|
string source = m_source.getString(btn_selected, "source", "");
|
||||||
_clearSources();
|
_clearSources();// may have to move this
|
||||||
|
/*if(source == "wii")
|
||||||
|
{
|
||||||
|
m_cfg.setBool(WII_DOMAIN, "source", true);
|
||||||
|
if(sf_mode == 0)
|
||||||
|
{
|
||||||
|
m_current_view = COVERFLOW_WII;
|
||||||
|
m_catStartPage = m_source.getInt(btn_selected, "cat_page", 1);
|
||||||
|
}
|
||||||
|
}*/
|
||||||
if(source == "wii")
|
if(source == "wii")
|
||||||
{
|
{
|
||||||
m_current_view = COVERFLOW_WII;
|
m_current_view = COVERFLOW_WII;
|
||||||
@ -333,7 +342,8 @@ void CMenu::_sourceFlow()
|
|||||||
m_clearCats = false;
|
m_clearCats = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
m_sourceflow = false;
|
m_sourceflow = false;// do something with this when in muilti
|
||||||
|
//no autoboot if multi mode. may have to make sure autoboot plugins are hidden from flow when multi is on.
|
||||||
/* autoboot */
|
/* autoboot */
|
||||||
const char *autoboot = m_source.getString(btn_selected, "autoboot", "").c_str();
|
const char *autoboot = m_source.getString(btn_selected, "autoboot", "").c_str();
|
||||||
if(autoboot != NULL && autoboot[0] != '\0')
|
if(autoboot != NULL && autoboot[0] != '\0')
|
||||||
@ -393,9 +403,9 @@ bool CMenu::_Source()
|
|||||||
{
|
{
|
||||||
m_btnMgr.show(m_sourceBtnHomebrew);
|
m_btnMgr.show(m_sourceBtnHomebrew);
|
||||||
m_btnMgr.show(m_sourceBtnChannel);
|
m_btnMgr.show(m_sourceBtnChannel);
|
||||||
m_btnMgr.show(m_sourceBtnUsb);
|
m_btnMgr.show(m_sourceBtnWii);
|
||||||
m_btnMgr.show(m_sourceBtnDML);
|
m_btnMgr.show(m_sourceBtnGamecube);
|
||||||
m_btnMgr.show(m_sourceBtnEmu);
|
m_btnMgr.show(m_sourceBtnPlugin);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -522,15 +532,15 @@ bool CMenu::_Source()
|
|||||||
else if(BTN_A_PRESSED && !sourceIniLoaded)
|
else if(BTN_A_PRESSED && !sourceIniLoaded)
|
||||||
{
|
{
|
||||||
// check default source buttons when no source_menu.ini
|
// check default source buttons when no source_menu.ini
|
||||||
if(m_btnMgr.selected(m_sourceBtnUsb))
|
if(m_btnMgr.selected(m_sourceBtnWii))
|
||||||
{
|
{
|
||||||
_clearSources();
|
_clearSources();
|
||||||
m_cfg.setBool(WII_DOMAIN, "source", true);
|
m_cfg.setBool(WII_DOMAIN, "source", true);
|
||||||
exitSource = true;
|
exitSource = true;
|
||||||
}
|
}
|
||||||
if(m_btnMgr.selected(m_sourceBtnDML))
|
if(m_btnMgr.selected(m_sourceBtnGamecube))
|
||||||
{
|
{
|
||||||
if(!m_show_dml && !m_devo_installed && !m_nintendont_installed)
|
if(!m_show_gc)
|
||||||
_showSourceNotice();
|
_showSourceNotice();
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -561,7 +571,7 @@ bool CMenu::_Source()
|
|||||||
exitSource = true;
|
exitSource = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(m_btnMgr.selected(m_sourceBtnEmu))
|
if(m_btnMgr.selected(m_sourceBtnPlugin))
|
||||||
{
|
{
|
||||||
if(!show_emu)
|
if(!show_emu)
|
||||||
_showSourceNotice();
|
_showSourceNotice();
|
||||||
@ -596,7 +606,7 @@ bool CMenu::_Source()
|
|||||||
}
|
}
|
||||||
else if(source == "dml")
|
else if(source == "dml")
|
||||||
{
|
{
|
||||||
if(!m_show_dml && !m_devo_installed && !m_nintendont_installed)
|
if(!m_show_gc)
|
||||||
_showSourceNotice();
|
_showSourceNotice();
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -737,7 +747,7 @@ bool CMenu::_Source()
|
|||||||
}
|
}
|
||||||
else if(source == "dml")
|
else if(source == "dml")
|
||||||
{
|
{
|
||||||
if(m_show_dml || m_devo_installed || m_nintendont_installed)
|
if(m_show_gc)
|
||||||
m_cfg.setBool(GC_DOMAIN, "source", !m_cfg.getBool(GC_DOMAIN, "source"));
|
m_cfg.setBool(GC_DOMAIN, "source", !m_cfg.getBool(GC_DOMAIN, "source"));
|
||||||
}
|
}
|
||||||
else if(source == "emunand")
|
else if(source == "emunand")
|
||||||
@ -832,23 +842,23 @@ void CMenu::_clearSources(void)
|
|||||||
|
|
||||||
void CMenu::_initSourceMenu()
|
void CMenu::_initSourceMenu()
|
||||||
{
|
{
|
||||||
TexData texDML;
|
TexData texGamecube;
|
||||||
TexData texDMLs;
|
TexData texGamecubes;
|
||||||
TexData texEmu;
|
TexData texPlugin;
|
||||||
TexData texEmus;
|
TexData texPlugins;
|
||||||
TexData texUsb;
|
TexData texWii;
|
||||||
TexData texUsbs;
|
TexData texWiis;
|
||||||
TexData texChannel;
|
TexData texChannel;
|
||||||
TexData texChannels;
|
TexData texChannels;
|
||||||
TexData texHomebrew;
|
TexData texHomebrew;
|
||||||
TexData texHomebrews;
|
TexData texHomebrews;
|
||||||
|
|
||||||
TexHandle.fromImageFile(texUsb, fmt("%s/btnusb.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texWii, fmt("%s/btnusb.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texUsbs, fmt("%s/btnusbs.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texWiis, fmt("%s/btnusbs.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texDML, fmt("%s/btndml.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texGamecube, fmt("%s/btndml.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texDMLs, fmt("%s/btndmls.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texGamecubes, fmt("%s/btndmls.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texEmu, fmt("%s/btnemu.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texPlugin, fmt("%s/btnemu.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texEmus, fmt("%s/btnemus.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texPlugins, fmt("%s/btnemus.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texChannel, fmt("%s/btnchannel.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texChannel, fmt("%s/btnchannel.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texChannels, fmt("%s/btnchannels.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texChannels, fmt("%s/btnchannels.png", m_imgsDir.c_str()));
|
||||||
TexHandle.fromImageFile(texHomebrew, fmt("%s/btnhomebrew.png", m_imgsDir.c_str()));
|
TexHandle.fromImageFile(texHomebrew, fmt("%s/btnhomebrew.png", m_imgsDir.c_str()));
|
||||||
@ -865,9 +875,9 @@ void CMenu::_initSourceMenu()
|
|||||||
|
|
||||||
m_sourceBtnChannel = _addPicButton("SOURCE/CHANNEL_BTN", texChannel, texChannels, 265, 260, 48, 48);
|
m_sourceBtnChannel = _addPicButton("SOURCE/CHANNEL_BTN", texChannel, texChannels, 265, 260, 48, 48);
|
||||||
m_sourceBtnHomebrew = _addPicButton("SOURCE/HOMEBREW_BTN", texHomebrew, texHomebrews, 325, 260, 48, 48);
|
m_sourceBtnHomebrew = _addPicButton("SOURCE/HOMEBREW_BTN", texHomebrew, texHomebrews, 325, 260, 48, 48);
|
||||||
m_sourceBtnUsb = _addPicButton("SOURCE/USB_BTN", texUsb, texUsbs, 235, 200, 48, 48);
|
m_sourceBtnWii = _addPicButton("SOURCE/USB_BTN", texWii, texWiis, 235, 200, 48, 48);
|
||||||
m_sourceBtnDML = _addPicButton("SOURCE/DML_BTN", texDML, texDMLs, 295, 200, 48, 48);
|
m_sourceBtnGamecube = _addPicButton("SOURCE/DML_BTN", texGamecube, texGamecubes, 295, 200, 48, 48);
|
||||||
m_sourceBtnEmu = _addPicButton("SOURCE/EMU_BTN", texEmu, texEmus, 355, 200, 48, 48);
|
m_sourceBtnPlugin = _addPicButton("SOURCE/EMU_BTN", texPlugin, texPlugins, 355, 200, 48, 48);
|
||||||
|
|
||||||
themeName = m_cfg.getString("GENERAL", "theme", "default");
|
themeName = m_cfg.getString("GENERAL", "theme", "default");
|
||||||
if(!m_source.load(fmt("%s/%s/%s", m_sourceDir.c_str(), themeName.c_str(), SOURCE_FILENAME)))
|
if(!m_source.load(fmt("%s/%s/%s", m_sourceDir.c_str(), themeName.c_str(), SOURCE_FILENAME)))
|
||||||
@ -903,9 +913,9 @@ void CMenu::_initSourceMenu()
|
|||||||
}
|
}
|
||||||
_setHideAnim(m_sourceBtnChannel, "SOURCE/CHANNEL_BTN", 0, 40, 0.f, 0.f);
|
_setHideAnim(m_sourceBtnChannel, "SOURCE/CHANNEL_BTN", 0, 40, 0.f, 0.f);
|
||||||
_setHideAnim(m_sourceBtnHomebrew, "SOURCE/HOMEBREW_BTN", 0, 40, 0.f, 0.f);
|
_setHideAnim(m_sourceBtnHomebrew, "SOURCE/HOMEBREW_BTN", 0, 40, 0.f, 0.f);
|
||||||
_setHideAnim(m_sourceBtnUsb, "SOURCE/USB_BTN", 0, 40, 0.f, 0.f);
|
_setHideAnim(m_sourceBtnWii, "SOURCE/USB_BTN", 0, 40, 0.f, 0.f);
|
||||||
_setHideAnim(m_sourceBtnDML, "SOURCE/DML_BTN", 0, 40, 0.f, 0.f);
|
_setHideAnim(m_sourceBtnGamecube, "SOURCE/DML_BTN", 0, 40, 0.f, 0.f);
|
||||||
_setHideAnim(m_sourceBtnEmu, "SOURCE/EMU_BTN", 0, 40, 0.f, 0.f);
|
_setHideAnim(m_sourceBtnPlugin, "SOURCE/EMU_BTN", 0, 40, 0.f, 0.f);
|
||||||
_setHideAnim(m_sourceLblTitle, "SOURCE/TITLE", 0, 0, -2.f, 0.f);
|
_setHideAnim(m_sourceLblTitle, "SOURCE/TITLE", 0, 0, -2.f, 0.f);
|
||||||
_setHideAnim(m_sourceLblNotice, "SOURCE/NOTICE", 0, 0, 1.f, 0.f);
|
_setHideAnim(m_sourceLblNotice, "SOURCE/NOTICE", 0, 0, 1.f, 0.f);
|
||||||
_setHideAnim(m_sourceLblPage, "SOURCE/PAGE_BTN", 0, 0, 1.f, -1.f);
|
_setHideAnim(m_sourceLblPage, "SOURCE/PAGE_BTN", 0, 0, 1.f, -1.f);
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -170,7 +170,7 @@ int CMenu::_GCgameInstaller()
|
|||||||
if(skip)
|
if(skip)
|
||||||
rsize = 8192; // Use small chunks when skip on error is enabled
|
rsize = 8192; // Use small chunks when skip on error is enabled
|
||||||
|
|
||||||
m_gcdump.Init(skip, comp, wexf, alig, nretry, rsize, DeviceName[currentPartition]);
|
m_gcdump.Init(skip, comp, wexf, alig, nretry, rsize, DeviceName[currentPartition], gc_games_dir);
|
||||||
|
|
||||||
int ret;
|
int ret;
|
||||||
m_progress = 0.f;
|
m_progress = 0.f;
|
||||||
@ -235,7 +235,7 @@ int CMenu::_GCcopyGame(void *obj)
|
|||||||
source[299] = '\0';
|
source[299] = '\0';
|
||||||
|
|
||||||
char folder[50];
|
char folder[50];
|
||||||
strncpy(folder, fmt(GC_GAMES_DIR, DeviceName[SD]), sizeof(folder));
|
strncpy(folder, fmt(gc_games_dir, DeviceName[SD]), sizeof(folder));
|
||||||
folder[49] = '\0';
|
folder[49] = '\0';
|
||||||
|
|
||||||
char target[300];
|
char target[300];
|
||||||
@ -265,9 +265,9 @@ bool CMenu::_wbfsOp(CMenu::WBFS_OP op)
|
|||||||
GameID[6] = '\0';
|
GameID[6] = '\0';
|
||||||
|
|
||||||
bool done = false;
|
bool done = false;
|
||||||
bool upd_usb = false;
|
bool upd_wii = false;
|
||||||
bool upd_dml = false;
|
bool upd_gc = false;
|
||||||
bool upd_emu = false;
|
bool upd_plgin = false;
|
||||||
bool upd_chan = false;
|
bool upd_chan = false;
|
||||||
bool out = false;
|
bool out = false;
|
||||||
const dir_discHdr *CF_Hdr = CoverFlow.getHdr();
|
const dir_discHdr *CF_Hdr = CoverFlow.getHdr();
|
||||||
@ -346,7 +346,7 @@ bool CMenu::_wbfsOp(CMenu::WBFS_OP op)
|
|||||||
strncpy(cfPos, GameID, 6);
|
strncpy(cfPos, GameID, 6);
|
||||||
m_btnMgr.setText(m_wbfsLblDialog, wfmt(_fmt("wbfsop6", L"Installing [%s] %s..."), GameID, wii_hdr.title));
|
m_btnMgr.setText(m_wbfsLblDialog, wfmt(_fmt("wbfsop6", L"Installing [%s] %s..."), GameID, wii_hdr.title));
|
||||||
done = true;
|
done = true;
|
||||||
upd_usb = true;
|
upd_wii = true;
|
||||||
m_thrdWorking = true;
|
m_thrdWorking = true;
|
||||||
m_thrdProgress = 0.f;
|
m_thrdProgress = 0.f;
|
||||||
m_thrdMessageAdded = false;
|
m_thrdMessageAdded = false;
|
||||||
@ -364,7 +364,7 @@ bool CMenu::_wbfsOp(CMenu::WBFS_OP op)
|
|||||||
}
|
}
|
||||||
strncpy(cfPos, GameID, 6);
|
strncpy(cfPos, GameID, 6);
|
||||||
done = true;
|
done = true;
|
||||||
upd_dml = true;
|
upd_gc = true;
|
||||||
m_thrdWorking = true;
|
m_thrdWorking = true;
|
||||||
m_thrdProgress = 0.f;
|
m_thrdProgress = 0.f;
|
||||||
//LWP_CreateThread(&thread, (void *(*)(void *))_GCgameInstaller, (void *)this, 0, 8 * 1024, 64);
|
//LWP_CreateThread(&thread, (void *(*)(void *))_GCgameInstaller, (void *)this, 0, 8 * 1024, 64);
|
||||||
@ -396,25 +396,25 @@ bool CMenu::_wbfsOp(CMenu::WBFS_OP op)
|
|||||||
{
|
{
|
||||||
strncpy(GC_Path, CF_Hdr->path, 1023);
|
strncpy(GC_Path, CF_Hdr->path, 1023);
|
||||||
*strrchr(GC_Path, '/') = '\0'; //iso path
|
*strrchr(GC_Path, '/') = '\0'; //iso path
|
||||||
const char *cmp = fmt(GC_GAMES_DIR, DeviceName[currentPartition]);
|
const char *cmp = fmt(gc_games_dir, DeviceName[currentPartition]);
|
||||||
if(strcasecmp(GC_Path, cmp) == 0)
|
if(strcasecmp(GC_Path, cmp) == 0)
|
||||||
fsop_deleteFile(CF_Hdr->path);
|
fsop_deleteFile(CF_Hdr->path);
|
||||||
else
|
else
|
||||||
fsop_deleteFolder(GC_Path);
|
fsop_deleteFolder(GC_Path);
|
||||||
}
|
}
|
||||||
upd_dml = true;
|
upd_gc = true;
|
||||||
}
|
}
|
||||||
else if(CF_Hdr->type == TYPE_PLUGIN)
|
else if(CF_Hdr->type == TYPE_PLUGIN)
|
||||||
{
|
{
|
||||||
fsop_deleteFile(CF_Hdr->path);
|
fsop_deleteFile(CF_Hdr->path);
|
||||||
upd_emu = true;
|
upd_plgin = true;
|
||||||
}
|
}
|
||||||
else if(CF_Hdr->type == TYPE_WII_GAME)
|
else if(CF_Hdr->type == TYPE_WII_GAME)
|
||||||
{
|
{
|
||||||
DeviceHandle.OpenWBFS(currentPartition);
|
DeviceHandle.OpenWBFS(currentPartition);
|
||||||
WBFS_RemoveGame((u8*)&CF_Hdr->id, (char*)&CF_Hdr->path);
|
WBFS_RemoveGame((u8*)&CF_Hdr->id, (char*)&CF_Hdr->path);
|
||||||
WBFS_Close();
|
WBFS_Close();
|
||||||
upd_usb = true;
|
upd_wii = true;
|
||||||
}
|
}
|
||||||
else if(CF_Hdr->type == TYPE_CHANNEL && !m_cfg.getBool(CHANNEL_DOMAIN, "disable", true))
|
else if(CF_Hdr->type == TYPE_CHANNEL && !m_cfg.getBool(CHANNEL_DOMAIN, "disable", true))
|
||||||
{
|
{
|
||||||
@ -469,7 +469,7 @@ bool CMenu::_wbfsOp(CMenu::WBFS_OP op)
|
|||||||
strncpy(cfPos, CF_Hdr->id, 6);
|
strncpy(cfPos, CF_Hdr->id, 6);
|
||||||
m_btnMgr.setText(m_wbfsLblDialog, wfmt(_fmt("wbfsop10", L"Copying [%s] %s..."), CF_Hdr->id, CoverFlow.getTitle().toUTF8().c_str()));
|
m_btnMgr.setText(m_wbfsLblDialog, wfmt(_fmt("wbfsop10", L"Copying [%s] %s..."), CF_Hdr->id, CoverFlow.getTitle().toUTF8().c_str()));
|
||||||
done = true;
|
done = true;
|
||||||
upd_dml = true;
|
upd_gc = true;
|
||||||
m_thrdWorking = true;
|
m_thrdWorking = true;
|
||||||
m_thrdProgress = 0.f;
|
m_thrdProgress = 0.f;
|
||||||
m_thrdMessageAdded = false;
|
m_thrdMessageAdded = false;
|
||||||
@ -510,11 +510,11 @@ bool CMenu::_wbfsOp(CMenu::WBFS_OP op)
|
|||||||
{
|
{
|
||||||
//m_gameList.SetLanguage(m_loc.getString(m_curLanguage, "gametdb_code", "EN").c_str());
|
//m_gameList.SetLanguage(m_loc.getString(m_curLanguage, "gametdb_code", "EN").c_str());
|
||||||
_showWaitMessage();
|
_showWaitMessage();
|
||||||
if(upd_dml)
|
if(upd_gc)
|
||||||
UpdateCache(COVERFLOW_GAMECUBE);
|
UpdateCache(COVERFLOW_GAMECUBE);
|
||||||
if(upd_usb)
|
if(upd_wii)
|
||||||
UpdateCache(COVERFLOW_WII);
|
UpdateCache(COVERFLOW_WII);
|
||||||
if(upd_emu)
|
if(upd_plgin)
|
||||||
UpdateCache(COVERFLOW_PLUGIN);
|
UpdateCache(COVERFLOW_PLUGIN);
|
||||||
if(upd_chan)
|
if(upd_chan)
|
||||||
UpdateCache(COVERFLOW_CHANNEL);
|
UpdateCache(COVERFLOW_CHANNEL);
|
||||||
|
@ -7,8 +7,7 @@ extern "C" {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
AUTOMIOS = 0,
|
DEVOLUTION = 0,
|
||||||
DEVOLUTION,
|
|
||||||
NINTENDONT
|
NINTENDONT
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,408 +1,410 @@
|
|||||||
|
|
||||||
[ENGLISH]
|
[ENGLISH]
|
||||||
about1=Original Loader By:\n%s
|
about1=Original Loader By:\n%s
|
||||||
about2=Original GUI By:\n%s
|
about2=Original GUI By:\n%s
|
||||||
about4=Thanks To:\n%s
|
about4=Thanks To:\n%s
|
||||||
about6=Current Developers:\n%s
|
about6=Current Developers:\n%s
|
||||||
about7=Past Developers:\n%s
|
about7=Past Developers:\n%s
|
||||||
about8=Bits of Code Obtained From:\n%s
|
about8=Bits of Code Obtained From:\n%s
|
||||||
about9=Supporting Websites:\n%s
|
about9=Supporting Websites:\n%s
|
||||||
about10=Help Guide
|
about10=Help Guide
|
||||||
alphabetically=alphabetically
|
alphabetically=alphabetically
|
||||||
appname=%s v%s
|
appname=%s v%s
|
||||||
aspect169=Force 16:9
|
aspect169=Force 16:9
|
||||||
aspect43=Force 4:3
|
aspect43=Force 4:3
|
||||||
aspectDef=Default
|
aspectDef=Default
|
||||||
bootmii=BootMii
|
bootmii=BootMii
|
||||||
bycontrollers=By Controllers
|
bycontrollers=By Controllers
|
||||||
byesrb=By ESRB
|
byesrb=By ESRB
|
||||||
bygameid=By Game ID
|
bygameid=By Game ID
|
||||||
bylastplayed=By Last Played
|
bylastplayed=By Last Played
|
||||||
byplaycount=By Play Count
|
byplaycount=By Play Count
|
||||||
byplayers=By Players
|
byplayers=By Players
|
||||||
bywifiplayers=By Wifi Players
|
bywifiplayers=By Wifi Players
|
||||||
cat1=Select Categories
|
cat1=Select Categories
|
||||||
cat2=Clear
|
cat2=Clear
|
||||||
cd1=Back
|
cd1=Back
|
||||||
cd2=Erase
|
cd2=Erase
|
||||||
cd3=Age Lock
|
cd3=Age Lock
|
||||||
cfg1=Settings
|
cfg1=Settings
|
||||||
cfg10=Back
|
cfg10=Back
|
||||||
cfg11=USB Saves Emulation
|
cfg11=USB Saves Emulation
|
||||||
cfg12=NAND Emulation
|
cfg12=NAND Emulation
|
||||||
cfg13=NAND Emulation Settings
|
cfg13=NAND Emulation Settings
|
||||||
cfg14=Set
|
cfg14=Set
|
||||||
cfg15=Plugins
|
cfg15=Plugins
|
||||||
cfg16=Select
|
cfg16=Select
|
||||||
cfg3=Download covers & titles
|
cfg3=Download covers & titles
|
||||||
cfg4=Download
|
cfg4=Download
|
||||||
cfg5=Parental control
|
cfg5=Parental control
|
||||||
cfg6=Unlock
|
cfg6=Unlock
|
||||||
cfg7=Set code
|
cfg7=Set code
|
||||||
cfga2=Install game
|
cfga2=Install game
|
||||||
cfga3=Install
|
cfga3=Install
|
||||||
cfga6=Language
|
cfga6=Language
|
||||||
cfga7=Theme
|
cfga7=Theme
|
||||||
cfgb1=Ocarina
|
cfgb1=Ocarina
|
||||||
cfgb2=Default GC game loader
|
cfgb2=Default GC game loader
|
||||||
cfgb3=Default video mode
|
cfgb3=Default video mode
|
||||||
cfgb4=Default game language
|
cfgb4=Default game language
|
||||||
cfgb5=Default DML video mode
|
cfgb5=Default DML video mode
|
||||||
cfgb6=Default DML game language
|
cfgb6=Default DML game language
|
||||||
cfgbnr1=Download Cover
|
cfgbnr1=Download Cover
|
||||||
cfgbnr2=Delete Cover
|
cfgbnr2=Delete Cover
|
||||||
cfgbnr3=Download Custom Banner
|
cfgbnr3=Download Custom Banner
|
||||||
cfgbnr4=Delete Banner
|
cfgbnr4=Delete Banner
|
||||||
cfgbnr5=Download
|
cfgbnr5=Download
|
||||||
cfgbnr6=Delete
|
cfgbnr6=Delete
|
||||||
cfgbt1=Startup Settings
|
cfgbt1=Startup Settings
|
||||||
cfgbt2=Force Load cIOS
|
cfgbt2=Force Load cIOS
|
||||||
cfgbt3=Force cIOS Revision
|
cfgbt3=Force cIOS Revision
|
||||||
cfgbt4=USB Port
|
cfgbt4=USB Port
|
||||||
cfgbt5=Show source menu on boot
|
cfgbt5=Show source menu on boot
|
||||||
cfgbt6=Enable Multisource Features
|
cfgbt6=Enable Multisource Features
|
||||||
cfgbt7=Start FTP Server on boot
|
cfgbt7=Start FTP Server on boot
|
||||||
cfgc1=Exit To
|
cfgc1=Exit To
|
||||||
cfgc2=Adjust TV width
|
cfgc2=Adjust TV width
|
||||||
cfgc3=Adjust TV height
|
cfgc3=Adjust TV height
|
||||||
cfgc4=Adjust Coverflow
|
cfgc4=Adjust Coverflow
|
||||||
cfgc5=Go
|
cfgc5=Go
|
||||||
cfgc6=Horizontal offset
|
cfgc6=Horizontal offset
|
||||||
cfgc7=Vertical offset
|
cfgc7=Vertical offset
|
||||||
cfgc8=Startup Settings
|
cfgc8=Startup Settings
|
||||||
cfgc9=Manage Languages
|
cfgc9=Manage Languages
|
||||||
cfgd4=Path Manager
|
cfgd4=Path Manager
|
||||||
cfgd5=Save favorite mode state
|
cfgd5=Save favorite mode state
|
||||||
cfgd7=Show categories on boot
|
cfgd7=Show categories on boot
|
||||||
cfgg1=Settings
|
cfgg1=Settings
|
||||||
cfgg10=IOS
|
cfgg10=IOS
|
||||||
cfgg12=Download cover
|
cfgg12=Download cover
|
||||||
cfgg13=Download
|
cfgg13=Download
|
||||||
cfgg14=Patch video modes
|
cfgg14=Patch video modes
|
||||||
cfgg15=Cheat Codes
|
cfgg15=Cheat Codes
|
||||||
cfgg16=Select
|
cfgg16=Select
|
||||||
cfgg17=Categories
|
cfgg17=Categories
|
||||||
cfgg18=Hook Type
|
cfgg18=Hook Type
|
||||||
cfgg2=Video mode
|
cfgg2=Video mode
|
||||||
cfgg21=Return To Channel
|
cfgg21=Return To Channel
|
||||||
cfgg22=Debugger
|
cfgg22=Debugger
|
||||||
cfgg23=Downloading cheat file....
|
cfgg23=Downloading cheat file....
|
||||||
cfgg24=NAND Emulation
|
cfgg24=NAND Emulation
|
||||||
cfgg25=Password incorrect
|
cfgg25=Password incorrect
|
||||||
cfgg26=Disable IOS Reload block
|
cfgg26=Disable IOS Reload block
|
||||||
cfgg27=Aspect Ratio
|
cfgg27=Aspect Ratio
|
||||||
cfgg28=NMM
|
cfgg28=NMM
|
||||||
cfgg29=No DVD Patch
|
cfgg29=No DVD Patch
|
||||||
cfgg3=Language
|
cfgg3=Language
|
||||||
cfgg30=Extract Save from NAND
|
cfgg30=Extract Save from NAND
|
||||||
cfgg31=Extract
|
cfgg31=Extract
|
||||||
cfgg32=Flash Save to NAND
|
cfgg32=Flash Save to NAND
|
||||||
cfgg33=Flash
|
cfgg33=Flash
|
||||||
cfgg34=Devolution Memcard Emulator
|
cfgg34=Devolution Memcard Emulator
|
||||||
cfgg35=GameCube Loader
|
cfgg35=GameCube Loader
|
||||||
cfgg36=Widescreen Patch
|
cfgg36=Widescreen Patch
|
||||||
cfgg37=Boot Apploader
|
cfgg37=Boot Apploader
|
||||||
cfgg38=Activity LED
|
cfgg38=Activity LED
|
||||||
cfgg39=DM Screenshot Feature
|
cfgg39=DM Screenshot Feature
|
||||||
cfgg40=Manage Cover and Banner
|
cfgg40=Manage Cover and Banner
|
||||||
cfgg41=Manage
|
cfgg41=Manage
|
||||||
cfgg4=Patch country strings
|
cfgg4=Patch country strings
|
||||||
cfgg5=Ocarina
|
cfgg5=Ocarina
|
||||||
cfgg7=Vipatch
|
cfgg7=Vipatch
|
||||||
cfgg8=Back
|
cfgg8=Back
|
||||||
cfglng1=Manage Languages
|
cfglng1=Manage Languages
|
||||||
cfglng2=Get Languages
|
cfglng2=Get Languages
|
||||||
cfglng3=Select File
|
cfglng3=Select File
|
||||||
cfglng4=Download selected File
|
cfglng4=Download selected File
|
||||||
cfgne1=NAND Emulation
|
cfgne1=NAND Emulation
|
||||||
cfgne2=Extract Game Saves
|
cfgne2=Extract Game Saves
|
||||||
cfgne3=All
|
cfgne3=All
|
||||||
cfgne4=Missing
|
cfgne4=Missing
|
||||||
cfgne5=Extract NAND
|
cfgne5=Extract NAND
|
||||||
cfgne6=Start
|
cfgne6=Start
|
||||||
cfgne7=Back
|
cfgne7=Back
|
||||||
cfgne8=No valid FAT partition found for NAND Emulation!
|
cfgne8=No valid FAT partition found for NAND Emulation!
|
||||||
cfgne9=Current file: %s
|
cfgne9=Current file: %s
|
||||||
cfgne10=NAND Emulation Settings
|
cfgne10=NAND Emulation Settings
|
||||||
cfgne11=Overall Progress:
|
cfgne11=Overall Progress:
|
||||||
cfgne12=NAND Extractor
|
cfgne12=NAND Extractor
|
||||||
cfgne13=Game Save Extractor
|
cfgne13=Game Save Extractor
|
||||||
cfgne14=Extracted: %d saves / %d files / %d folders
|
cfgne14=Extracted: %d saves / %d files / %d folders
|
||||||
cfgne15=Extracted: %d files / %d folders
|
cfgne15=Extracted: %d files / %d folders
|
||||||
cfgne16=Total size: %uMB (%d blocks)
|
cfgne16=Total size: %uMB (%d blocks)
|
||||||
cfgne17=Total size: %uKB (%d blocks)
|
cfgne17=Total size: %uKB (%d blocks)
|
||||||
cfgne18=Listing game saves to extract...
|
cfgne18=Listing game saves to extract...
|
||||||
cfgne19=Extraction finished!
|
cfgne19=Extraction finished!
|
||||||
cfgne20=Extraction failed!
|
cfgne20=Extraction failed!
|
||||||
cfgne22=Disable NAND Emulation
|
cfgne22=Disable NAND Emulation
|
||||||
cfgne23=Welcome to WiiFlow. I have not found a valid NAND for NAND Emulation. Click Extract to extract your NAND, or click disable to disable NAND Emulation.
|
cfgne23=Welcome to WiiFlow. I have not found a valid NAND for NAND Emulation. Click Extract to extract your NAND, or click disable to disable NAND Emulation.
|
||||||
cfgne24=Extract save
|
cfgne24=Extract save
|
||||||
cfgne25=Create new save
|
cfgne25=Create new save
|
||||||
cfgne26=A save file for this game was created on real NAND. Extract existing save file from real NAND or create new file for NAND Emulation?
|
cfgne26=A save file for this game was created on real NAND. Extract existing save file from real NAND or create new file for NAND Emulation?
|
||||||
cfgne27=Calculating space needed for extraction...
|
cfgne27=Calculating space needed for extraction...
|
||||||
cfgne28=Game Save Flasher
|
cfgne28=Game Save Flasher
|
||||||
cfgne29=Flashed: %d saves / %d files / %d folders
|
cfgne29=Flashed: %d saves / %d files / %d folders
|
||||||
cfgne30=Flashing save files finished!
|
cfgne30=Flashing save files finished!
|
||||||
cfgne31=Select Partition
|
cfgne31=Select Partition
|
||||||
cfgne32=Change Nand
|
cfgne32=Change Nand
|
||||||
cfgne33=Change Saves Nand
|
cfgne33=Change Saves Nand
|
||||||
cfgne34=Set
|
cfgne34=Set
|
||||||
cfgne35=Back
|
cfgne35=Back
|
||||||
cfgne36=Path =
|
cfgne36=Path =
|
||||||
cfgne37=Select Preset Nand
|
cfgne37=Select Preset Nand
|
||||||
cfgne38=Empty
|
cfgne38=Empty
|
||||||
cfgp1=Game Partition
|
cfgp1=Game Partition
|
||||||
cfgp2=Flat Covers
|
cfgp2=Flat Covers
|
||||||
cfgp3=Init network on boot
|
cfgp3=Init network on boot
|
||||||
cfgp4=Banners Cache
|
cfgp4=Banners Cache
|
||||||
cfgp5=Wii Games
|
cfgp5=Wii Games
|
||||||
cfgp6=GC Games
|
cfgp6=GC Games
|
||||||
cfgp7=Music
|
cfgp7=Music
|
||||||
cfgp8=Box Covers
|
cfgp8=Box Covers
|
||||||
cfgp9=Custom Banners
|
cfgp9=Custom Banners
|
||||||
cfgpl1=Select Plugins
|
cfgpl1=Select Plugins
|
||||||
cfgs1=Music volume
|
cfgs1=Music volume
|
||||||
cfgs2=GUI sound volume
|
cfgs2=GUI sound volume
|
||||||
cfgs3=Coverflow sound volume
|
cfgs3=Coverflow sound volume
|
||||||
cfgs4=Game sound volume
|
cfgs4=Game sound volume
|
||||||
cfgsm1=Source Menu Settings
|
cfgsm1=Source Menu Settings
|
||||||
cfgsm2=Enable B To Source Menu
|
cfgsm2=Enable B To Source Menu
|
||||||
cfgsm3=Enable Sourceflow
|
cfgsm3=Enable Sourceflow
|
||||||
cfgsm4=Sourceflow Smallbox
|
cfgsm4=Sourceflow Smallbox
|
||||||
cfgsm5=Clear Sourceflow Cache
|
cfgsm5=Clear Sourceflow Cache
|
||||||
cfgsm6=B On Mode To Source
|
cfgsm6=B On Mode To Source
|
||||||
cfgsm7=Manage Source Menu
|
cfgsm7=Manage Source Menu
|
||||||
cheat1=Back
|
cheat1=Back
|
||||||
cheat2=Apply
|
cheat2=Apply
|
||||||
cheat3=Cheat file for game not found.
|
cheat3=Cheat file for game not found.
|
||||||
cheat4=Download not found.
|
cheat4=Download not found.
|
||||||
commodore=Commodore 64
|
commodore=Commodore 64
|
||||||
custom=Custom
|
custom=Custom
|
||||||
def=Default
|
def=Default
|
||||||
disabled=Disabled
|
disabled=Disabled
|
||||||
dl1=Cancel
|
dl1=Cancel
|
||||||
dl10=Please donate\nto GameTDB.com
|
dl10=Please donate\nto GameTDB.com
|
||||||
dl12=GameTDB
|
dl12=GameTDB
|
||||||
dl13=Download order
|
dl13=Download order
|
||||||
dl14=Select regions to check for covers:
|
dl14=Select regions to check for covers:
|
||||||
dl15=Cover download settings
|
dl15=Cover download settings
|
||||||
dl16=Set
|
dl16=Set
|
||||||
dl17=Cover download settings
|
dl17=Cover download settings
|
||||||
dl18=Back
|
dl18=Back
|
||||||
dl19=Original only
|
dl19=Original only
|
||||||
dl2=Back
|
dl2=Back
|
||||||
dl20=Original/Original
|
dl20=Original/Original
|
||||||
dl21=Original/Custom
|
dl21=Original/Custom
|
||||||
dl22=Custom/Original
|
dl22=Custom/Original
|
||||||
dl23=Custom/Custom
|
dl23=Custom/Custom
|
||||||
dl24=Custom only
|
dl24=Custom only
|
||||||
dl25=All
|
dl25=All
|
||||||
dl3=All
|
dl3=All
|
||||||
dl4=Missing
|
dl4=Missing
|
||||||
dl5=Download
|
dl5=Download
|
||||||
dl6=Download
|
dl6=Download
|
||||||
dl8=Covers
|
dl8=Covers
|
||||||
dlmsg1=Initializing network...
|
dlmsg1=Initializing network...
|
||||||
dlmsg10=Making %s
|
dlmsg10=Making %s
|
||||||
dlmsg11=Downloading...
|
dlmsg11=Downloading...
|
||||||
dlmsg12=Download failed
|
dlmsg12=Download failed
|
||||||
dlmsg13=Saving...
|
dlmsg13=Saving...
|
||||||
dlmsg14=Done.
|
dlmsg14=Done.
|
||||||
dlmsg15=Saving failed!
|
dlmsg15=Saving failed!
|
||||||
dlmsg16=Couldn't read file
|
dlmsg16=Couldn't read file
|
||||||
dlmsg17=No new updates found.
|
dlmsg17=No new updates found.
|
||||||
dlmsg18=boot.dol not found at default path
|
dlmsg18=boot.dol not found at default path
|
||||||
dlmsg19=New Update available!
|
dlmsg19=New Update available!
|
||||||
dlmsg2=Network initialization failed
|
dlmsg2=Network initialization failed
|
||||||
dlmsg20=No version information found.
|
dlmsg20=No version information found.
|
||||||
dlmsg21=WiiFlow will now exit to allow the update to take effect.
|
dlmsg21=WiiFlow will now exit to allow the update to take effect.
|
||||||
dlmsg22=Updating application directory...
|
dlmsg22=Updating application directory...
|
||||||
dlmsg23=Updating data directory...
|
dlmsg23=Updating data directory...
|
||||||
dlmsg24=Extracting...
|
dlmsg24=Extracting...
|
||||||
dlmsg25=Extraction must have failed! Renaming the backup to boot.dol
|
dlmsg25=Extraction must have failed! Renaming the backup to boot.dol
|
||||||
dlmsg26=Updating cache...
|
dlmsg26=Updating cache...
|
||||||
dlmsg27=Not enough memory!
|
dlmsg27=Not enough memory!
|
||||||
dlmsg28=Running FTP Server on %s:%u
|
dlmsg28=Running FTP Server on %s:%u
|
||||||
dlmsg29=FTP Server is currently stopped.
|
dlmsg29=FTP Server is currently stopped.
|
||||||
dlmsg3=Downloading from %s
|
dlmsg3=Downloading from %s
|
||||||
dlmsg4=Saving %s
|
dlmsg4=Saving %s
|
||||||
dlmsg5=%i/%i files downloaded
|
dlmsg5=%i/%i files downloaded
|
||||||
dlmsg6=Canceling...
|
dlmsg6=Canceling...
|
||||||
dlmsg7=Listing covers to download...
|
dlmsg7=Listing covers to download...
|
||||||
dlmsg8=Full cover not found. Downloading from %s
|
dlmsg8=Full cover not found. Downloading from %s
|
||||||
dlmsg9=%i/%i files downloaded. %i are front covers only.
|
dlmsg9=%i/%i files downloaded. %i are front covers only.
|
||||||
DMLdef=Default
|
DMLdef=Default
|
||||||
DMLdefG=Game
|
DMLdefG=Game
|
||||||
DMLntsc=NTSC 480i
|
DMLntsc=NTSC 480i
|
||||||
DMLpal=PAL 576i
|
DMLpal=PAL 576i
|
||||||
DMLpal60=PAL 480i
|
DMLpal60=PAL 480i
|
||||||
DMLprog=NTSC 480p
|
DMLprog=NTSC 480p
|
||||||
DMLprogP=PAL 480p
|
DMLprogP=PAL 480p
|
||||||
errboot1=No cIOS found!\ncIOS d2x 249 base 56 and 250 base 57 are enough for all your games.
|
errboot1=No cIOS found!\ncIOS d2x 249 base 56 and 250 base 57 are enough for all your games.
|
||||||
errboot2=Could not find a device to save configuration files on!
|
errboot2=Could not find a device to save configuration files on!
|
||||||
errboot3=Could not initialize the DIP module!
|
errboot3=Could not initialize the DIP module!
|
||||||
errboot4=No available partitions found!
|
errboot4=No available partitions found!
|
||||||
errboot5=data_on_usb=yes and No available usb partitions for data!\nUsing SD.
|
errboot5=data_on_usb=yes and no available usb partitions for data!\nUsing SD.
|
||||||
errboot6=No available usb partitions for data and no SD inserted!\nExiting.
|
errboot6=No available usb partitions for data and no SD inserted!\nExiting.
|
||||||
errgame1=Cannot find the game with ID: %s
|
errgame1=Cannot find the game with ID: %s
|
||||||
errgame2=No cIOS found!
|
errgame2=No cIOS found!
|
||||||
errgame4=Couldn't load IOS %i
|
errgame4=Couldn't load IOS %i
|
||||||
errgame5=Enabling emu failed!
|
errgame5=Enabling emu failed!
|
||||||
errgame6=Enabling emu after reload failed!
|
errgame6=Enabling emu after reload failed!
|
||||||
errgame7=WDVDGetCoverStatus Failed!
|
errgame7=WDVDGetCoverStatus Failed!
|
||||||
errgame8=Please insert a game disc.
|
errgame8=Please insert a game disc.
|
||||||
errgame9=This is not a Wii or GC disc
|
errgame9=This is not a Wii or GC disc
|
||||||
errgame10=Set USB failed: %d
|
errgame10=Set USB failed: %d
|
||||||
errneek1=Cannot launch neek2o. Verify your neek2o setup
|
errgame11=GameCube Loader not found! Can't launch game.
|
||||||
exit_to=Exit To
|
errgame12=Nintendont not found! Can't launch GC Disc.
|
||||||
ftp1=Start
|
errneek1=Cannot launch neek2o. Verify your neek2o setup
|
||||||
ftp2=Stop
|
exit_to=Exit To
|
||||||
gameinfo1=Developer: %s
|
ftp1=Start
|
||||||
gameinfo2=Publisher: %s
|
ftp2=Stop
|
||||||
gameinfo3=Region: %s
|
gameinfo1=Developer: %s
|
||||||
gameinfo4=Release Date: %i.%i.%i
|
gameinfo2=Publisher: %s
|
||||||
gameinfo5=Genre: %s
|
gameinfo3=Region: %s
|
||||||
gameinfo6=No Gameinfo
|
gameinfo4=Release Date: %i.%i.%i
|
||||||
gametdb_code=EN
|
gameinfo5=Genre: %s
|
||||||
GC_Def=Default
|
gameinfo6=No Gameinfo
|
||||||
GC_DM=DIOS-MIOS
|
gametdb_code=EN
|
||||||
GC_Devo=Devolution
|
GC_Def=Default
|
||||||
GC_Auto=Auto
|
GC_DM=DIOS-MIOS
|
||||||
genesis=Sega Genesis
|
GC_Devo=Devolution
|
||||||
gm1=Play
|
GC_Auto=Auto
|
||||||
gm2=Back
|
genesis=Sega Genesis
|
||||||
hbc=HBC
|
gm1=Play
|
||||||
homebrew=Homebrew
|
gm2=Back
|
||||||
home1=Settings
|
hbc=HBC
|
||||||
home2=Reload Cache
|
homebrew=Homebrew
|
||||||
home3=Update
|
home1=Settings
|
||||||
home4=Credits
|
home2=Reload Cache
|
||||||
home5=Exit To
|
home3=Update
|
||||||
home6=Help
|
home4=Credits
|
||||||
home7=Install Game
|
home5=Exit To
|
||||||
home8=File Explorer
|
home6=Help
|
||||||
home9=Source Menu
|
home7=Install Game
|
||||||
home10=FTP Server
|
home8=File Explorer
|
||||||
hooktype1=VBI
|
home9=Source Menu
|
||||||
hooktype2=KPAD Read
|
home10=FTP Server
|
||||||
hooktype3=Joypad
|
hooktype1=VBI
|
||||||
hooktype4=GXDraw
|
hooktype2=KPAD Read
|
||||||
hooktype5=GXFlush
|
hooktype3=Joypad
|
||||||
hooktype6=OSSleepThread
|
hooktype4=GXDraw
|
||||||
hooktype7=AXNextFrame
|
hooktype5=GXFlush
|
||||||
ios=IOS%i base %s
|
hooktype6=OSSleepThread
|
||||||
lngdef=Default
|
hooktype7=AXNextFrame
|
||||||
lngdut=Dutch
|
ios=IOS%i base %s
|
||||||
lngeng=English
|
lngdef=Default
|
||||||
lngfre=French
|
lngdut=Dutch
|
||||||
lngger=German
|
lngeng=English
|
||||||
lngita=Italian
|
lngfre=French
|
||||||
lngjap=Japanese
|
lngger=German
|
||||||
lngkor=Korean
|
lngita=Italian
|
||||||
lngsch=S. Chinese
|
lngjap=Japanese
|
||||||
lngspa=Spanish
|
lngkor=Korean
|
||||||
lngsys=System
|
lngsch=S. Chinese
|
||||||
lngtch=T. Chinese
|
lngspa=Spanish
|
||||||
main1=Install Game
|
lngsys=System
|
||||||
main2=Welcome to WiiFlow. I have not found any games. Click Install to install games, or Select partition to select your partition type.
|
lngtch=T. Chinese
|
||||||
main3=Select Partition
|
main1=Install Game
|
||||||
main4=Welcome to WiiFlow. I have not found any homebrew apps. Select partition to select your partition type.
|
main2=Welcome to WiiFlow. I have not found any games. Click Install to install games, or Select partition to select your partition type.
|
||||||
main5=Welcome to WiiFlow. I have not found any plugins. Select partition to select your partition type.
|
main3=Select Partition
|
||||||
mastersystem=Sega Master System
|
main4=Welcome to WiiFlow. I have not found any homebrew apps. Select partition to select your partition type.
|
||||||
menu=System Menu
|
main5=Welcome to WiiFlow. I have not found any plugins. Select partition to select your partition type.
|
||||||
NANDfull=Full
|
mastersystem=Sega Master System
|
||||||
NANDoff=Off
|
menu=System Menu
|
||||||
NANDpart=Partial
|
NANDfull=Full
|
||||||
neek1=Launch Title with neek2o
|
NANDoff=Off
|
||||||
neek2o=neek2o
|
NANDpart=Partial
|
||||||
neogeo=Neo-Geo
|
neek1=Launch Title with neek2o
|
||||||
nes=Nintendo
|
neek2o=neek2o
|
||||||
nintendo64=Nintendo64
|
neogeo=Neo-Geo
|
||||||
NMMdebug=Debug
|
nes=Nintendo
|
||||||
NMMDef=Default
|
nintendo64=Nintendo64
|
||||||
NMMOff=Disabled
|
NMMdebug=Debug
|
||||||
NMMon=Enabled
|
NMMDef=Default
|
||||||
NoDVDDef=Default
|
NMMOff=Disabled
|
||||||
NoDVDOff=Disabled
|
NMMon=Enabled
|
||||||
NoDVDon=Enabled
|
NoDVDDef=Default
|
||||||
off=Off
|
NoDVDOff=Disabled
|
||||||
on=On
|
NoDVDon=Enabled
|
||||||
players= Players
|
off=Off
|
||||||
prii=Priiloader
|
on=On
|
||||||
real=Real Nand
|
players= Players
|
||||||
SaveDef=Default
|
prii=Priiloader
|
||||||
SaveFull=Full
|
real=Real Nand
|
||||||
SaveFullG=Full
|
SaveDef=Default
|
||||||
SaveOff=Off
|
SaveFull=Full
|
||||||
SaveOffG=Off
|
SaveFullG=Full
|
||||||
SavePart=Game save
|
SaveOff=Off
|
||||||
SavePartG=Game save
|
SaveOffG=Off
|
||||||
SaveReg=Regionswitch
|
SavePart=Game save
|
||||||
SaveRegG=Regionswitch
|
SavePartG=Game save
|
||||||
snes=Super Nintendo
|
SaveReg=Regionswitch
|
||||||
stup1=Select Source
|
SaveRegG=Regionswitch
|
||||||
stup2=** DISABLED **
|
snes=Super Nintendo
|
||||||
sys1=Update WiiFlow
|
stup1=Select Source
|
||||||
sys2=WiiFlow Version:
|
stup2=** DISABLED **
|
||||||
sys3=Cancel
|
sys1=Update WiiFlow
|
||||||
sys4=Upgrade
|
sys2=WiiFlow Version:
|
||||||
sys7=Installed Version.
|
sys3=Cancel
|
||||||
translation_author=
|
sys4=Upgrade
|
||||||
turbografx16=TurboGrafx-16
|
sys7=Installed Version.
|
||||||
turbografxcd=TurboGrafx-CD
|
translation_author=
|
||||||
unknown=Unknown
|
turbografx16=TurboGrafx-16
|
||||||
viddef=Default
|
turbografxcd=TurboGrafx-CD
|
||||||
vidgame=Game
|
unknown=Unknown
|
||||||
vidntsc=NTSC
|
viddef=Default
|
||||||
vidp50=PAL 50Hz
|
vidgame=Game
|
||||||
vidp60=PAL 60Hz
|
vidntsc=NTSC
|
||||||
vidprog=Progressive
|
vidp50=PAL 50Hz
|
||||||
vidsys=System
|
vidp60=PAL 60Hz
|
||||||
vmpall=All
|
vidprog=Progressive
|
||||||
vmpmore=More
|
vidsys=System
|
||||||
vmpnone=None
|
vmpall=All
|
||||||
vmpnormal=Normal
|
vmpmore=More
|
||||||
wad1=Install WAD
|
vmpnone=None
|
||||||
wad2=Go
|
vmpnormal=Normal
|
||||||
wad3=Selected %s, after the installation you return to the explorer.
|
wad1=Install WAD
|
||||||
wad4=Installing WAD, please wait...
|
wad2=Go
|
||||||
wad5=Installation error %i!
|
wad3=Selected %s, after the installation you return to the explorer.
|
||||||
wad6=Installation finished with %i hash fails.
|
wad4=Installing WAD, please wait...
|
||||||
wbfsadddlg=Please insert the disc you want to copy, then click on Go.
|
wad5=Installation error %i!
|
||||||
wbfscpydlg=If you are sure you want to copy this game to SD, click on Go.
|
wad6=Installation finished with %i hash fails.
|
||||||
wbfsop1=Install Game
|
wbfsadddlg=Please insert the disc you want to copy, then click on Go.
|
||||||
wbfsop10=Copying [%s] %s...
|
wbfscpydlg=If you are sure you want to copy this game to SD, click on Go.
|
||||||
wbfsop11=Copy Game
|
wbfsop1=Install Game
|
||||||
wbfsop12=DVDError(%d)
|
wbfsop10=Copying [%s] %s...
|
||||||
wbfsop13=Game installed, but disc contains errors (%d)
|
wbfsop11=Copy Game
|
||||||
wbfsop14=Game copied, press Back to boot the game.
|
wbfsop12=DVDError(%d)
|
||||||
wbfsop15=Calculating space needed for %s
|
wbfsop13=Game installed, but disc contains errors (%d)
|
||||||
wbfsop16=Installing %s
|
wbfsop14=Game copied, press Back to boot the game.
|
||||||
wbfsop17=Installing %s disc %d/2
|
wbfsop15=Calculating space needed for %s
|
||||||
wbfsop18=This is a Wii disc!
|
wbfsop16=Installing %s
|
||||||
wbfsop19=This is not a Gamecube disc!
|
wbfsop17=Installing %s disc %d/2
|
||||||
wbfsop2=Delete Game
|
wbfsop18=This is a Wii disc!
|
||||||
wbfsop20=You inserted disc %d again!!
|
wbfsop19=This is not a Gamecube disc!
|
||||||
wbfsop21=This is a disc of another game!!
|
wbfsop2=Delete Game
|
||||||
wbfsop22=Installing %s...\n Please insert disc 2 to continue
|
wbfsop20=You inserted disc %d again!!
|
||||||
wbfsop23=Calculating space needed for %s...\n Please insert disc %d to continue
|
wbfsop21=This is a disc of another game!!
|
||||||
wbfsop24=Not enough space: %d blocks needed, %d available
|
wbfsop22=Installing %s...\n Please insert disc 2 to continue
|
||||||
wbfsop25=Disc read error!! Please clean the disc
|
wbfsop23=Calculating space needed for %s...\n Please insert disc %d to continue
|
||||||
wbfsop26=Disc ejected!! Please insert disc again
|
wbfsop24=Not enough space: %d blocks needed, %d available
|
||||||
wbfsop4=Back
|
wbfsop25=Disc read error!! Please clean the disc
|
||||||
wbfsop5=Go
|
wbfsop26=Disc ejected!! Please insert disc again
|
||||||
wbfsop6=Installing [%s] %s...
|
wbfsop4=Back
|
||||||
wbfsop7=Game deleted
|
wbfsop5=Go
|
||||||
wbfsop8=Game installed, press B to exit.
|
wbfsop6=Installing [%s] %s...
|
||||||
wbfsop9=An error has occurred
|
wbfsop7=Game deleted
|
||||||
wbfsoperr1=Disc_Wait failed
|
wbfsop8=Game installed, press B to exit.
|
||||||
wbfsoperr2=Disc_Open failed
|
wbfsop9=An error has occurred
|
||||||
wbfsoperr3=This is not a Wii disc!
|
wbfsoperr1=Disc_Wait failed
|
||||||
wbfsoperr4=Game already installed
|
wbfsoperr2=Disc_Open failed
|
||||||
wbfsoperr5=Deleting this Channel is not allowed!
|
wbfsoperr3=This is not a Wii disc!
|
||||||
wbfsprogress=%i%%
|
wbfsoperr4=Game already installed
|
||||||
wbfsremdlg=To permanently remove the game : %s, click on Go.
|
wbfsoperr5=Deleting this Channel is not allowed!
|
||||||
wifiplayers= Wifi Players
|
wbfsprogress=%i%%
|
||||||
wii=Wii
|
wbfsremdlg=To permanently remove the game : %s, click on Go.
|
||||||
wiichannels=Offical Wii Channels
|
wifiplayers= Wifi Players
|
||||||
wiiware=WiiWare
|
wii=Wii
|
||||||
|
wiichannels=Offical Wii Channels
|
||||||
|
wiiware=WiiWare
|
||||||
|
@ -1,58 +1,58 @@
|
|||||||
|
|
||||||
Bedienung:
|
Bedienung:
|
||||||
- Hauptmenü (Coverflow):
|
- Hauptmenü (Coverflow):
|
||||||
-- Hoch / Runter = vorheriges / nächstes Spiel (Vertikal)
|
-- Hoch / Runter = vorheriges / nächstes Spiel (Vertikal)
|
||||||
-- Links / Rechts = vorheriges / nächstes Spiel (Horizontal)
|
-- Links / Rechts = vorheriges / nächstes Spiel (Horizontal)
|
||||||
-- Minus / Plus = Spiele schnell durchsuchen
|
-- Minus / Plus = Spiele schnell durchsuchen
|
||||||
-- A = Spiel auswählen
|
-- A = Spiel auswählen
|
||||||
-- B+A = Spiel sofort Starten
|
-- B+A = Spiel sofort Starten
|
||||||
-- B+Home = WiiFlow neu laden
|
-- B+Home = WiiFlow neu laden
|
||||||
-- Home = Home Menü öffnen / WiiFlow beenden
|
-- Home = Home Menü öffnen / WiiFlow beenden
|
||||||
-- 1 / 2 = vorheriger / nächster Coverflow Modus
|
-- 1 / 2 = vorheriger / nächster Coverflow Modus
|
||||||
-- B+Left / B+Right = Song wählen
|
-- B+Left / B+Right = Song wählen
|
||||||
-- B+UP / B+DOWN = Alphabetische Suche
|
-- B+UP / B+DOWN = Alphabetische Suche
|
||||||
-- B+Bildschirmpfeile = Alphabetische Suche
|
-- B+Bildschirmpfeile = Alphabetische Suche
|
||||||
-- B+Minus = Partition wechseln
|
-- B+Minus = Partition wechseln
|
||||||
-- B+Plus = Spiele sortieren
|
-- B+Plus = Spiele sortieren
|
||||||
|
|
||||||
-- A auf Stern Icon = Favoriten
|
-- A auf Stern Icon = Favoriten
|
||||||
-- B auf Stern Icon = Kategorien
|
-- B auf Stern Icon = Kategorien
|
||||||
-- A auf Zahnrad Icon = WiiFlow Einstellungen
|
-- A auf Zahnrad Icon = WiiFlow Einstellungen
|
||||||
-- A auf USB, DML, Kanäle, Emu, oder Homebrew Icon = Ansicht wechseln
|
-- A auf Wii, GC, Kanäle, Einstecken, oder Homebrew Icon = Ansicht wechseln
|
||||||
-- B auf USB, DML, Kanäle, Emu, oder Homebrew Icon = Emu-NAND ein/ausschalten und zur Kanäle Ansicht wechseln
|
-- B auf Wii, GC, Kanäle, Einstecken, oder Homebrew Icon = Emu-NAND ein/ausschalten und zur Kanäle Ansicht wechseln
|
||||||
-- A auf Haus Icon = Home Menü öffnen / WiiFlow beenden
|
-- A auf Haus Icon = Home Menü öffnen / WiiFlow beenden
|
||||||
-- B für 3 Sekunden halten / B auf Haus Icon (wenn wiimote_gestures ein) = Quellen Menü öffnen
|
-- B für 3 Sekunden halten / B auf Haus Icon (wenn wiimote_gestures ein) = Quellen Menü öffnen
|
||||||
-- A auf Disk Icon (Spiel in DVD Laufwerk) = Spiel im Laufwerk starten
|
-- A auf Disk Icon (Spiel in DVD Laufwerk) = Spiel im Laufwerk starten
|
||||||
-- A auf Fragezeichen Icon = Credits und diese Hilfe anzeigen
|
-- A auf Fragezeichen Icon = Credits und diese Hilfe anzeigen
|
||||||
|
|
||||||
- Spiel:
|
- Spiel:
|
||||||
-- A auf Box = Rückseite anzeigen
|
-- A auf Box = Rückseite anzeigen
|
||||||
-- A außerhalb des Bildschirms = Spiel starten
|
-- A außerhalb des Bildschirms = Spiel starten
|
||||||
-- B = zurück zum Coverflow
|
-- B = zurück zum Coverflow
|
||||||
-- Hoch / Runter = vorheriges / nächstes Spiel (Vertikal)
|
-- Hoch / Runter = vorheriges / nächstes Spiel (Vertikal)
|
||||||
-- Links / Rechts = vorheriges / nächstes Spiel (Horizontal)
|
-- Links / Rechts = vorheriges / nächstes Spiel (Horizontal)
|
||||||
-- Plus = Spielinformation
|
-- Plus = Spielinformation
|
||||||
---Rechts (in Spielinformation) = Spielbeschreibung
|
---Rechts (in Spielinformation) = Spielbeschreibung
|
||||||
---Links (in Spielinformation) = Spielinformation
|
---Links (in Spielinformation) = Spielinformation
|
||||||
-- A auf Stern Icon = Zum Favoriten setzen (Gelb = Favorit)
|
-- A auf Stern Icon = Zum Favoriten setzen (Gelb = Favorit)
|
||||||
-- B auf Stern Icon = Kategorien für Spiel setzen
|
-- B auf Stern Icon = Kategorien für Spiel setzen
|
||||||
-- A auf Hand Icon = Kindersicherung (Rot = gesperrt)
|
-- A auf Hand Icon = Kindersicherung (Rot = gesperrt)
|
||||||
-- A auf Gear Icon = Spieleinstellungen
|
-- A auf Gear Icon = Spieleinstellungen
|
||||||
-- A auf X Icon = Spiel löschen
|
-- A auf X Icon = Spiel löschen
|
||||||
|
|
||||||
- Einstellungen:
|
- Einstellungen:
|
||||||
-- Minus / Plus = vorherige / nächste Seite
|
-- Minus / Plus = vorherige / nächste Seite
|
||||||
-- Links / Rechts = vorherige / nächste Seite
|
-- Links / Rechts = vorherige / nächste Seite
|
||||||
|
|
||||||
- Coverflow Einstellungen:
|
- Coverflow Einstellungen:
|
||||||
-- B+Minus / B+Plus = vorherige / nächste Seite
|
-- B+Minus / B+Plus = vorherige / nächste Seite
|
||||||
-- B = Schneller einstellen (B+A anstelle von A auf Button)
|
-- B = Schneller einstellen (B+A anstelle von A auf Button)
|
||||||
-- B+1 = Coverflow kopieren
|
-- B+1 = Coverflow kopieren
|
||||||
-- B+2 = Coverflow einfügen
|
-- B+2 = Coverflow einfügen
|
||||||
|
|
||||||
TIPPS um Spiele die nicht funktionieren zu starten:
|
TIPPS um Spiele die nicht funktionieren zu starten:
|
||||||
Falls ein Spiel einfach einfriert und einen schwarzen Bildschirm verursacht stelle sicher ob das Spiel aus deiner Region kommt.
|
Falls ein Spiel einfach einfriert und einen schwarzen Bildschirm verursacht stelle sicher ob das Spiel aus deiner Region kommt.
|
||||||
(gehe in die Spieleinstellungen.) Falls es nicht aus deiner Region kommt, stelle den Videomodus auf die Region des Spiels.
|
(gehe in die Spieleinstellungen.) Falls es nicht aus deiner Region kommt, stelle den Videomodus auf die Region des Spiels.
|
||||||
Du kannst auch ein Komponentenkabel benutzen und deine Wii auf 480p stellen.
|
Du kannst auch ein Komponentenkabel benutzen und deine Wii auf 480p stellen.
|
||||||
|
|
||||||
Falls ein Spiel abstürzt versuche es einfach erneuert. Falls das nicht helfen sollte, stelle sicher das die Speicherstandemulation auf \"Aus\" in den Spieleinstellugnen gestellt ist.
|
Falls ein Spiel abstürzt versuche es einfach erneuert. Falls das nicht helfen sollte, stelle sicher das die Speicherstandemulation auf \"Aus\" in den Spieleinstellugnen gestellt ist.
|
||||||
|
@ -1,59 +1,59 @@
|
|||||||
|
|
||||||
Controles:
|
Controles:
|
||||||
- Menú Principal (coverflow) :
|
- Menú Principal (coverflow) :
|
||||||
-- Arriba / Abajo = Previo / próximo juego (vertical)
|
-- Arriba / Abajo = Previo / próximo juego (vertical)
|
||||||
-- Izquierda / Derecha = Previo / próximo Juego (horizontal)
|
-- Izquierda / Derecha = Previo / próximo Juego (horizontal)
|
||||||
-- Menos / Mas = Paso Rápido de los Juegos
|
-- Menos / Mas = Paso Rápido de los Juegos
|
||||||
-- A = Seleccionar Juego
|
-- A = Seleccionar Juego
|
||||||
-- B+A = Lanzar juego inmediatamente
|
-- B+A = Lanzar juego inmediatamente
|
||||||
-- B+Home = Recarga WiiFlow
|
-- B+Home = Recarga WiiFlow
|
||||||
-- Home = Abre Menú Home / Salir WiiFlow
|
-- Home = Abre Menú Home / Salir WiiFlow
|
||||||
-- 1 / 2 = Previo / próximo modo coverflow
|
-- 1 / 2 = Previo / próximo modo coverflow
|
||||||
-- B+Izquierda / B+Derecha = Cambia canción
|
-- B+Izquierda / B+Derecha = Cambia canción
|
||||||
-- B+Arriba / B+Abajo = Búsqueda Alfabética
|
-- B+Arriba / B+Abajo = Búsqueda Alfabética
|
||||||
-- B+Flechas en pantalla = Búsqueda Alfabética
|
-- B+Flechas en pantalla = Búsqueda Alfabética
|
||||||
-- B+Menos = Cambia Partición
|
-- B+Menos = Cambia Partición
|
||||||
-- B+Más = Ordena Juegos
|
-- B+Más = Ordena Juegos
|
||||||
|
|
||||||
-- A en Icono Inicio = Favoritos
|
-- A en Icono Inicio = Favoritos
|
||||||
-- B en Icono Inicio = Categorías
|
-- B en Icono Inicio = Categorías
|
||||||
-- A en Icono de engranaje = WiiFlow Ajustes
|
-- A en Icono de engranaje = WiiFlow Ajustes
|
||||||
-- B en Icono de engranaje = Refrescar cache
|
-- B en Icono de engranaje = Refrescar cache
|
||||||
-- A en USB, DML, Canales, Emu, o Icono Homebrew = Cambia a esa Vista
|
-- A en Wii, GC, Canales, Enchufar, o Icono Homebrew = Cambia a esa Vista
|
||||||
-- B en USB, DML, Canales, Emu, o Icono Homebrew = Activa/Desactiva Emu-NAND y cambia a vista de canales
|
-- B en Wii, GC, Canales, Enchufar, o Icono Homebrew = Activa/Desactiva Emu-NAND y cambia a vista de canales
|
||||||
-- A en Icono Home = Salir a Menú Wii
|
-- A en Icono Home = Salir a Menú Wii
|
||||||
-- Presionar B durante 3 segundos / B en Icono Home (wiimote_gestos Activado) = Muestra el menú Source
|
-- Presionar B durante 3 segundos / B en Icono Home (wiimote_gestos Activado) = Muestra el menú Source
|
||||||
-- A en Icono Disco (Disco Juego en Unidad) = Lanzar disco de juego
|
-- A en Icono Disco (Disco Juego en Unidad) = Lanzar disco de juego
|
||||||
-- A en Icono Interrogación = Muestra créditos y este archivo ayuda, y actualiza WiiFlow
|
-- A en Icono Interrogación = Muestra créditos y este archivo ayuda, y actualiza WiiFlow
|
||||||
|
|
||||||
- Juego :
|
- Juego :
|
||||||
-- A en Caja = Muestra la parte trasera
|
-- A en Caja = Muestra la parte trasera
|
||||||
-- A fuera de pantalla = Lanza el juego
|
-- A fuera de pantalla = Lanza el juego
|
||||||
-- B = Regresa a coverflow
|
-- B = Regresa a coverflow
|
||||||
-- Arriba / Abajo = Previo / Próximo Juego (vertical)
|
-- Arriba / Abajo = Previo / Próximo Juego (vertical)
|
||||||
-- Izquierda / Derecha = Previo / Próximo Juego (horizontal)
|
-- Izquierda / Derecha = Previo / Próximo Juego (horizontal)
|
||||||
-- Más = Info del Juego
|
-- Más = Info del Juego
|
||||||
---Derecha (en Info del Juego) = Descripción del juego
|
---Derecha (en Info del Juego) = Descripción del juego
|
||||||
---Izquierda (en Descripción del Juego) = Info del juego
|
---Izquierda (en Descripción del Juego) = Info del juego
|
||||||
-- A en Icono Inicio = Activar favorito (Amarillo = Favorito)
|
-- A en Icono Inicio = Activar favorito (Amarillo = Favorito)
|
||||||
-- B en Icono Inicio = Establecer categorías de juego
|
-- B en Icono Inicio = Establecer categorías de juego
|
||||||
-- A en Icono Mano = Bloqueo Parental (Rejo = Bloqueado)
|
-- A en Icono Mano = Bloqueo Parental (Rejo = Bloqueado)
|
||||||
-- A en Icono de engranaje = Ajustes de juego
|
-- A en Icono de engranaje = Ajustes de juego
|
||||||
-- A en Icono X = Borra Juego
|
-- A en Icono X = Borra Juego
|
||||||
|
|
||||||
- Menús Ajustes :
|
- Menús Ajustes :
|
||||||
-- Menos / Mas = Previo / Próxima pagina
|
-- Menos / Mas = Previo / Próxima pagina
|
||||||
-- Izquierda / Derecha = Previo / Próxima pagina
|
-- Izquierda / Derecha = Previo / Próxima pagina
|
||||||
|
|
||||||
- Coverflow Ajuste Configuración :
|
- Coverflow Ajuste Configuración :
|
||||||
-- B+Menos / B+Más = Previo / Próxima pagina
|
-- B+Menos / B+Más = Previo / Próxima pagina
|
||||||
-- B = Ajuste más rápido (B+A en lugar de 'A' para hacer clic en un botón)
|
-- B = Ajuste más rápido (B+A en lugar de 'A' para hacer clic en un botón)
|
||||||
-- B+1 = Copia todo coverflow
|
-- B+1 = Copia todo coverflow
|
||||||
-- B+2 = Pasa coverflow
|
-- B+2 = Pasa coverflow
|
||||||
|
|
||||||
CONSEJOS para juegos que se bloquean:
|
CONSEJOS para juegos que se bloquean:
|
||||||
Si el juego solo se bloquea con una pantalla en negro en el lanzamiento, comprobar si es un juego PAL.
|
Si el juego solo se bloquea con una pantalla en negro en el lanzamiento, comprobar si es un juego PAL.
|
||||||
(Pulse el botón Más en la pantalla del juego.) Si se trata de PAL, establecer el modo de juego de vídeo a "PAL 50 Hz" en la configuración del juego.
|
(Pulse el botón Más en la pantalla del juego.) Si se trata de PAL, establecer el modo de juego de vídeo a "PAL 50 Hz" en la configuración del juego.
|
||||||
Usted tendrá que utilizar una conexión de componentes a la TV y tener tu Wii en modo de vídeo 480p.
|
Usted tendrá que utilizar una conexión de componentes a la TV y tener tu Wii en modo de vídeo 480p.
|
||||||
|
|
||||||
Si un juego se bloquea, a continuación, intente ejecutar el juego de nuevo. Si se bloquea continuamente, cambie la emulación de USB a "No" en la configuración del juego.
|
Si un juego se bloquea, a continuación, intente ejecutar el juego de nuevo. Si se bloquea continuamente, cambie la emulación de USB a "No" en la configuración del juego.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user