mirror of
https://github.com/wiidev/usbloadergx.git
synced 2024-12-23 18:31:56 +01:00
*Whole new GlobalSettingsMenu arrangement (thx to dj_skull for his idea and plan (issue 433))
*Lots of small fixes *Added Error002fix selection in GameSettings **NOTE 1: You might want to delete your Configfiles before using this new Rev. **NOTE 2: Known issue with Settings is that WiiMotePointer is sometimes being displaced. I am searching for the reason right now.
This commit is contained in:
parent
95bf8acf16
commit
32144f46f9
File diff suppressed because one or more lines are too long
@ -22,7 +22,6 @@
|
|||||||
#include "getentries.h"
|
#include "getentries.h"
|
||||||
|
|
||||||
/*** Variables that are also used extern ***/
|
/*** Variables that are also used extern ***/
|
||||||
char missingFiles[500][12];
|
|
||||||
int cntMissFiles = 0;
|
int cntMissFiles = 0;
|
||||||
int networkisinitialized;
|
int networkisinitialized;
|
||||||
|
|
||||||
@ -32,6 +31,7 @@ static GuiText timeTxt(NULL, 26, (GXColor){THEME.prompttxt_r, THEME.prompttxt_g,
|
|||||||
static GuiText sizeTxt(NULL, 26, (GXColor){THEME.prompttxt_r, THEME.prompttxt_g, THEME.prompttxt_b, 255});
|
static GuiText sizeTxt(NULL, 26, (GXColor){THEME.prompttxt_r, THEME.prompttxt_g, THEME.prompttxt_b, 255});
|
||||||
static GuiImageData progressbar(progressbar_png);
|
static GuiImageData progressbar(progressbar_png);
|
||||||
static GuiImage progressbarImg(&progressbar);
|
static GuiImage progressbarImg(&progressbar);
|
||||||
|
static char missingFiles[500][12];
|
||||||
|
|
||||||
/*** Extern variables ***/
|
/*** Extern variables ***/
|
||||||
extern GuiWindow * mainWindow;
|
extern GuiWindow * mainWindow;
|
||||||
@ -42,7 +42,6 @@ extern float gamesize;
|
|||||||
extern struct discHdr * gameList;
|
extern struct discHdr * gameList;
|
||||||
extern u8 shutdown;
|
extern u8 shutdown;
|
||||||
extern u8 reset;
|
extern u8 reset;
|
||||||
extern int vol;
|
|
||||||
|
|
||||||
/*** Extern functions ***/
|
/*** Extern functions ***/
|
||||||
extern void ResumeGui();
|
extern void ResumeGui();
|
||||||
@ -65,8 +64,8 @@ int OnScreenKeyboard(char * var, u32 maxlen, int min)
|
|||||||
|
|
||||||
GuiKeyboard keyboard(var, maxlen, min, keyset);
|
GuiKeyboard keyboard(var, maxlen, min, keyset);
|
||||||
|
|
||||||
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, vol);
|
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
char imgPath[50];
|
char imgPath[50];
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
||||||
@ -139,7 +138,7 @@ void WindowCredits()
|
|||||||
StopOgg();
|
StopOgg();
|
||||||
|
|
||||||
creditsMusic = new GuiSound(credits_music_ogg, credits_music_ogg_size, SOUND_OGG, 55);
|
creditsMusic = new GuiSound(credits_music_ogg, credits_music_ogg_size, SOUND_OGG, 55);
|
||||||
creditsMusic->SetVolume(55);
|
creditsMusic->SetVolume(60);
|
||||||
creditsMusic->SetLoop(1);
|
creditsMusic->SetLoop(1);
|
||||||
creditsMusic->Play();
|
creditsMusic->Play();
|
||||||
|
|
||||||
@ -327,7 +326,7 @@ void WindowCredits()
|
|||||||
bgMusic->PlayOggFile(Settings.ogg_path);
|
bgMusic->PlayOggFile(Settings.ogg_path);
|
||||||
}
|
}
|
||||||
bgMusic->SetPlayTime(thetimeofbg);
|
bgMusic->SetPlayTime(thetimeofbg);
|
||||||
SetVolumeOgg(255*(vol/100.0));
|
SetVolumeOgg(255*(Settings.volume/100.0));
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
@ -350,8 +349,9 @@ WindowPrompt(const char *title, const char *msg, const char *btn1Label,
|
|||||||
GuiWindow promptWindow(472,320);
|
GuiWindow promptWindow(472,320);
|
||||||
promptWindow.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
promptWindow.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
||||||
promptWindow.SetPosition(0, -10);
|
promptWindow.SetPosition(0, -10);
|
||||||
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
|
||||||
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, vol);
|
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
char imgPath[50];
|
char imgPath[50];
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
||||||
GuiImageData btnOutline(imgPath, button_dialogue_box_png);
|
GuiImageData btnOutline(imgPath, button_dialogue_box_png);
|
||||||
@ -597,14 +597,14 @@ WindowExitPrompt(const char *title, const char *msg, const char *btn1Label,
|
|||||||
const char *btn4Label)
|
const char *btn4Label)
|
||||||
{
|
{
|
||||||
GuiSound * homein = NULL;
|
GuiSound * homein = NULL;
|
||||||
homein = new GuiSound(menuin_ogg, menuin_ogg_size, SOUND_OGG, vol);
|
homein = new GuiSound(menuin_ogg, menuin_ogg_size, SOUND_OGG, Settings.sfxvolume);
|
||||||
homein->SetVolume(vol);
|
homein->SetVolume(Settings.sfxvolume);
|
||||||
homein->SetLoop(0);
|
homein->SetLoop(0);
|
||||||
homein->Play();
|
homein->Play();
|
||||||
|
|
||||||
GuiSound * homeout = NULL;
|
GuiSound * homeout = NULL;
|
||||||
homeout = new GuiSound(menuout_ogg, menuout_ogg_size, SOUND_OGG, vol);
|
homeout = new GuiSound(menuout_ogg, menuout_ogg_size, SOUND_OGG, Settings.sfxvolume);
|
||||||
homeout->SetVolume(vol);
|
homeout->SetVolume(Settings.sfxvolume);
|
||||||
homeout->SetLoop(0);
|
homeout->SetLoop(0);
|
||||||
|
|
||||||
int choice = -1;
|
int choice = -1;
|
||||||
@ -613,8 +613,8 @@ WindowExitPrompt(const char *title, const char *msg, const char *btn1Label,
|
|||||||
GuiWindow promptWindow(640,480);
|
GuiWindow promptWindow(640,480);
|
||||||
promptWindow.SetAlignment(ALIGN_LEFT, ALIGN_TOP);
|
promptWindow.SetAlignment(ALIGN_LEFT, ALIGN_TOP);
|
||||||
promptWindow.SetPosition(0, 0);
|
promptWindow.SetPosition(0, 0);
|
||||||
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, vol);
|
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
GuiImageData top(exit_top_png);
|
GuiImageData top(exit_top_png);
|
||||||
GuiImageData topOver(exit_top_over_png);
|
GuiImageData topOver(exit_top_over_png);
|
||||||
@ -909,8 +909,8 @@ int GameWindowPrompt()
|
|||||||
GuiWindow promptWindow(472,320);
|
GuiWindow promptWindow(472,320);
|
||||||
promptWindow.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
promptWindow.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
||||||
promptWindow.SetPosition(0, -10);
|
promptWindow.SetPosition(0, -10);
|
||||||
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, vol);
|
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
char imgPath[100];
|
char imgPath[100];
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
||||||
@ -1401,8 +1401,8 @@ DiscWait(const char *title, const char *msg, const char *btn1Label, const char *
|
|||||||
GuiWindow promptWindow(472,320);
|
GuiWindow promptWindow(472,320);
|
||||||
promptWindow.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
promptWindow.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
||||||
promptWindow.SetPosition(0, -10);
|
promptWindow.SetPosition(0, -10);
|
||||||
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, vol);
|
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
char imgPath[100];
|
char imgPath[100];
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
||||||
@ -1604,8 +1604,8 @@ int NetworkInitPromp(int choice2)
|
|||||||
promptWindow.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
promptWindow.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
||||||
promptWindow.SetPosition(0, -10);
|
promptWindow.SetPosition(0, -10);
|
||||||
|
|
||||||
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, vol);
|
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
char imgPath[100];
|
char imgPath[100];
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
||||||
@ -1922,8 +1922,8 @@ ProgressDownloadWindow(int choice2)
|
|||||||
promptWindow.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
promptWindow.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
||||||
promptWindow.SetPosition(0, -10);
|
promptWindow.SetPosition(0, -10);
|
||||||
|
|
||||||
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, vol);
|
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
char imgPath[100];
|
char imgPath[100];
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
||||||
@ -2159,8 +2159,8 @@ ProgressUpdateWindow()
|
|||||||
promptWindow.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
promptWindow.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
||||||
promptWindow.SetPosition(0, -10);
|
promptWindow.SetPosition(0, -10);
|
||||||
|
|
||||||
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, vol);
|
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
char imgPath[100];
|
char imgPath[100];
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
||||||
@ -2436,3 +2436,8 @@ ProgressUpdateWindow()
|
|||||||
|
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
char * GetMissingFiles()
|
||||||
|
{
|
||||||
|
return (char *) missingFiles;
|
||||||
|
}
|
||||||
|
@ -21,5 +21,6 @@ int NetworkInitPromp(int choice2);
|
|||||||
int ProgressWindow(const char *title, const char *msg);
|
int ProgressWindow(const char *title, const char *msg);
|
||||||
int ProgressDownloadWindow(int choice2);
|
int ProgressDownloadWindow(int choice2);
|
||||||
int ProgressUpdateWindow();
|
int ProgressUpdateWindow();
|
||||||
|
char * GetMissingFiles();
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
1891
source/Settings.cpp
1891
source/Settings.cpp
File diff suppressed because it is too large
Load Diff
512
source/SettingsPrompts.cpp
Normal file
512
source/SettingsPrompts.cpp
Normal file
@ -0,0 +1,512 @@
|
|||||||
|
#include <gccore.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
#include "filelist.h"
|
||||||
|
#include "sys.h"
|
||||||
|
#include "language.h"
|
||||||
|
#include "libwiigui/gui.h"
|
||||||
|
#include "libwiigui/gui_customoptionbrowser.h"
|
||||||
|
#include "listfiles.h"
|
||||||
|
#include "cfg.h"
|
||||||
|
#include "main.h"
|
||||||
|
#include "PromptWindows.h"
|
||||||
|
#include "fatmounter.h"
|
||||||
|
|
||||||
|
|
||||||
|
/*** Extern variables ***/
|
||||||
|
extern GuiWindow * mainWindow;
|
||||||
|
extern GuiSound * bgMusic;
|
||||||
|
extern u8 shutdown;
|
||||||
|
extern u8 reset;
|
||||||
|
|
||||||
|
/*** Extern functions ***/
|
||||||
|
extern void ResumeGui();
|
||||||
|
extern void HaltGui();
|
||||||
|
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* MenuOGG
|
||||||
|
***************************************************************************/
|
||||||
|
bool MenuOGG()
|
||||||
|
{
|
||||||
|
int cnt = 0;
|
||||||
|
int ret = 0, choice = 0;
|
||||||
|
int scrollon, nothingchanged = 0;
|
||||||
|
bool returnhere = false;
|
||||||
|
|
||||||
|
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
|
char imgPath[100];
|
||||||
|
|
||||||
|
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
||||||
|
GuiImageData btnOutline(imgPath, button_dialogue_box_png);
|
||||||
|
snprintf(imgPath, sizeof(imgPath), "%ssettings_background.png", CFG.theme_path);
|
||||||
|
GuiImageData settingsbg(imgPath, settings_background_png);
|
||||||
|
|
||||||
|
GuiTrigger trigA;
|
||||||
|
trigA.SetSimpleTrigger(-1, WPAD_BUTTON_A | WPAD_CLASSIC_BUTTON_A, PAD_BUTTON_A);
|
||||||
|
GuiTrigger trigB;
|
||||||
|
trigB.SetButtonOnlyTrigger(-1, WPAD_BUTTON_B | WPAD_CLASSIC_BUTTON_B, PAD_BUTTON_B);
|
||||||
|
GuiTrigger trigMinus;
|
||||||
|
trigMinus.SetButtonOnlyTrigger(-1, WPAD_BUTTON_MINUS | WPAD_CLASSIC_BUTTON_MINUS, 0);
|
||||||
|
GuiTrigger trigPlus;
|
||||||
|
trigPlus.SetButtonOnlyTrigger(-1, WPAD_BUTTON_PLUS | WPAD_CLASSIC_BUTTON_PLUS, 0);
|
||||||
|
|
||||||
|
char fullpath[150];
|
||||||
|
char shortpath[35];
|
||||||
|
int countoggs = GetAllDirFiles(Settings.oggload_path);
|
||||||
|
|
||||||
|
if(!strcmp("", Settings.oggload_path)) {
|
||||||
|
sprintf(shortpath, "%s", LANGUAGE.Standard);
|
||||||
|
} else {
|
||||||
|
sprintf(shortpath, "%s", Settings.oggload_path);
|
||||||
|
}
|
||||||
|
|
||||||
|
GuiText titleTxt(shortpath, 24, (GXColor){0, 0, 0, 255});
|
||||||
|
titleTxt.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
||||||
|
titleTxt.SetPosition(0,0);
|
||||||
|
GuiButton pathBtn(300, 50);
|
||||||
|
pathBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
||||||
|
pathBtn.SetPosition(0,28);
|
||||||
|
pathBtn.SetLabel(&titleTxt);
|
||||||
|
pathBtn.SetSoundOver(&btnSoundOver);
|
||||||
|
pathBtn.SetSoundClick(&btnClick);
|
||||||
|
pathBtn.SetTrigger(&trigA);
|
||||||
|
pathBtn.SetEffectGrow();
|
||||||
|
|
||||||
|
GuiImage oggmenubackground(&settingsbg);
|
||||||
|
oggmenubackground.SetAlignment(ALIGN_LEFT, ALIGN_TOP);
|
||||||
|
oggmenubackground.SetPosition(0, 0);
|
||||||
|
|
||||||
|
GuiText backBtnTxt(LANGUAGE.Back , 22, (GXColor){THEME.prompttxt_r, THEME.prompttxt_g, THEME.prompttxt_b, 255});
|
||||||
|
backBtnTxt.SetMaxWidth(btnOutline.GetWidth()-30);
|
||||||
|
GuiImage backBtnImg(&btnOutline);
|
||||||
|
if (Settings.wsprompt == yes){
|
||||||
|
backBtnTxt.SetWidescreen(CFG.widescreen);
|
||||||
|
backBtnImg.SetWidescreen(CFG.widescreen);
|
||||||
|
}
|
||||||
|
GuiButton backBtn(btnOutline.GetWidth(), btnOutline.GetHeight());
|
||||||
|
backBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
||||||
|
backBtn.SetPosition(-180, 400);
|
||||||
|
backBtn.SetLabel(&backBtnTxt);
|
||||||
|
backBtn.SetImage(&backBtnImg);
|
||||||
|
backBtn.SetSoundOver(&btnSoundOver);
|
||||||
|
backBtn.SetSoundClick(&btnClick);
|
||||||
|
backBtn.SetTrigger(&trigA);
|
||||||
|
backBtn.SetTrigger(&trigB);
|
||||||
|
backBtn.SetEffectGrow();
|
||||||
|
|
||||||
|
GuiText defaultBtnTxt(LANGUAGE.Default , 22, (GXColor){THEME.prompttxt_r, THEME.prompttxt_g, THEME.prompttxt_b, 255});
|
||||||
|
defaultBtnTxt.SetMaxWidth(btnOutline.GetWidth()-30);
|
||||||
|
GuiImage defaultBtnImg(&btnOutline);
|
||||||
|
if (Settings.wsprompt == yes){
|
||||||
|
defaultBtnTxt.SetWidescreen(CFG.widescreen);
|
||||||
|
defaultBtnImg.SetWidescreen(CFG.widescreen);
|
||||||
|
}
|
||||||
|
GuiButton defaultBtn(btnOutline.GetWidth(), btnOutline.GetHeight());
|
||||||
|
defaultBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
||||||
|
defaultBtn.SetPosition(180, 400);
|
||||||
|
defaultBtn.SetLabel(&defaultBtnTxt);
|
||||||
|
defaultBtn.SetImage(&defaultBtnImg);
|
||||||
|
defaultBtn.SetSoundOver(&btnSoundOver);
|
||||||
|
defaultBtn.SetSoundClick(&btnClick);
|
||||||
|
defaultBtn.SetTrigger(&trigA);
|
||||||
|
defaultBtn.SetEffectGrow();
|
||||||
|
|
||||||
|
customOptionList options2(countoggs);
|
||||||
|
|
||||||
|
for (cnt = 0; cnt < countoggs; cnt++) {
|
||||||
|
options2.SetValue(cnt, "%s", GetFileName(cnt));
|
||||||
|
options2.SetName(cnt,"%i.", cnt+1);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(cnt < 9) {
|
||||||
|
scrollon = 0;
|
||||||
|
} else {
|
||||||
|
scrollon = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
GuiCustomOptionBrowser optionBrowser4(396, 280, &options2, CFG.theme_path, "bg_options_settings.png", bg_options_settings_png, scrollon, 10);
|
||||||
|
optionBrowser4.SetPosition(0, 90);
|
||||||
|
optionBrowser4.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
||||||
|
|
||||||
|
snprintf(imgPath, sizeof(imgPath), "%smp3_stop.png", CFG.theme_path);
|
||||||
|
GuiImageData stop(imgPath, mp3_stop_png);
|
||||||
|
snprintf(imgPath, sizeof(imgPath), "%sstartgame_arrow_right.png", CFG.theme_path);
|
||||||
|
GuiImageData play(imgPath, startgame_arrow_right_png);
|
||||||
|
|
||||||
|
GuiImage playBtnImg(&play);
|
||||||
|
playBtnImg.SetWidescreen(CFG.widescreen);
|
||||||
|
GuiButton playBtn(play.GetWidth(), play.GetHeight());
|
||||||
|
playBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
||||||
|
playBtn.SetPosition(50, 400);
|
||||||
|
playBtn.SetImage(&playBtnImg);
|
||||||
|
playBtn.SetSoundOver(&btnSoundOver);
|
||||||
|
playBtn.SetSoundClick(&btnClick);
|
||||||
|
playBtn.SetTrigger(&trigA);
|
||||||
|
playBtn.SetTrigger(&trigPlus);
|
||||||
|
playBtn.SetEffectGrow();
|
||||||
|
|
||||||
|
GuiImage stopBtnImg(&stop);
|
||||||
|
stopBtnImg.SetWidescreen(CFG.widescreen);
|
||||||
|
GuiButton stopBtn(stop.GetWidth(), stop.GetHeight());
|
||||||
|
stopBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
||||||
|
stopBtn.SetPosition(-15, 400);
|
||||||
|
stopBtn.SetImage(&stopBtnImg);
|
||||||
|
stopBtn.SetSoundOver(&btnSoundOver);
|
||||||
|
stopBtn.SetSoundClick(&btnClick);
|
||||||
|
stopBtn.SetTrigger(&trigA);
|
||||||
|
stopBtn.SetTrigger(&trigMinus);
|
||||||
|
stopBtn.SetEffectGrow();
|
||||||
|
|
||||||
|
HaltGui();
|
||||||
|
GuiWindow w(screenwidth, screenheight);
|
||||||
|
w.Append(&oggmenubackground);
|
||||||
|
w.Append(&pathBtn);
|
||||||
|
w.Append(&backBtn);
|
||||||
|
w.Append(&playBtn);
|
||||||
|
w.Append(&stopBtn);
|
||||||
|
w.Append(&defaultBtn);
|
||||||
|
w.Append(&optionBrowser4);
|
||||||
|
mainWindow->Append(&w);
|
||||||
|
|
||||||
|
w.SetEffect(EFFECT_FADE, 20);
|
||||||
|
ResumeGui();
|
||||||
|
|
||||||
|
while(w.GetEffect()>0) usleep(50);
|
||||||
|
|
||||||
|
while(!returnhere)
|
||||||
|
{
|
||||||
|
|
||||||
|
if (backBtn.GetState() == STATE_CLICKED) {
|
||||||
|
if(nothingchanged == 1 && countoggs > 0) {
|
||||||
|
if(!strcmp("", Settings.oggload_path) || !strcmp("notset", Settings.ogg_path)) {
|
||||||
|
bgMusic->Play();
|
||||||
|
} else {
|
||||||
|
bgMusic->PlayOggFile(Settings.ogg_path);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (defaultBtn.GetState() == STATE_CLICKED) {
|
||||||
|
choice = WindowPrompt(LANGUAGE.Loadingstandardmusic,0,LANGUAGE.ok, LANGUAGE.Cancel,0,0);
|
||||||
|
if (choice == 1) {
|
||||||
|
sprintf(Settings.ogg_path, "notset");
|
||||||
|
bgMusic->Play();
|
||||||
|
SetVolumeOgg(255*(Settings.volume/100.0));
|
||||||
|
cfg_save_global();
|
||||||
|
}
|
||||||
|
defaultBtn.ResetState();
|
||||||
|
optionBrowser4.SetFocus(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pathBtn.GetState() == STATE_CLICKED) {
|
||||||
|
w.Remove(&optionBrowser4);
|
||||||
|
w.Remove(&backBtn);
|
||||||
|
w.Remove(&pathBtn);
|
||||||
|
w.Remove(&playBtn);
|
||||||
|
w.Remove(&stopBtn);
|
||||||
|
w.Remove(&defaultBtn);
|
||||||
|
char entered[43] = "";
|
||||||
|
strncpy(entered, Settings.oggload_path, sizeof(entered));
|
||||||
|
int result = OnScreenKeyboard(entered,43,0);
|
||||||
|
w.Append(&optionBrowser4);
|
||||||
|
w.Append(&pathBtn);
|
||||||
|
w.Append(&backBtn);
|
||||||
|
w.Append(&playBtn);
|
||||||
|
w.Append(&stopBtn);
|
||||||
|
w.Append(&defaultBtn);
|
||||||
|
if ( result == 1 ) {
|
||||||
|
int len = (strlen(entered)-1);
|
||||||
|
if(entered[len] !='/')
|
||||||
|
strncat (entered, "/", 1);
|
||||||
|
strncpy(Settings.oggload_path, entered, sizeof(Settings.oggload_path));
|
||||||
|
WindowPrompt(LANGUAGE.Backgroundmusicpath,0,LANGUAGE.ok,0,0,0);
|
||||||
|
if(isSdInserted()) {
|
||||||
|
if(!strcmp("", Settings.oggload_path)) {
|
||||||
|
sprintf(Settings.ogg_path, "notset");
|
||||||
|
bgMusic->Play();
|
||||||
|
}
|
||||||
|
cfg_save_global();
|
||||||
|
returnhere = true;
|
||||||
|
break;
|
||||||
|
} else {
|
||||||
|
WindowPrompt(LANGUAGE.NoSDcardinserted, LANGUAGE.InsertaSDCardtosave, LANGUAGE.ok, 0,0,0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(countoggs > 0) {
|
||||||
|
optionBrowser4.SetFocus(1);
|
||||||
|
}
|
||||||
|
pathBtn.ResetState();
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = optionBrowser4.GetClickedOption();
|
||||||
|
|
||||||
|
if(ret>=0) {
|
||||||
|
choice = WindowPrompt(LANGUAGE.Setasbackgroundmusic,GetFileName(ret),LANGUAGE.Yes,LANGUAGE.No,0,0);
|
||||||
|
if(choice == 1) {
|
||||||
|
snprintf(fullpath,150,"%s%s",Settings.oggload_path,GetFileName(ret));
|
||||||
|
choice = bgMusic->PlayOggFile(fullpath);
|
||||||
|
if(choice < 0) {
|
||||||
|
WindowPrompt(LANGUAGE.Notasupportedformat, LANGUAGE.Loadingstandardmusic, LANGUAGE.ok, 0,0,0);
|
||||||
|
sprintf(Settings.ogg_path, "notset");
|
||||||
|
bgMusic->Play();
|
||||||
|
SetVolumeOgg(255*(Settings.volume/100.0));
|
||||||
|
} else {
|
||||||
|
snprintf(Settings.ogg_path, sizeof(Settings.ogg_path), "%s", fullpath);
|
||||||
|
cfg_save_global();
|
||||||
|
SetVolumeOgg(255*(Settings.volume/100.0));
|
||||||
|
nothingchanged = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
optionBrowser4.SetFocus(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (playBtn.GetState() == STATE_CLICKED && countoggs > 0) {
|
||||||
|
if(countoggs > 0) {
|
||||||
|
ret = optionBrowser4.GetSelectedOption();
|
||||||
|
snprintf(fullpath, 150,"%s%s", Settings.oggload_path,GetFileName(ret));
|
||||||
|
choice = bgMusic->PlayOggFile(fullpath);
|
||||||
|
if(choice < 0) {
|
||||||
|
WindowPrompt(LANGUAGE.Notasupportedformat, LANGUAGE.Loadingstandardmusic, LANGUAGE.ok, 0,0,0);
|
||||||
|
if(!strcmp("", Settings.oggload_path) || !strcmp("notset", Settings.ogg_path)) {
|
||||||
|
bgMusic->Play();
|
||||||
|
} else {
|
||||||
|
bgMusic->PlayOggFile(Settings.ogg_path);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
SetVolumeOgg(255*(Settings.volume/100.0));
|
||||||
|
nothingchanged = 1;
|
||||||
|
optionBrowser4.SetFocus(1);
|
||||||
|
}
|
||||||
|
playBtn.ResetState();
|
||||||
|
}
|
||||||
|
|
||||||
|
if(stopBtn.GetState() == STATE_CLICKED) {
|
||||||
|
if(countoggs > 0) {
|
||||||
|
StopOgg();
|
||||||
|
nothingchanged = 1;
|
||||||
|
optionBrowser4.SetFocus(1);
|
||||||
|
}
|
||||||
|
stopBtn.ResetState();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
w.SetEffect(EFFECT_FADE, -20);
|
||||||
|
while(w.GetEffect()>0) usleep(50);
|
||||||
|
|
||||||
|
HaltGui();
|
||||||
|
mainWindow->Remove(&w);
|
||||||
|
ResumeGui();
|
||||||
|
|
||||||
|
return returnhere;
|
||||||
|
}
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* MenuLanguageSelect
|
||||||
|
***************************************************************************/
|
||||||
|
int MenuLanguageSelect()
|
||||||
|
{
|
||||||
|
int cnt = 0;
|
||||||
|
int ret = 0, choice = 0;
|
||||||
|
int scrollon;
|
||||||
|
int returnhere = 0;
|
||||||
|
|
||||||
|
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
|
char imgPath[100];
|
||||||
|
|
||||||
|
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
||||||
|
GuiImageData btnOutline(imgPath, button_dialogue_box_png);
|
||||||
|
snprintf(imgPath, sizeof(imgPath), "%ssettings_background.png", CFG.theme_path);
|
||||||
|
GuiImageData settingsbg(imgPath, settings_background_png);
|
||||||
|
|
||||||
|
GuiTrigger trigA;
|
||||||
|
trigA.SetSimpleTrigger(-1, WPAD_BUTTON_A | WPAD_CLASSIC_BUTTON_A, PAD_BUTTON_A);
|
||||||
|
GuiTrigger trigB;
|
||||||
|
trigB.SetButtonOnlyTrigger(-1, WPAD_BUTTON_B | WPAD_CLASSIC_BUTTON_B, PAD_BUTTON_B);
|
||||||
|
|
||||||
|
char fullpath[100];
|
||||||
|
int countfiles = GetAllDirFiles(Settings.languagefiles_path);
|
||||||
|
|
||||||
|
if(!strcmp("", Settings.languagefiles_path)) {
|
||||||
|
sprintf(fullpath, "%s", LANGUAGE.Standard);
|
||||||
|
} else {
|
||||||
|
sprintf(fullpath, "%s", Settings.languagefiles_path);
|
||||||
|
}
|
||||||
|
|
||||||
|
GuiText titleTxt(fullpath, 24, (GXColor){0, 0, 0, 255});
|
||||||
|
titleTxt.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
||||||
|
titleTxt.SetPosition(0,0);
|
||||||
|
GuiButton pathBtn(300, 50);
|
||||||
|
pathBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
||||||
|
pathBtn.SetPosition(0,28);
|
||||||
|
pathBtn.SetLabel(&titleTxt);
|
||||||
|
pathBtn.SetSoundOver(&btnSoundOver);
|
||||||
|
pathBtn.SetSoundClick(&btnClick);
|
||||||
|
pathBtn.SetTrigger(&trigA);
|
||||||
|
pathBtn.SetEffectGrow();
|
||||||
|
|
||||||
|
GuiImage oggmenubackground(&settingsbg);
|
||||||
|
oggmenubackground.SetAlignment(ALIGN_LEFT, ALIGN_TOP);
|
||||||
|
oggmenubackground.SetPosition(0, 0);
|
||||||
|
|
||||||
|
GuiText backBtnTxt(LANGUAGE.Back , 22, (GXColor){THEME.prompttxt_r, THEME.prompttxt_g, THEME.prompttxt_b, 255});
|
||||||
|
backBtnTxt.SetMaxWidth(btnOutline.GetWidth()-30);
|
||||||
|
GuiImage backBtnImg(&btnOutline);
|
||||||
|
if (Settings.wsprompt == yes){
|
||||||
|
backBtnTxt.SetWidescreen(CFG.widescreen);
|
||||||
|
backBtnImg.SetWidescreen(CFG.widescreen);
|
||||||
|
}
|
||||||
|
GuiButton backBtn(btnOutline.GetWidth(), btnOutline.GetHeight());
|
||||||
|
backBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
||||||
|
backBtn.SetPosition(-180, 400);
|
||||||
|
backBtn.SetLabel(&backBtnTxt);
|
||||||
|
backBtn.SetImage(&backBtnImg);
|
||||||
|
backBtn.SetSoundOver(&btnSoundOver);
|
||||||
|
backBtn.SetSoundClick(&btnClick);
|
||||||
|
backBtn.SetTrigger(&trigA);
|
||||||
|
backBtn.SetTrigger(&trigB);
|
||||||
|
backBtn.SetEffectGrow();
|
||||||
|
|
||||||
|
GuiText defaultBtnTxt(LANGUAGE.Default , 22, (GXColor){THEME.prompttxt_r, THEME.prompttxt_g, THEME.prompttxt_b, 255});
|
||||||
|
defaultBtnTxt.SetMaxWidth(btnOutline.GetWidth()-30);
|
||||||
|
GuiImage defaultBtnImg(&btnOutline);
|
||||||
|
if (Settings.wsprompt == yes) {
|
||||||
|
defaultBtnTxt.SetWidescreen(CFG.widescreen);
|
||||||
|
defaultBtnImg.SetWidescreen(CFG.widescreen);
|
||||||
|
}
|
||||||
|
GuiButton defaultBtn(btnOutline.GetWidth(), btnOutline.GetHeight());
|
||||||
|
defaultBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
||||||
|
defaultBtn.SetPosition(180, 400);
|
||||||
|
defaultBtn.SetLabel(&defaultBtnTxt);
|
||||||
|
defaultBtn.SetImage(&defaultBtnImg);
|
||||||
|
defaultBtn.SetSoundOver(&btnSoundOver);
|
||||||
|
defaultBtn.SetSoundClick(&btnClick);
|
||||||
|
defaultBtn.SetTrigger(&trigA);
|
||||||
|
defaultBtn.SetEffectGrow();
|
||||||
|
|
||||||
|
customOptionList options2(countfiles);
|
||||||
|
|
||||||
|
for (cnt = 0; cnt < countfiles; cnt++) {
|
||||||
|
options2.SetName(cnt, "%s", GetFileName(cnt));
|
||||||
|
options2.SetValue(cnt, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(cnt < 9) {
|
||||||
|
scrollon = 0;
|
||||||
|
} else {
|
||||||
|
scrollon = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
GuiCustomOptionBrowser optionBrowser4(396, 280, &options2, CFG.theme_path, "bg_options_settings.png", bg_options_settings_png, scrollon, 10);
|
||||||
|
optionBrowser4.SetPosition(0, 90);
|
||||||
|
optionBrowser4.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
||||||
|
|
||||||
|
HaltGui();
|
||||||
|
GuiWindow w(screenwidth, screenheight);
|
||||||
|
w.Append(&oggmenubackground);
|
||||||
|
w.Append(&pathBtn);
|
||||||
|
w.Append(&backBtn);
|
||||||
|
w.Append(&defaultBtn);
|
||||||
|
w.Append(&optionBrowser4);
|
||||||
|
mainWindow->Append(&w);
|
||||||
|
|
||||||
|
w.SetEffect(EFFECT_FADE, 20);
|
||||||
|
ResumeGui();
|
||||||
|
|
||||||
|
while(w.GetEffect()>0) usleep(50);
|
||||||
|
|
||||||
|
while(!returnhere)
|
||||||
|
{
|
||||||
|
|
||||||
|
if (backBtn.GetState() == STATE_CLICKED) {
|
||||||
|
|
||||||
|
backBtn.ResetState();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (defaultBtn.GetState() == STATE_CLICKED) {
|
||||||
|
choice = WindowPrompt(LANGUAGE.Loadingstandardlanguage,0,LANGUAGE.ok, LANGUAGE.Cancel,0,0);
|
||||||
|
if (choice == 1) {
|
||||||
|
sprintf(Settings.language_path, "notset");
|
||||||
|
cfg_save_global();
|
||||||
|
lang_default();
|
||||||
|
CFG_Load();
|
||||||
|
returnhere = 2;
|
||||||
|
}
|
||||||
|
defaultBtn.ResetState();
|
||||||
|
optionBrowser4.SetFocus(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pathBtn.GetState() == STATE_CLICKED) {
|
||||||
|
w.Remove(&optionBrowser4);
|
||||||
|
w.Remove(&backBtn);
|
||||||
|
w.Remove(&pathBtn);
|
||||||
|
w.Remove(&defaultBtn);
|
||||||
|
char entered[43] = "";
|
||||||
|
strncpy(entered, Settings.languagefiles_path, sizeof(entered));
|
||||||
|
int result = OnScreenKeyboard(entered,43,0);
|
||||||
|
w.Append(&optionBrowser4);
|
||||||
|
w.Append(&pathBtn);
|
||||||
|
w.Append(&backBtn);
|
||||||
|
w.Append(&defaultBtn);
|
||||||
|
if ( result == 1 ) {
|
||||||
|
int len = (strlen(entered)-1);
|
||||||
|
if(entered[len] !='/')
|
||||||
|
strncat (entered, "/", 1);
|
||||||
|
strncpy(Settings.languagefiles_path, entered, sizeof(Settings.languagefiles_path));
|
||||||
|
WindowPrompt(LANGUAGE.Languagepathchanged,0,LANGUAGE.ok,0,0,0);
|
||||||
|
if(isSdInserted()) {
|
||||||
|
cfg_save_global();
|
||||||
|
returnhere = 1;
|
||||||
|
break;
|
||||||
|
} else {
|
||||||
|
WindowPrompt(LANGUAGE.NoSDcardinserted, LANGUAGE.InsertaSDCardtosave, LANGUAGE.ok, 0,0,0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(countfiles > 0) {
|
||||||
|
optionBrowser4.SetFocus(1);
|
||||||
|
}
|
||||||
|
pathBtn.ResetState();
|
||||||
|
}
|
||||||
|
|
||||||
|
ret = optionBrowser4.GetClickedOption();
|
||||||
|
|
||||||
|
if(ret>=0) {
|
||||||
|
choice = WindowPrompt(LANGUAGE.Doyouwanttochangelanguage, 0, LANGUAGE.Yes, LANGUAGE.Cancel,0,0);
|
||||||
|
if(choice == 1) {
|
||||||
|
if(isSdInserted()) {
|
||||||
|
snprintf(Settings.language_path, sizeof(Settings.language_path), "%s%s", Settings.languagefiles_path, GetFileName(ret));
|
||||||
|
cfg_save_global();
|
||||||
|
if(!checkfile(Settings.language_path)) {
|
||||||
|
sprintf(Settings.language_path, "notset");
|
||||||
|
WindowPrompt(LANGUAGE.Filenotfound,LANGUAGE.Loadingstandardlanguage,LANGUAGE.ok,0,0,0);
|
||||||
|
}
|
||||||
|
lang_default();
|
||||||
|
CFG_Load();
|
||||||
|
returnhere = 2;
|
||||||
|
break;
|
||||||
|
} else {
|
||||||
|
WindowPrompt(LANGUAGE.NoSDcardinserted, LANGUAGE.InsertaSDCardtosave, LANGUAGE.ok, 0,0,0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
optionBrowser4.SetFocus(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
w.SetEffect(EFFECT_FADE, -20);
|
||||||
|
while(w.GetEffect()>0) usleep(50);
|
||||||
|
|
||||||
|
HaltGui();
|
||||||
|
mainWindow->Remove(&w);
|
||||||
|
ResumeGui();
|
||||||
|
|
||||||
|
return returnhere;
|
||||||
|
}
|
||||||
|
|
14
source/SettingsPrompts.h
Normal file
14
source/SettingsPrompts.h
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
/****************************************************************************
|
||||||
|
* SettingsPrompts
|
||||||
|
* USB Loader GX 2009
|
||||||
|
*
|
||||||
|
* SettingsPrompts.h
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
#ifndef _SETTINGSPROMPTS_H_
|
||||||
|
#define _SETTINGSPROMPTS_H_
|
||||||
|
|
||||||
|
bool MenuOGG();
|
||||||
|
int MenuLanguageSelect();
|
||||||
|
|
||||||
|
#endif
|
@ -218,7 +218,7 @@ bool Search_and_patch_Video_Modes(void *Address, u32 Size, GXRModeObj* Table[])
|
|||||||
return found;
|
return found;
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 Apploader_Run(entry_point *entry, u8 cheat, u8 videoSelected, u8 vipatch, u8 patchcountrystring)
|
s32 Apploader_Run(entry_point *entry, u8 cheat, u8 videoSelected, u8 vipatch, u8 patchcountrystring, u8 error002fix)
|
||||||
{
|
{
|
||||||
app_entry appldr_entry;
|
app_entry appldr_entry;
|
||||||
app_init appldr_init;
|
app_init appldr_init;
|
||||||
@ -250,8 +250,10 @@ s32 Apploader_Run(entry_point *entry, u8 cheat, u8 videoSelected, u8 vipatch, u8
|
|||||||
/* Initialize apploader */
|
/* Initialize apploader */
|
||||||
appldr_init(__noprint);
|
appldr_init(__noprint);
|
||||||
|
|
||||||
|
if(error002fix) {
|
||||||
/* ERROR 002 fix (thanks to WiiPower for sharing this)*/
|
/* ERROR 002 fix (thanks to WiiPower for sharing this)*/
|
||||||
*(u32 *)0x80003140 = *(u32 *)0x80003188;
|
*(u32 *)0x80003140 = *(u32 *)0x80003188;
|
||||||
|
}
|
||||||
|
|
||||||
if (cheat)
|
if (cheat)
|
||||||
{
|
{
|
||||||
|
@ -5,6 +5,6 @@
|
|||||||
typedef void (*entry_point)(void);
|
typedef void (*entry_point)(void);
|
||||||
|
|
||||||
/* Prototypes */
|
/* Prototypes */
|
||||||
s32 Apploader_Run(entry_point *, u8, u8, u8, u8);
|
s32 Apploader_Run(entry_point *, u8, u8, u8, u8, u8);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
30
source/cfg.c
30
source/cfg.c
@ -29,6 +29,7 @@ u8 languageChoice = 0;
|
|||||||
u8 viChoice = 0;
|
u8 viChoice = 0;
|
||||||
u8 iosChoice = 0;
|
u8 iosChoice = 0;
|
||||||
u8 parentalcontrolChoice = 0;
|
u8 parentalcontrolChoice = 0;
|
||||||
|
u8 fix002 = 0;
|
||||||
u8 xflip = 0;
|
u8 xflip = 0;
|
||||||
u8 sort = 0;
|
u8 sort = 0;
|
||||||
u8 fave = 0;
|
u8 fave = 0;
|
||||||
@ -232,6 +233,7 @@ void CFG_Default(int widescreen) // -1 = non forced Mode
|
|||||||
snprintf(Settings.titlestxt_path, sizeof(Settings.titlestxt_path), "SD:/config/");//default path for disc images
|
snprintf(Settings.titlestxt_path, sizeof(Settings.titlestxt_path), "SD:/config/");//default path for disc images
|
||||||
snprintf(Settings.unlockCode, sizeof(Settings.unlockCode), "ab121b"); // default password
|
snprintf(Settings.unlockCode, sizeof(Settings.unlockCode), "ab121b"); // default password
|
||||||
snprintf(Settings.language_path, sizeof(Settings.language_path), "SD:/config/language/");
|
snprintf(Settings.language_path, sizeof(Settings.language_path), "SD:/config/language/");
|
||||||
|
snprintf(Settings.languagefiles_path, sizeof(Settings.languagefiles_path), "SD:/config/language/");
|
||||||
snprintf(Settings.oggload_path, sizeof(Settings.oggload_path), "SD:/config/backgroundmusic/");
|
snprintf(Settings.oggload_path, sizeof(Settings.oggload_path), "SD:/config/backgroundmusic/");
|
||||||
snprintf(Settings.update_path, sizeof(Settings.update_path), "SD:/apps/usbloader_gx/");
|
snprintf(Settings.update_path, sizeof(Settings.update_path), "SD:/apps/usbloader_gx/");
|
||||||
sprintf(Settings.ogg_path, "notset");
|
sprintf(Settings.ogg_path, "notset");
|
||||||
@ -335,7 +337,8 @@ void Global_Default(void)
|
|||||||
{
|
{
|
||||||
Settings.sinfo = ((Settings.sinfo == GameID) ? Both : GameRegion);
|
Settings.sinfo = ((Settings.sinfo == GameID) ? Both : GameRegion);
|
||||||
}
|
}
|
||||||
Settings.volume = v80;
|
Settings.volume = 80;
|
||||||
|
Settings.sfxvolume = 80;
|
||||||
Settings.tooltips = TooltipsOn;
|
Settings.tooltips = TooltipsOn;
|
||||||
snprintf(Settings.unlockCode, sizeof(Settings.unlockCode), "ab121b");
|
snprintf(Settings.unlockCode, sizeof(Settings.unlockCode), "ab121b");
|
||||||
Settings.parentalcontrol = 0;
|
Settings.parentalcontrol = 0;
|
||||||
@ -480,6 +483,10 @@ void path_set(char *name, char *val)
|
|||||||
strcopy(Settings.language_path, val, sizeof(Settings.language_path));
|
strcopy(Settings.language_path, val, sizeof(Settings.language_path));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (strcmp(name, "languagefiles_path") == 0) {
|
||||||
|
strcopy(Settings.languagefiles_path, val, sizeof(Settings.languagefiles_path));
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (strcmp(name, "update_path") == 0) {
|
if (strcmp(name, "update_path") == 0) {
|
||||||
strcopy(Settings.update_path, val, sizeof(Settings.update_path));
|
strcopy(Settings.update_path, val, sizeof(Settings.update_path));
|
||||||
return;
|
return;
|
||||||
@ -888,6 +895,13 @@ void global_cfg_set(char *name, char *val)
|
|||||||
}
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
else if (strcmp(name, "sfxvolume") == 0) {
|
||||||
|
int i;
|
||||||
|
if (sscanf(val, "%d", &i) == 1) {
|
||||||
|
Settings.sfxvolume = i;
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
else if (strcmp(name, "tooltips") == 0) {
|
else if (strcmp(name, "tooltips") == 0) {
|
||||||
int i;
|
int i;
|
||||||
if (sscanf(val, "%d", &i) == 1) {
|
if (sscanf(val, "%d", &i) == 1) {
|
||||||
@ -1104,6 +1118,7 @@ void cfg_set_game_opt(struct Game_CFG *game, u8 *id)
|
|||||||
game->vipatch = viChoice;
|
game->vipatch = viChoice;
|
||||||
game->ios = iosChoice;
|
game->ios = iosChoice;
|
||||||
game->parentalcontrol = parentalcontrolChoice;
|
game->parentalcontrol = parentalcontrolChoice;
|
||||||
|
game->errorfix002 = fix002;
|
||||||
}
|
}
|
||||||
|
|
||||||
struct Game_NUM* cfg_get_game_num(u8 *id)
|
struct Game_NUM* cfg_get_game_num(u8 *id)
|
||||||
@ -1154,6 +1169,7 @@ bool cfg_save_global()// save global settings
|
|||||||
fprintf(f, "sinfo = %d\n ", Settings.sinfo);
|
fprintf(f, "sinfo = %d\n ", Settings.sinfo);
|
||||||
fprintf(f, "rumble = %d\n ", Settings.rumble);
|
fprintf(f, "rumble = %d\n ", Settings.rumble);
|
||||||
fprintf(f, "volume = %d\n ", Settings.volume);
|
fprintf(f, "volume = %d\n ", Settings.volume);
|
||||||
|
fprintf(f, "sfxvolume = %d\n ", Settings.sfxvolume);
|
||||||
fprintf(f, "tooltips = %d\n ", Settings.tooltips);
|
fprintf(f, "tooltips = %d\n ", Settings.tooltips);
|
||||||
fprintf(f, "password = %s\n ", Settings.unlockCode);
|
fprintf(f, "password = %s\n ", Settings.unlockCode);
|
||||||
fprintf(f, "sort = %d\n ", Settings.sort);
|
fprintf(f, "sort = %d\n ", Settings.sort);
|
||||||
@ -1173,6 +1189,7 @@ bool cfg_save_global()// save global settings
|
|||||||
}
|
}
|
||||||
fprintf(f, "disc_path = %s\n ", Settings.disc_path);
|
fprintf(f, "disc_path = %s\n ", Settings.disc_path);
|
||||||
fprintf(f, "language_path = %s\n ", Settings.language_path);
|
fprintf(f, "language_path = %s\n ", Settings.language_path);
|
||||||
|
fprintf(f, "languagefiles_path = %s\n ", Settings.languagefiles_path);
|
||||||
fprintf(f, "oggload_path = %s\n ", Settings.oggload_path);
|
fprintf(f, "oggload_path = %s\n ", Settings.oggload_path);
|
||||||
fprintf(f, "titlestxt_path = %s\n ", Settings.titlestxt_path);
|
fprintf(f, "titlestxt_path = %s\n ", Settings.titlestxt_path);
|
||||||
if(!strcmp("", Settings.unlockCode)) {
|
if(!strcmp("", Settings.unlockCode)) {
|
||||||
@ -1247,6 +1264,11 @@ void game_set(char *name, char *val)
|
|||||||
game->parentalcontrol = opt_c;
|
game->parentalcontrol = opt_c;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (strcmp("errorfix002", opt_name) == 0) {
|
||||||
|
if (sscanf(opt_val, "%hd", &opt_c) == 1) {
|
||||||
|
game->errorfix002 = opt_c;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
// next opt
|
// next opt
|
||||||
@ -1383,7 +1405,8 @@ bool cfg_save_games()
|
|||||||
fprintf(f, "ocarina:%d; ", cfg_game[i].ocarina);
|
fprintf(f, "ocarina:%d; ", cfg_game[i].ocarina);
|
||||||
fprintf(f, "vipatch:%d; ", cfg_game[i].vipatch);
|
fprintf(f, "vipatch:%d; ", cfg_game[i].vipatch);
|
||||||
fprintf(f, "ios:%d;", cfg_game[i].ios);
|
fprintf(f, "ios:%d;", cfg_game[i].ios);
|
||||||
fprintf(f, "pctrl:%d;\n", cfg_game[i].parentalcontrol);
|
fprintf(f, "pctrl:%d;", cfg_game[i].parentalcontrol);
|
||||||
|
fprintf(f, "errorfix002:%d;\n", cfg_game[i].errorfix002);
|
||||||
}
|
}
|
||||||
fprintf(f, "# END\n");
|
fprintf(f, "# END\n");
|
||||||
fclose(f);
|
fclose(f);
|
||||||
@ -1438,7 +1461,8 @@ bool cfg_load_global()
|
|||||||
{
|
{
|
||||||
Settings.sinfo = ((Settings.sinfo == GameID) ? Both : GameRegion);
|
Settings.sinfo = ((Settings.sinfo == GameID) ? Both : GameRegion);
|
||||||
}
|
}
|
||||||
Settings.volume = v80;
|
Settings.volume = 80;
|
||||||
|
Settings.sfxvolume = 80;
|
||||||
|
|
||||||
return cfg_parsefile("SD:/config/GXGlobal.cfg", &global_cfg_set);
|
return cfg_parsefile("SD:/config/GXGlobal.cfg", &global_cfg_set);
|
||||||
}
|
}
|
||||||
|
22
source/cfg.h
22
source/cfg.h
@ -152,6 +152,7 @@ extern u8 viChoice;
|
|||||||
extern u8 iosChoice;
|
extern u8 iosChoice;
|
||||||
extern u8 faveChoice;
|
extern u8 faveChoice;
|
||||||
extern u8 parentalcontrolChoice;
|
extern u8 parentalcontrolChoice;
|
||||||
|
extern u8 fix002;
|
||||||
extern u8 xflip;
|
extern u8 xflip;
|
||||||
extern u8 qboot;
|
extern u8 qboot;
|
||||||
extern u8 sort;
|
extern u8 sort;
|
||||||
@ -169,6 +170,7 @@ struct Game_CFG
|
|||||||
u8 vipatch;
|
u8 vipatch;
|
||||||
u8 ios;
|
u8 ios;
|
||||||
u8 parentalcontrol;
|
u8 parentalcontrol;
|
||||||
|
u8 errorfix002;
|
||||||
};
|
};
|
||||||
struct Game_NUM
|
struct Game_NUM
|
||||||
{
|
{
|
||||||
@ -201,7 +203,6 @@ enum {
|
|||||||
schin,
|
schin,
|
||||||
tchin,
|
tchin,
|
||||||
kor,
|
kor,
|
||||||
|
|
||||||
settings_language_max // always the last entry
|
settings_language_max // always the last entry
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -263,21 +264,6 @@ enum {
|
|||||||
settings_tooltips_max // always the last entry
|
settings_tooltips_max // always the last entry
|
||||||
};
|
};
|
||||||
|
|
||||||
enum {
|
|
||||||
v10=0,
|
|
||||||
v20,
|
|
||||||
v30,
|
|
||||||
v40,
|
|
||||||
v50,
|
|
||||||
v60,
|
|
||||||
v70,
|
|
||||||
v80,
|
|
||||||
v90,
|
|
||||||
v100,
|
|
||||||
v0,
|
|
||||||
settings_volume_max // always the last entry
|
|
||||||
};
|
|
||||||
|
|
||||||
enum {
|
enum {
|
||||||
no=0,
|
no=0,
|
||||||
yes,
|
yes,
|
||||||
@ -297,11 +283,11 @@ enum {
|
|||||||
list,
|
list,
|
||||||
grid,
|
grid,
|
||||||
carousel,
|
carousel,
|
||||||
|
settings_display_max
|
||||||
};
|
};
|
||||||
enum {
|
enum {
|
||||||
scrollDefault,
|
scrollDefault,
|
||||||
scrollMarquee,
|
scrollMarquee,
|
||||||
|
|
||||||
settings_scrolleffect_max // always the last entry
|
settings_scrolleffect_max // always the last entry
|
||||||
};
|
};
|
||||||
struct SSettings {
|
struct SSettings {
|
||||||
@ -315,6 +301,7 @@ struct SSettings {
|
|||||||
int rumble;
|
int rumble;
|
||||||
int xflip;
|
int xflip;
|
||||||
int volume;
|
int volume;
|
||||||
|
int sfxvolume;
|
||||||
int tooltips;
|
int tooltips;
|
||||||
char unlockCode[20];
|
char unlockCode[20];
|
||||||
int parentalcontrol;
|
int parentalcontrol;
|
||||||
@ -335,6 +322,7 @@ struct SSettings {
|
|||||||
char disc_path[100];
|
char disc_path[100];
|
||||||
char titlestxt_path[100];
|
char titlestxt_path[100];
|
||||||
char language_path[100];
|
char language_path[100];
|
||||||
|
char languagefiles_path[100];
|
||||||
char oggload_path[100];
|
char oggload_path[100];
|
||||||
char ogg_path[150];
|
char ogg_path[150];
|
||||||
char update_path[150];
|
char update_path[150];
|
||||||
|
@ -248,7 +248,7 @@ s32 Disc_IsWii(void)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 Disc_BootPartition(u64 offset, u8 videoselected, u8 cheat, u8 vipatch, u8 patchcountrystring)
|
s32 Disc_BootPartition(u64 offset, u8 videoselected, u8 cheat, u8 vipatch, u8 patchcountrystring, u8 error002fix)
|
||||||
{
|
{
|
||||||
entry_point p_entry;
|
entry_point p_entry;
|
||||||
|
|
||||||
@ -260,7 +260,7 @@ s32 Disc_BootPartition(u64 offset, u8 videoselected, u8 cheat, u8 vipatch, u8 pa
|
|||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
/* Run apploader */
|
/* Run apploader */
|
||||||
ret = Apploader_Run(&p_entry, cheat, videoselected, vipatch, patchcountrystring);
|
ret = Apploader_Run(&p_entry, cheat, videoselected, vipatch, patchcountrystring, error002fix);
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
@ -295,7 +295,7 @@ s32 Disc_BootPartition(u64 offset, u8 videoselected, u8 cheat, u8 vipatch, u8 pa
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
s32 Disc_WiiBoot(u8 videoselected, u8 cheat, u8 vipatch, u8 patchcountrystring)
|
s32 Disc_WiiBoot(u8 videoselected, u8 cheat, u8 vipatch, u8 patchcountrystring, u8 error002fix)
|
||||||
{
|
{
|
||||||
u64 offset;
|
u64 offset;
|
||||||
s32 ret;
|
s32 ret;
|
||||||
@ -306,7 +306,7 @@ s32 Disc_WiiBoot(u8 videoselected, u8 cheat, u8 vipatch, u8 patchcountrystring)
|
|||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
/* Boot partition */
|
/* Boot partition */
|
||||||
return Disc_BootPartition(offset, videoselected, cheat, vipatch, patchcountrystring);
|
return Disc_BootPartition(offset, videoselected, cheat, vipatch, patchcountrystring, error002fix);
|
||||||
}
|
}
|
||||||
|
|
||||||
void PatchCountryStrings(void *Address, int Size)
|
void PatchCountryStrings(void *Address, int Size)
|
||||||
|
@ -46,8 +46,8 @@ void __Disc_SetLowMem(void);
|
|||||||
s32 Disc_SetUSB(u8 *, int ios222);
|
s32 Disc_SetUSB(u8 *, int ios222);
|
||||||
s32 Disc_ReadHeader(void *);
|
s32 Disc_ReadHeader(void *);
|
||||||
s32 Disc_IsWii(void);
|
s32 Disc_IsWii(void);
|
||||||
s32 Disc_BootPartition(u64, u8, u8, u8, u8);
|
s32 Disc_BootPartition(u64, u8, u8, u8, u8, u8);
|
||||||
s32 Disc_WiiBoot(u8, u8, u8, u8);
|
s32 Disc_WiiBoot(u8, u8, u8, u8, u8);
|
||||||
void PatchCountryStrings(void *Address, int Size);
|
void PatchCountryStrings(void *Address, int Size);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
@ -38,15 +38,6 @@ extern const u32 menuin_ogg_size;
|
|||||||
extern const u8 menuout_ogg[];
|
extern const u8 menuout_ogg[];
|
||||||
extern const u32 menuout_ogg_size;
|
extern const u32 menuout_ogg_size;
|
||||||
|
|
||||||
extern const u8 tab_bg1_png[];
|
|
||||||
extern const u32 tab_bg1_png_size;
|
|
||||||
|
|
||||||
extern const u8 tab_bg2_png[];
|
|
||||||
extern const u32 tab_bg2_png_size;
|
|
||||||
|
|
||||||
extern const u8 tab_bg3_png[];
|
|
||||||
extern const u32 tab_bg3_png_size;
|
|
||||||
|
|
||||||
extern const u8 credits_button_png[];
|
extern const u8 credits_button_png[];
|
||||||
extern const u32 credits_button_png_size;
|
extern const u32 credits_button_png_size;
|
||||||
|
|
||||||
@ -290,7 +281,13 @@ extern const u32 arrangeList_gray_png_size;
|
|||||||
extern const u8 arrangeCarousel_gray_png[];
|
extern const u8 arrangeCarousel_gray_png[];
|
||||||
extern const u32 arrangeCarousel_gray_png_size;
|
extern const u32 arrangeCarousel_gray_png_size;
|
||||||
|
|
||||||
extern const u8 updateRev_png[];
|
extern const u8 settings_title_png[];
|
||||||
extern const u32 updateRev_png_size;
|
extern const u32 settings_title_png_size;
|
||||||
|
|
||||||
|
extern const u8 settings_title_over_png[];
|
||||||
|
extern const u32 settings_title_over_png_size;
|
||||||
|
|
||||||
|
extern const u8 pageindicator_png[];
|
||||||
|
extern const u32 pageindicator_png_size;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 3.4 KiB |
Binary file not shown.
Before Width: | Height: | Size: 3.8 KiB |
Binary file not shown.
Before Width: | Height: | Size: 3.3 KiB |
Binary file not shown.
Before Width: | Height: | Size: 6.0 KiB |
@ -57,6 +57,7 @@ snprintf(LANGUAGE.Continueinstallgame, sizeof(LANGUAGE.Continueinstallgame), "Co
|
|||||||
snprintf(LANGUAGE.ConsoleDefault, sizeof(LANGUAGE.ConsoleDefault), "Console Default");
|
snprintf(LANGUAGE.ConsoleDefault, sizeof(LANGUAGE.ConsoleDefault), "Console Default");
|
||||||
snprintf(LANGUAGE.Consoleshouldbeunlockedtomodifyit, sizeof(LANGUAGE.Consoleshouldbeunlockedtomodifyit), "Console should be unlocked to modify it.");
|
snprintf(LANGUAGE.Consoleshouldbeunlockedtomodifyit, sizeof(LANGUAGE.Consoleshouldbeunlockedtomodifyit), "Console should be unlocked to modify it.");
|
||||||
snprintf(LANGUAGE.ConsoleLocked, sizeof(LANGUAGE.ConsoleLocked), "Console Locked");
|
snprintf(LANGUAGE.ConsoleLocked, sizeof(LANGUAGE.ConsoleLocked), "Console Locked");
|
||||||
|
snprintf(LANGUAGE.Controllevel, sizeof(LANGUAGE.Controllevel), "Controllevel");
|
||||||
snprintf(LANGUAGE.CorrectPassword, sizeof(LANGUAGE.CorrectPassword), "Correct Password");
|
snprintf(LANGUAGE.CorrectPassword, sizeof(LANGUAGE.CorrectPassword), "Correct Password");
|
||||||
snprintf(LANGUAGE.Couldnotinitializenetwork, sizeof(LANGUAGE.Couldnotinitializenetwork), "Could not initialize network!");
|
snprintf(LANGUAGE.Couldnotinitializenetwork, sizeof(LANGUAGE.Couldnotinitializenetwork), "Could not initialize network!");
|
||||||
snprintf(LANGUAGE.CouldnotopenDisc, sizeof(LANGUAGE.CouldnotopenDisc), "Could not open Disc");
|
snprintf(LANGUAGE.CouldnotopenDisc, sizeof(LANGUAGE.CouldnotopenDisc), "Could not open Disc");
|
||||||
@ -67,6 +68,7 @@ snprintf(LANGUAGE.CoverpathChanged, sizeof(LANGUAGE.CoverpathChanged), "Coverpat
|
|||||||
snprintf(LANGUAGE.Coverpathchange, sizeof(LANGUAGE.Coverpathchange), "Coverpath change");
|
snprintf(LANGUAGE.Coverpathchange, sizeof(LANGUAGE.Coverpathchange), "Coverpath change");
|
||||||
snprintf(LANGUAGE.count, sizeof(LANGUAGE.count), "Play Count");
|
snprintf(LANGUAGE.count, sizeof(LANGUAGE.count), "Play Count");
|
||||||
snprintf(LANGUAGE.Credits, sizeof(LANGUAGE.Credits), "Credits");
|
snprintf(LANGUAGE.Credits, sizeof(LANGUAGE.Credits), "Credits");
|
||||||
|
snprintf(LANGUAGE.Custompaths, sizeof(LANGUAGE.Custompaths), "Custom Paths");
|
||||||
snprintf(LANGUAGE.DiscImages, sizeof(LANGUAGE.DiscImages), "Disc Images");
|
snprintf(LANGUAGE.DiscImages, sizeof(LANGUAGE.DiscImages), "Disc Images");
|
||||||
snprintf(LANGUAGE.DiscimagePath, sizeof(LANGUAGE.DiscimagePath), "Discimage Path");
|
snprintf(LANGUAGE.DiscimagePath, sizeof(LANGUAGE.DiscimagePath), "Discimage Path");
|
||||||
snprintf(LANGUAGE.DiscpathChanged, sizeof(LANGUAGE.DiscpathChanged), "Discpath Changed");
|
snprintf(LANGUAGE.DiscpathChanged, sizeof(LANGUAGE.DiscpathChanged), "Discpath Changed");
|
||||||
@ -77,11 +79,13 @@ snprintf(LANGUAGE.Doyouwanttoformat, sizeof(LANGUAGE.Doyouwanttoformat), "Do you
|
|||||||
snprintf(LANGUAGE.Doyoureallywanttodelete, sizeof(LANGUAGE.Doyoureallywanttodelete), "Do you really want to delete:");
|
snprintf(LANGUAGE.Doyoureallywanttodelete, sizeof(LANGUAGE.Doyoureallywanttodelete), "Do you really want to delete:");
|
||||||
snprintf(LANGUAGE.Doyouwanttoretryfor30secs, sizeof(LANGUAGE.Doyouwanttoretryfor30secs), "Do you want to retry for 30 secs?");
|
snprintf(LANGUAGE.Doyouwanttoretryfor30secs, sizeof(LANGUAGE.Doyouwanttoretryfor30secs), "Do you want to retry for 30 secs?");
|
||||||
snprintf(LANGUAGE.Doyouwanttoupdate, sizeof(LANGUAGE.Doyouwanttoupdate), "How do you want to update?");
|
snprintf(LANGUAGE.Doyouwanttoupdate, sizeof(LANGUAGE.Doyouwanttoupdate), "How do you want to update?");
|
||||||
|
snprintf(LANGUAGE.Doyouwanttochangelanguage, sizeof(LANGUAGE.Doyouwanttochangelanguage), "Do you want to change language?");
|
||||||
snprintf(LANGUAGE.Downloadingfile, sizeof(LANGUAGE.Downloadingfile), "Downloading file");
|
snprintf(LANGUAGE.Downloadingfile, sizeof(LANGUAGE.Downloadingfile), "Downloading file");
|
||||||
snprintf(LANGUAGE.DownloadBoxartimage, sizeof(LANGUAGE.DownloadBoxartimage), "Download Boxart image?");
|
snprintf(LANGUAGE.DownloadBoxartimage, sizeof(LANGUAGE.DownloadBoxartimage), "Download Boxart image?");
|
||||||
snprintf(LANGUAGE.Downloadfinished, sizeof(LANGUAGE.Downloadfinished), "Download finished");
|
snprintf(LANGUAGE.Downloadfinished, sizeof(LANGUAGE.Downloadfinished), "Download finished");
|
||||||
snprintf(LANGUAGE.Defaultgamesettings, sizeof(LANGUAGE.Defaultgamesettings), "Default Gamesettings");
|
snprintf(LANGUAGE.Defaultgamesettings, sizeof(LANGUAGE.Defaultgamesettings), "Default Gamesettings");
|
||||||
snprintf(LANGUAGE.Defaultsettings, sizeof(LANGUAGE.Defaultsettings), "Default Settings");
|
snprintf(LANGUAGE.Defaultsettings, sizeof(LANGUAGE.Defaultsettings), "Default Settings");
|
||||||
|
snprintf(LANGUAGE.Default, sizeof(LANGUAGE.Default), "Default");
|
||||||
snprintf(LANGUAGE.Error, sizeof(LANGUAGE.Error), "Error !");
|
snprintf(LANGUAGE.Error, sizeof(LANGUAGE.Error), "Error !");
|
||||||
snprintf(LANGUAGE.hour, sizeof(LANGUAGE.hour), "Hour");
|
snprintf(LANGUAGE.hour, sizeof(LANGUAGE.hour), "Hour");
|
||||||
snprintf(LANGUAGE.Homemenu, sizeof(LANGUAGE.Homemenu), "HOME Menu");
|
snprintf(LANGUAGE.Homemenu, sizeof(LANGUAGE.Homemenu), "HOME Menu");
|
||||||
@ -122,8 +126,11 @@ snprintf(LANGUAGE.Gameisalreadyinstalled, sizeof(LANGUAGE.Gameisalreadyinstalled
|
|||||||
snprintf(LANGUAGE.GameRegion, sizeof(LANGUAGE.GameRegion), "Game Region");
|
snprintf(LANGUAGE.GameRegion, sizeof(LANGUAGE.GameRegion), "Game Region");
|
||||||
snprintf(LANGUAGE.GameSize, sizeof(LANGUAGE.GameSize), "Game Size");
|
snprintf(LANGUAGE.GameSize, sizeof(LANGUAGE.GameSize), "Game Size");
|
||||||
snprintf(LANGUAGE.GoBack, sizeof(LANGUAGE.GoBack), "Go Back");
|
snprintf(LANGUAGE.GoBack, sizeof(LANGUAGE.GoBack), "Go Back");
|
||||||
|
snprintf(LANGUAGE.GUISettings, sizeof(LANGUAGE.GUISettings), "GUI Settings");
|
||||||
|
snprintf(LANGUAGE.Gameload, sizeof(LANGUAGE.Gameload), "Game Load");
|
||||||
snprintf(LANGUAGE.HowtoShutdown, sizeof(LANGUAGE.HowtoShutdown), "How to Shutdown?");
|
snprintf(LANGUAGE.HowtoShutdown, sizeof(LANGUAGE.HowtoShutdown), "How to Shutdown?");
|
||||||
snprintf(LANGUAGE.Language, sizeof(LANGUAGE.Language), "Game Language");
|
snprintf(LANGUAGE.Language, sizeof(LANGUAGE.Language), "Game Language");
|
||||||
|
snprintf(LANGUAGE.Languagepathchanged, sizeof(LANGUAGE.Languagepathchanged), "Languagepath changed.");
|
||||||
snprintf(LANGUAGE.Left, sizeof(LANGUAGE.Left), "Left");
|
snprintf(LANGUAGE.Left, sizeof(LANGUAGE.Left), "Left");
|
||||||
snprintf(LANGUAGE.LikeSysMenu, sizeof(LANGUAGE.LikeSysMenu), "Like SysMenu");
|
snprintf(LANGUAGE.LikeSysMenu, sizeof(LANGUAGE.LikeSysMenu), "Like SysMenu");
|
||||||
snprintf(LANGUAGE.LoadingincIOS, sizeof(LANGUAGE.LoadingincIOS), "Loading in cIOS249");
|
snprintf(LANGUAGE.LoadingincIOS, sizeof(LANGUAGE.LoadingincIOS), "Loading in cIOS249");
|
||||||
@ -157,7 +164,7 @@ snprintf(LANGUAGE.OFF, sizeof(LANGUAGE.OFF), "OFF");
|
|||||||
snprintf(LANGUAGE.OfficialSite, sizeof(LANGUAGE.OfficialSite), "Official Site");
|
snprintf(LANGUAGE.OfficialSite, sizeof(LANGUAGE.OfficialSite), "Official Site");
|
||||||
snprintf(LANGUAGE.ON, sizeof(LANGUAGE.ON), "ON");
|
snprintf(LANGUAGE.ON, sizeof(LANGUAGE.ON), "ON");
|
||||||
snprintf(LANGUAGE.OnlyInstall, sizeof(LANGUAGE.OnlyInstall), "Only for Install");
|
snprintf(LANGUAGE.OnlyInstall, sizeof(LANGUAGE.OnlyInstall), "Only for Install");
|
||||||
snprintf(LANGUAGE.Parentalcontrol, sizeof(LANGUAGE.Parentalcontrol), "Parental control");
|
snprintf(LANGUAGE.Parentalcontrol, sizeof(LANGUAGE.Parentalcontrol), "Parental Control");
|
||||||
snprintf(LANGUAGE.Partition, sizeof(LANGUAGE.Partition), "Partition");
|
snprintf(LANGUAGE.Partition, sizeof(LANGUAGE.Partition), "Partition");
|
||||||
snprintf(LANGUAGE.Password, sizeof(LANGUAGE.Password), "Password");
|
snprintf(LANGUAGE.Password, sizeof(LANGUAGE.Password), "Password");
|
||||||
snprintf(LANGUAGE.PasswordChanged, sizeof(LANGUAGE.PasswordChanged), "Password Changed");
|
snprintf(LANGUAGE.PasswordChanged, sizeof(LANGUAGE.PasswordChanged), "Password Changed");
|
||||||
@ -188,6 +195,7 @@ snprintf(LANGUAGE.Specialthanksto, sizeof(LANGUAGE.Specialthanksto), "Special th
|
|||||||
snprintf(LANGUAGE.youwanttoformat, sizeof(LANGUAGE.youwanttoformat), "you want to format");
|
snprintf(LANGUAGE.youwanttoformat, sizeof(LANGUAGE.youwanttoformat), "you want to format");
|
||||||
snprintf(LANGUAGE.Standard, sizeof(LANGUAGE.Standard), "Standard");
|
snprintf(LANGUAGE.Standard, sizeof(LANGUAGE.Standard), "Standard");
|
||||||
snprintf(LANGUAGE.settings, sizeof(LANGUAGE.settings), "Settings");
|
snprintf(LANGUAGE.settings, sizeof(LANGUAGE.settings), "Settings");
|
||||||
|
snprintf(LANGUAGE.Sound, sizeof(LANGUAGE.Sound), "Sound");
|
||||||
snprintf(LANGUAGE.ShutdowntoIdle, sizeof(LANGUAGE.ShutdowntoIdle), "Shutdown to Idle");
|
snprintf(LANGUAGE.ShutdowntoIdle, sizeof(LANGUAGE.ShutdowntoIdle), "Shutdown to Idle");
|
||||||
snprintf(LANGUAGE.ShutdownSystem, sizeof(LANGUAGE.ShutdownSystem), "Shutdown System");
|
snprintf(LANGUAGE.ShutdownSystem, sizeof(LANGUAGE.ShutdownSystem), "Shutdown System");
|
||||||
snprintf(LANGUAGE.Success, sizeof(LANGUAGE.Success), "Success:");
|
snprintf(LANGUAGE.Success, sizeof(LANGUAGE.Success), "Success:");
|
||||||
@ -207,6 +215,7 @@ snprintf(LANGUAGE.Tooltips, sizeof(LANGUAGE.Tooltips), "Tooltips");
|
|||||||
snprintf(LANGUAGE.Timeleft, sizeof(LANGUAGE.Timeleft), "Time left:");
|
snprintf(LANGUAGE.Timeleft, sizeof(LANGUAGE.Timeleft), "Time left:");
|
||||||
snprintf(LANGUAGE.updating, sizeof(LANGUAGE.updating), "Updating");
|
snprintf(LANGUAGE.updating, sizeof(LANGUAGE.updating), "Updating");
|
||||||
snprintf(LANGUAGE.Unlock, sizeof(LANGUAGE.Unlock), "Unlock");
|
snprintf(LANGUAGE.Unlock, sizeof(LANGUAGE.Unlock), "Unlock");
|
||||||
|
snprintf(LANGUAGE.UnlockConsoletousethisOption, sizeof(LANGUAGE.UnlockConsoletousethisOption), "Unlock console to use this option.");
|
||||||
snprintf(LANGUAGE.Unicodefix, sizeof(LANGUAGE.Unicodefix), "Unicode Fix");
|
snprintf(LANGUAGE.Unicodefix, sizeof(LANGUAGE.Unicodefix), "Unicode Fix");
|
||||||
snprintf(LANGUAGE.Uninstall, sizeof(LANGUAGE.Uninstall), "Uninstall");
|
snprintf(LANGUAGE.Uninstall, sizeof(LANGUAGE.Uninstall), "Uninstall");
|
||||||
snprintf(LANGUAGE.Updatepath, sizeof(LANGUAGE.Updatepath), "Updatepath");
|
snprintf(LANGUAGE.Updatepath, sizeof(LANGUAGE.Updatepath), "Updatepath");
|
||||||
@ -215,11 +224,13 @@ snprintf(LANGUAGE.Updatefailed, sizeof(LANGUAGE.Updatefailed), "Update failed");
|
|||||||
snprintf(LANGUAGE.Updatedol, sizeof(LANGUAGE.Updatedol), "Update DOL");
|
snprintf(LANGUAGE.Updatedol, sizeof(LANGUAGE.Updatedol), "Update DOL");
|
||||||
snprintf(LANGUAGE.Updateall, sizeof(LANGUAGE.Updateall), "Update All");
|
snprintf(LANGUAGE.Updateall, sizeof(LANGUAGE.Updateall), "Update All");
|
||||||
snprintf(LANGUAGE.Updateto, sizeof(LANGUAGE.Updateto), "Update to");
|
snprintf(LANGUAGE.Updateto, sizeof(LANGUAGE.Updateto), "Update to");
|
||||||
|
snprintf(LANGUAGE.Update, sizeof(LANGUAGE.Update), "Update");
|
||||||
snprintf(LANGUAGE.USBLoaderisprotected, sizeof(LANGUAGE.USBLoaderisprotected), "USB Loader GX is protected");
|
snprintf(LANGUAGE.USBLoaderisprotected, sizeof(LANGUAGE.USBLoaderisprotected), "USB Loader GX is protected");
|
||||||
snprintf(LANGUAGE.USBDevicenotfound, sizeof(LANGUAGE.USBDevicenotfound), "USB Device not found");
|
snprintf(LANGUAGE.USBDevicenotfound, sizeof(LANGUAGE.USBDevicenotfound), "USB Device not found");
|
||||||
snprintf(LANGUAGE.VideoMode, sizeof(LANGUAGE.VideoMode), "Video Mode");
|
snprintf(LANGUAGE.VideoMode, sizeof(LANGUAGE.VideoMode), "Video Mode");
|
||||||
snprintf(LANGUAGE.VIDTVPatch, sizeof(LANGUAGE.VIDTVPatch), "VIDTV Patch");
|
snprintf(LANGUAGE.VIDTVPatch, sizeof(LANGUAGE.VIDTVPatch), "VIDTV Patch");
|
||||||
snprintf(LANGUAGE.Volume, sizeof(LANGUAGE.Volume), "Volume");
|
snprintf(LANGUAGE.Volume, sizeof(LANGUAGE.Volume), "Music Volume");
|
||||||
|
snprintf(LANGUAGE.SFXVolume, sizeof(LANGUAGE.SFXVolume), "SFX Volume");
|
||||||
snprintf(LANGUAGE.Waiting, sizeof(LANGUAGE.Waiting), "Waiting...");
|
snprintf(LANGUAGE.Waiting, sizeof(LANGUAGE.Waiting), "Waiting...");
|
||||||
snprintf(LANGUAGE.WaitingforUSBDevice, sizeof(LANGUAGE.WaitingforUSBDevice), "Waiting for USB Device");
|
snprintf(LANGUAGE.WaitingforUSBDevice, sizeof(LANGUAGE.WaitingforUSBDevice), "Waiting for USB Device");
|
||||||
snprintf(LANGUAGE.WidescreenFix, sizeof(LANGUAGE.WidescreenFix), "Widescreen Fix");
|
snprintf(LANGUAGE.WidescreenFix, sizeof(LANGUAGE.WidescreenFix), "Widescreen Fix");
|
||||||
@ -356,6 +367,10 @@ void language_set(char *name, char *val)
|
|||||||
strcopy(LANGUAGE.ConsoleLocked, val, sizeof(LANGUAGE.ConsoleLocked));
|
strcopy(LANGUAGE.ConsoleLocked, val, sizeof(LANGUAGE.ConsoleLocked));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (strcmp(name, "Controllevel") == 0) {
|
||||||
|
strcopy(LANGUAGE.Controllevel, val, sizeof(LANGUAGE.Controllevel));
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (strcmp(name, "CorrectPassword") == 0) {
|
if (strcmp(name, "CorrectPassword") == 0) {
|
||||||
strcopy(LANGUAGE.CorrectPassword, val, sizeof(LANGUAGE.CorrectPassword));
|
strcopy(LANGUAGE.CorrectPassword, val, sizeof(LANGUAGE.CorrectPassword));
|
||||||
return;
|
return;
|
||||||
@ -396,6 +411,10 @@ void language_set(char *name, char *val)
|
|||||||
strcopy(LANGUAGE.Credits, val, sizeof(LANGUAGE.Credits));
|
strcopy(LANGUAGE.Credits, val, sizeof(LANGUAGE.Credits));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (strcmp(name, "Custompaths") == 0) {
|
||||||
|
strcopy(LANGUAGE.Custompaths, val, sizeof(LANGUAGE.Custompaths));
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (strcmp(name, "DiscImages") == 0) {
|
if (strcmp(name, "DiscImages") == 0) {
|
||||||
strcopy(LANGUAGE.DiscImages, val, sizeof(LANGUAGE.DiscImages));
|
strcopy(LANGUAGE.DiscImages, val, sizeof(LANGUAGE.DiscImages));
|
||||||
return;
|
return;
|
||||||
@ -432,6 +451,10 @@ void language_set(char *name, char *val)
|
|||||||
strcopy(LANGUAGE.Doyouwanttoretryfor30secs, val, sizeof(LANGUAGE.Doyouwanttoretryfor30secs));
|
strcopy(LANGUAGE.Doyouwanttoretryfor30secs, val, sizeof(LANGUAGE.Doyouwanttoretryfor30secs));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (strcmp(name, "Doyouwanttochangelanguage") == 0) {
|
||||||
|
strcopy(LANGUAGE.Doyouwanttochangelanguage, val, sizeof(LANGUAGE.Doyouwanttochangelanguage));
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (strcmp(name, "Downloadingfile") == 0) {
|
if (strcmp(name, "Downloadingfile") == 0) {
|
||||||
strcopy(LANGUAGE.Downloadingfile, val, sizeof(LANGUAGE.Downloadingfile));
|
strcopy(LANGUAGE.Downloadingfile, val, sizeof(LANGUAGE.Downloadingfile));
|
||||||
return;
|
return;
|
||||||
@ -452,6 +475,10 @@ void language_set(char *name, char *val)
|
|||||||
strcopy(LANGUAGE.Defaultsettings, val, sizeof(LANGUAGE.Defaultsettings));
|
strcopy(LANGUAGE.Defaultsettings, val, sizeof(LANGUAGE.Defaultsettings));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (strcmp(name, "Default") == 0) {
|
||||||
|
strcopy(LANGUAGE.Default, val, sizeof(LANGUAGE.Default));
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (strcmp(name, "Error") == 0) {
|
if (strcmp(name, "Error") == 0) {
|
||||||
strcopy(LANGUAGE.Error, val, sizeof(LANGUAGE.Error));
|
strcopy(LANGUAGE.Error, val, sizeof(LANGUAGE.Error));
|
||||||
return;
|
return;
|
||||||
@ -608,6 +635,14 @@ void language_set(char *name, char *val)
|
|||||||
strcopy(LANGUAGE.GoBack, val, sizeof(LANGUAGE.GoBack));
|
strcopy(LANGUAGE.GoBack, val, sizeof(LANGUAGE.GoBack));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (strcmp(name, "GUISettings") == 0) {
|
||||||
|
strcopy(LANGUAGE.GUISettings, val, sizeof(LANGUAGE.GUISettings));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (strcmp(name, "Gameload") == 0) {
|
||||||
|
strcopy(LANGUAGE.Gameload, val, sizeof(LANGUAGE.Gameload));
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (strcmp(name, "GotoPage") == 0) {
|
if (strcmp(name, "GotoPage") == 0) {
|
||||||
strcopy(LANGUAGE.GotoPage, val, sizeof(LANGUAGE.GotoPage));
|
strcopy(LANGUAGE.GotoPage, val, sizeof(LANGUAGE.GotoPage));
|
||||||
return;
|
return;
|
||||||
@ -624,11 +659,14 @@ void language_set(char *name, char *val)
|
|||||||
strcopy(LANGUAGE.keyboard, val, sizeof(LANGUAGE.keyboard));
|
strcopy(LANGUAGE.keyboard, val, sizeof(LANGUAGE.keyboard));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (strcmp(name, "Language") == 0) {
|
if (strcmp(name, "Language") == 0) {
|
||||||
strcopy(LANGUAGE.Language, val, sizeof(LANGUAGE.Language));
|
strcopy(LANGUAGE.Language, val, sizeof(LANGUAGE.Language));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (strcmp(name, "Languagepathchanged") == 0) {
|
||||||
|
strcopy(LANGUAGE.Languagepathchanged, val, sizeof(LANGUAGE.Languagepathchanged));
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (strcmp(name, "Langchange") == 0) {
|
if (strcmp(name, "Langchange") == 0) {
|
||||||
strcopy(LANGUAGE.Langchange, val, sizeof(LANGUAGE.Langchange));
|
strcopy(LANGUAGE.Langchange, val, sizeof(LANGUAGE.Langchange));
|
||||||
return;
|
return;
|
||||||
@ -869,6 +907,10 @@ void language_set(char *name, char *val)
|
|||||||
strcopy(LANGUAGE.Setasbackgroundmusic, val, sizeof(LANGUAGE.Setasbackgroundmusic));
|
strcopy(LANGUAGE.Setasbackgroundmusic, val, sizeof(LANGUAGE.Setasbackgroundmusic));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (strcmp(name, "Sound") == 0) {
|
||||||
|
strcopy(LANGUAGE.Sound, val, sizeof(LANGUAGE.Sound));
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (strcmp(name, "ShutdowntoIdle") == 0) {
|
if (strcmp(name, "ShutdowntoIdle") == 0) {
|
||||||
strcopy(LANGUAGE.ShutdowntoIdle, val, sizeof(LANGUAGE.ShutdowntoIdle));
|
strcopy(LANGUAGE.ShutdowntoIdle, val, sizeof(LANGUAGE.ShutdowntoIdle));
|
||||||
return;
|
return;
|
||||||
@ -941,6 +983,10 @@ void language_set(char *name, char *val)
|
|||||||
strcopy(LANGUAGE.Unlock, val, sizeof(LANGUAGE.Unlock));
|
strcopy(LANGUAGE.Unlock, val, sizeof(LANGUAGE.Unlock));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (strcmp(name, "UnlockConsoletousethisOption") == 0) {
|
||||||
|
strcopy(LANGUAGE.UnlockConsoletousethisOption, val, sizeof(LANGUAGE.UnlockConsoletousethisOption));
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (strcmp(name, "Unicodefix") == 0) {
|
if (strcmp(name, "Unicodefix") == 0) {
|
||||||
strcopy(LANGUAGE.Unicodefix, val, sizeof(LANGUAGE.Unicodefix));
|
strcopy(LANGUAGE.Unicodefix, val, sizeof(LANGUAGE.Unicodefix));
|
||||||
return;
|
return;
|
||||||
@ -977,6 +1023,10 @@ void language_set(char *name, char *val)
|
|||||||
strcopy(LANGUAGE.Updateto, val, sizeof(LANGUAGE.Updateto));
|
strcopy(LANGUAGE.Updateto, val, sizeof(LANGUAGE.Updateto));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (strcmp(name, "Update") == 0) {
|
||||||
|
strcopy(LANGUAGE.Update, val, sizeof(LANGUAGE.Update));
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (strcmp(name, "USBLoaderisprotected") == 0) {
|
if (strcmp(name, "USBLoaderisprotected") == 0) {
|
||||||
strcopy(LANGUAGE.USBLoaderisprotected, val, sizeof(LANGUAGE.USBLoaderisprotected));
|
strcopy(LANGUAGE.USBLoaderisprotected, val, sizeof(LANGUAGE.USBLoaderisprotected));
|
||||||
return;
|
return;
|
||||||
@ -997,6 +1047,10 @@ void language_set(char *name, char *val)
|
|||||||
strcopy(LANGUAGE.Volume, val, sizeof(LANGUAGE.Volume));
|
strcopy(LANGUAGE.Volume, val, sizeof(LANGUAGE.Volume));
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (strcmp(name, "SFXVolume") == 0) {
|
||||||
|
strcopy(LANGUAGE.SFXVolume, val, sizeof(LANGUAGE.SFXVolume));
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (strcmp(name, "Waiting") == 0) {
|
if (strcmp(name, "Waiting") == 0) {
|
||||||
strcopy(LANGUAGE.Waiting, val, sizeof(LANGUAGE.Waiting));
|
strcopy(LANGUAGE.Waiting, val, sizeof(LANGUAGE.Waiting));
|
||||||
return;
|
return;
|
||||||
|
@ -11,7 +11,6 @@ extern "C"
|
|||||||
|
|
||||||
struct LANGUAGE
|
struct LANGUAGE
|
||||||
{
|
{
|
||||||
|
|
||||||
char t3Covers[50];
|
char t3Covers[50];
|
||||||
char addToFavorite[50];
|
char addToFavorite[50];
|
||||||
char all[30];
|
char all[30];
|
||||||
@ -39,6 +38,7 @@ struct LANGUAGE
|
|||||||
char ConsoleDefault[50];
|
char ConsoleDefault[50];
|
||||||
char Consoleshouldbeunlockedtomodifyit[100];
|
char Consoleshouldbeunlockedtomodifyit[100];
|
||||||
char ConsoleLocked[50];
|
char ConsoleLocked[50];
|
||||||
|
char Controllevel[50];
|
||||||
char CorrectPassword[50];
|
char CorrectPassword[50];
|
||||||
char Couldnotinitializenetwork[50];
|
char Couldnotinitializenetwork[50];
|
||||||
char CouldnotopenDisc[50];
|
char CouldnotopenDisc[50];
|
||||||
@ -49,6 +49,7 @@ struct LANGUAGE
|
|||||||
char Coverpathchange[50];
|
char Coverpathchange[50];
|
||||||
char count[20];
|
char count[20];
|
||||||
char Credits[30];
|
char Credits[30];
|
||||||
|
char Custompaths[60];
|
||||||
char DiscImages[50];
|
char DiscImages[50];
|
||||||
char DiscimagePath[50];
|
char DiscimagePath[50];
|
||||||
char DiscpathChanged[50];
|
char DiscpathChanged[50];
|
||||||
@ -59,11 +60,13 @@ struct LANGUAGE
|
|||||||
char Doyoureallywanttodelete[50];
|
char Doyoureallywanttodelete[50];
|
||||||
char Doyouwanttoretryfor30secs[80];
|
char Doyouwanttoretryfor30secs[80];
|
||||||
char Doyouwanttoupdate[50];
|
char Doyouwanttoupdate[50];
|
||||||
|
char Doyouwanttochangelanguage[80];
|
||||||
char Downloadingfile[50];
|
char Downloadingfile[50];
|
||||||
char DownloadBoxartimage[50];
|
char DownloadBoxartimage[50];
|
||||||
char Downloadfinished[50];
|
char Downloadfinished[50];
|
||||||
char Defaultgamesettings[50];
|
char Defaultgamesettings[50];
|
||||||
char Defaultsettings[40];
|
char Defaultsettings[40];
|
||||||
|
char Default[40];
|
||||||
char Error[30];
|
char Error[30];
|
||||||
char BOOTERROR[50];
|
char BOOTERROR[50];
|
||||||
char ErrorreadingDisc[50];
|
char ErrorreadingDisc[50];
|
||||||
@ -101,12 +104,15 @@ struct LANGUAGE
|
|||||||
char GameRegion[50];
|
char GameRegion[50];
|
||||||
char GameSize[50];
|
char GameSize[50];
|
||||||
char GoBack[50];
|
char GoBack[50];
|
||||||
char GotoPage[50];///////
|
char GotoPage[50];
|
||||||
|
char GUISettings[80];
|
||||||
|
char Gameload[50];
|
||||||
char HowtoShutdown[50];
|
char HowtoShutdown[50];
|
||||||
char Homemenu[30];
|
char Homemenu[30];
|
||||||
char hour[30];
|
char hour[30];
|
||||||
char keyboard[50];
|
char keyboard[50];
|
||||||
char Language[50];
|
char Language[50];
|
||||||
|
char Languagepathchanged[80];
|
||||||
char Langchange[50];
|
char Langchange[50];
|
||||||
char Left[50];
|
char Left[50];
|
||||||
char LikeSysMenu[50];
|
char LikeSysMenu[50];
|
||||||
@ -172,6 +178,7 @@ struct LANGUAGE
|
|||||||
char settings[50];
|
char settings[50];
|
||||||
char Setasbackgroundmusic[90];
|
char Setasbackgroundmusic[90];
|
||||||
char Standard[30];
|
char Standard[30];
|
||||||
|
char Sound[40];
|
||||||
char ShutdowntoIdle[50];
|
char ShutdowntoIdle[50];
|
||||||
char ShutdownSystem[50];
|
char ShutdownSystem[50];
|
||||||
char Success[30];
|
char Success[30];
|
||||||
@ -190,6 +197,7 @@ struct LANGUAGE
|
|||||||
char Tooltips[50];
|
char Tooltips[50];
|
||||||
char Timeleft[50];
|
char Timeleft[50];
|
||||||
char Unlock[50];
|
char Unlock[50];
|
||||||
|
char UnlockConsoletousethisOption[100];
|
||||||
char Unicodefix[50];
|
char Unicodefix[50];
|
||||||
char Uninstall[50];
|
char Uninstall[50];
|
||||||
char USBLoaderisprotected[80];
|
char USBLoaderisprotected[80];
|
||||||
@ -201,9 +209,11 @@ struct LANGUAGE
|
|||||||
char Updatedol[40];
|
char Updatedol[40];
|
||||||
char Updateall[40];
|
char Updateall[40];
|
||||||
char Updateto[40];
|
char Updateto[40];
|
||||||
|
char Update[40];
|
||||||
char VideoMode[50];
|
char VideoMode[50];
|
||||||
char VIDTVPatch[50];
|
char VIDTVPatch[50];
|
||||||
char Volume[50];
|
char Volume[50];
|
||||||
|
char SFXVolume[50];
|
||||||
char Waiting[50];
|
char Waiting[50];
|
||||||
char WaitingforUSBDevice[80];
|
char WaitingforUSBDevice[80];
|
||||||
char WidescreenFix[50];
|
char WidescreenFix[50];
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
|
|
||||||
#include "gui.h"
|
#include "gui.h"
|
||||||
#include "../wpad.h"
|
#include "../wpad.h"
|
||||||
|
#include "../main.h"
|
||||||
#include "../cfg.h"
|
#include "../cfg.h"
|
||||||
#include "gui_customoptionbrowser.h"
|
#include "gui_customoptionbrowser.h"
|
||||||
|
|
||||||
@ -77,10 +78,6 @@ void customOptionList::SetValue(int i, const char *format, ...)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//int vol;
|
|
||||||
extern const int vol;
|
|
||||||
/**
|
/**
|
||||||
* Constructor for the GuiCustomOptionBrowser class.
|
* Constructor for the GuiCustomOptionBrowser class.
|
||||||
*/
|
*/
|
||||||
@ -102,7 +99,7 @@ GuiCustomOptionBrowser::GuiCustomOptionBrowser(int w, int h, customOptionList *
|
|||||||
trigA->SetSimpleTrigger(-1, WPAD_BUTTON_A | WPAD_CLASSIC_BUTTON_A, PAD_BUTTON_A);
|
trigA->SetSimpleTrigger(-1, WPAD_BUTTON_A | WPAD_CLASSIC_BUTTON_A, PAD_BUTTON_A);
|
||||||
trigHeldA = new GuiTrigger;
|
trigHeldA = new GuiTrigger;
|
||||||
trigHeldA->SetHeldTrigger(-1, WPAD_BUTTON_A, PAD_BUTTON_A);
|
trigHeldA->SetHeldTrigger(-1, WPAD_BUTTON_A, PAD_BUTTON_A);
|
||||||
btnSoundClick = new GuiSound(button_click_pcm, button_click_pcm_size, SOUND_PCM, vol);
|
btnSoundClick = new GuiSound(button_click_pcm, button_click_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
snprintf(imgPath, sizeof(imgPath), "%s%s", themePath, custombg);
|
snprintf(imgPath, sizeof(imgPath), "%s%s", themePath, custombg);
|
||||||
bgOptions = new GuiImageData(imgPath, imagebg);
|
bgOptions = new GuiImageData(imgPath, imagebg);
|
||||||
@ -315,6 +312,14 @@ int GuiCustomOptionBrowser::GetSelectedOption()
|
|||||||
return found;
|
return found;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void GuiCustomOptionBrowser::SetClickable(bool enable)
|
||||||
|
{
|
||||||
|
for(int i = 0; i < size; i++)
|
||||||
|
{
|
||||||
|
optionBtn[i]->SetClickable(enable);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* FindMenuItem
|
* FindMenuItem
|
||||||
*
|
*
|
||||||
@ -419,8 +424,10 @@ void GuiCustomOptionBrowser::Update(GuiTrigger * t)
|
|||||||
if(state == STATE_DISABLED || !t)
|
if(state == STATE_DISABLED || !t)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if(options->IsChanged())
|
if(options->IsChanged()) {
|
||||||
|
coL2 = 0;
|
||||||
UpdateListEntries();
|
UpdateListEntries();
|
||||||
|
}
|
||||||
int old_listOffset = listOffset;
|
int old_listOffset = listOffset;
|
||||||
|
|
||||||
// scrolldelay affects how fast the list scrolls
|
// scrolldelay affects how fast the list scrolls
|
||||||
|
@ -38,6 +38,7 @@ class GuiCustomOptionBrowser : public GuiElement
|
|||||||
int FindMenuItem(int c, int d);
|
int FindMenuItem(int c, int d);
|
||||||
int GetClickedOption();
|
int GetClickedOption();
|
||||||
int GetSelectedOption();
|
int GetSelectedOption();
|
||||||
|
void SetClickable(bool enable);
|
||||||
void ResetState();
|
void ResetState();
|
||||||
void SetFocus(int f);
|
void SetFocus(int f);
|
||||||
void Draw();
|
void Draw();
|
||||||
|
@ -12,12 +12,12 @@
|
|||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include "gui_gamebrowser.h"
|
#include "gui_gamebrowser.h"
|
||||||
#include "../cfg.h"
|
#include "../cfg.h"
|
||||||
|
#include "../main.h"
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
|
|
||||||
#define GAMESELECTSIZE 30
|
#define GAMESELECTSIZE 30
|
||||||
extern const int vol;
|
|
||||||
int txtscroll = 0;
|
int txtscroll = 0;
|
||||||
/**
|
/**
|
||||||
* Constructor for the GuiGameBrowser class.
|
* Constructor for the GuiGameBrowser class.
|
||||||
@ -40,7 +40,7 @@ GuiGameBrowser::GuiGameBrowser(int w, int h, struct discHdr * l, int gameCnt, co
|
|||||||
trigA->SetSimpleTrigger(-1, WPAD_BUTTON_A | WPAD_CLASSIC_BUTTON_A, PAD_BUTTON_A);
|
trigA->SetSimpleTrigger(-1, WPAD_BUTTON_A | WPAD_CLASSIC_BUTTON_A, PAD_BUTTON_A);
|
||||||
trigHeldA = new GuiTrigger;
|
trigHeldA = new GuiTrigger;
|
||||||
trigHeldA->SetHeldTrigger(-1, WPAD_BUTTON_A, PAD_BUTTON_A);
|
trigHeldA->SetHeldTrigger(-1, WPAD_BUTTON_A, PAD_BUTTON_A);
|
||||||
btnSoundClick = new GuiSound(button_click_pcm, button_click_pcm_size, SOUND_PCM, vol);
|
btnSoundClick = new GuiSound(button_click_pcm, button_click_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sbg_options.png", themePath);
|
snprintf(imgPath, sizeof(imgPath), "%sbg_options.png", themePath);
|
||||||
bgGames = new GuiImageData(imgPath, imagebg);
|
bgGames = new GuiImageData(imgPath, imagebg);
|
||||||
|
@ -26,8 +26,6 @@
|
|||||||
#define SPEED_STEP 4
|
#define SPEED_STEP 4
|
||||||
#define SAFETY 320
|
#define SAFETY 320
|
||||||
|
|
||||||
extern const int vol;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor for the GuiGameCarousel class.
|
* Constructor for the GuiGameCarousel class.
|
||||||
*/
|
*/
|
||||||
@ -58,8 +56,8 @@ GuiGameCarousel::GuiGameCarousel(int w, int h, struct discHdr * l, int count, co
|
|||||||
trigMinus = new GuiTrigger;
|
trigMinus = new GuiTrigger;
|
||||||
trigMinus->SetButtonOnlyTrigger(-1, WPAD_BUTTON_MINUS | WPAD_CLASSIC_BUTTON_MINUS, 0);
|
trigMinus->SetButtonOnlyTrigger(-1, WPAD_BUTTON_MINUS | WPAD_CLASSIC_BUTTON_MINUS, 0);
|
||||||
|
|
||||||
btnSoundClick = new GuiSound(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, vol);
|
btnSoundClick = new GuiSound(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
btnSoundOver = new GuiSound(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
btnSoundOver = new GuiSound(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sstartgame_arrow_left.png", CFG.theme_path);
|
snprintf(imgPath, sizeof(imgPath), "%sstartgame_arrow_left.png", CFG.theme_path);
|
||||||
imgLeft = new GuiImageData(imgPath, startgame_arrow_left_png);
|
imgLeft = new GuiImageData(imgPath, startgame_arrow_left_png);
|
||||||
|
@ -17,9 +17,6 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
|
|
||||||
|
|
||||||
extern const int vol;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructor for the GuiGameGrid class.
|
* Constructor for the GuiGameGrid class.
|
||||||
*/
|
*/
|
||||||
@ -50,8 +47,8 @@ GuiGameGrid::GuiGameGrid(int w, int h, struct discHdr * l, int gameCnt, const ch
|
|||||||
trigMinus = new GuiTrigger;
|
trigMinus = new GuiTrigger;
|
||||||
trigMinus->SetButtonOnlyTrigger(-1, WPAD_BUTTON_MINUS | WPAD_CLASSIC_BUTTON_MINUS, 0);
|
trigMinus->SetButtonOnlyTrigger(-1, WPAD_BUTTON_MINUS | WPAD_CLASSIC_BUTTON_MINUS, 0);
|
||||||
|
|
||||||
btnSoundClick = new GuiSound(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, vol);
|
btnSoundClick = new GuiSound(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
btnSoundOver = new GuiSound(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
btnSoundOver = new GuiSound(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sstartgame_arrow_left.png", CFG.theme_path);
|
snprintf(imgPath, sizeof(imgPath), "%sstartgame_arrow_left.png", CFG.theme_path);
|
||||||
imgLeft = new GuiImageData(imgPath, startgame_arrow_left_png);
|
imgLeft = new GuiImageData(imgPath, startgame_arrow_left_png);
|
||||||
|
@ -9,12 +9,13 @@
|
|||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
|
|
||||||
#include "gui.h"
|
#include "gui.h"
|
||||||
|
#include "../main.h"
|
||||||
|
#include "../cfg.h"
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
/**
|
/**
|
||||||
* Constructor for the GuiKeyboard class.
|
* Constructor for the GuiKeyboard class.
|
||||||
*/
|
*/
|
||||||
extern const int vol;
|
|
||||||
unsigned int m;
|
unsigned int m;
|
||||||
//const Key thekeys;
|
//const Key thekeys;
|
||||||
GuiKeyboard::GuiKeyboard(char * t, u32 max, int min, int lang)
|
GuiKeyboard::GuiKeyboard(char * t, u32 max, int min, int lang)
|
||||||
@ -286,8 +287,8 @@ GuiKeyboard::GuiKeyboard(char * t, u32 max, int min, int lang)
|
|||||||
keyLarge = new GuiImageData(keyboard_largekey_over_png);
|
keyLarge = new GuiImageData(keyboard_largekey_over_png);
|
||||||
keyLargeOver = new GuiImageData(keyboard_largekey_over_png);
|
keyLargeOver = new GuiImageData(keyboard_largekey_over_png);
|
||||||
|
|
||||||
keySoundOver = new GuiSound(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
keySoundOver = new GuiSound(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
keySoundClick = new GuiSound(button_click_pcm, button_click_pcm_size, SOUND_PCM, vol);
|
keySoundClick = new GuiSound(button_click_pcm, button_click_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
trigA = new GuiTrigger;
|
trigA = new GuiTrigger;
|
||||||
trigA->SetSimpleTrigger(-1, WPAD_BUTTON_A | WPAD_CLASSIC_BUTTON_A, PAD_BUTTON_A);
|
trigA->SetSimpleTrigger(-1, WPAD_BUTTON_A | WPAD_CLASSIC_BUTTON_A, PAD_BUTTON_A);
|
||||||
trigB = new GuiTrigger;
|
trigB = new GuiTrigger;
|
||||||
|
@ -10,8 +10,8 @@
|
|||||||
#include "listfiles.h"
|
#include "listfiles.h"
|
||||||
|
|
||||||
|
|
||||||
char alldirfiles[300][70];
|
static char alldirfiles[300][70];
|
||||||
char filename[80];
|
char filenames[80];
|
||||||
|
|
||||||
bool findfile(const char * filename, const char * path)
|
bool findfile(const char * filename, const char * path)
|
||||||
{
|
{
|
||||||
@ -35,6 +35,10 @@ while ((file = readdir(dir)))
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
char * GetFileName(int i)
|
||||||
|
{
|
||||||
|
return alldirfiles[i];
|
||||||
|
}
|
||||||
|
|
||||||
s32 filenamescmp(const void *a, const void *b)
|
s32 filenamescmp(const void *a, const void *b)
|
||||||
{
|
{
|
||||||
@ -42,7 +46,7 @@ s32 filenamescmp(const void *a, const void *b)
|
|||||||
return stricmp((char *)a, (char *)b);
|
return stricmp((char *)a, (char *)b);
|
||||||
}
|
}
|
||||||
|
|
||||||
int GetFiles(char * filespath)
|
int GetAllDirFiles(char * filespath)
|
||||||
{
|
{
|
||||||
|
|
||||||
int countfiles = 0;
|
int countfiles = 0;
|
||||||
@ -57,12 +61,12 @@ if (dir == NULL) //If empty
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
while (dirnext(dir,filename,&st) == 0)
|
while (dirnext(dir,filenames,&st) == 0)
|
||||||
{
|
{
|
||||||
if ((st.st_mode & S_IFDIR) == 0)
|
if ((st.st_mode & S_IFDIR) == 0)
|
||||||
{
|
{
|
||||||
// st.st_mode & S_IFDIR indicates a directory
|
// st.st_mode & S_IFDIR indicates a directory
|
||||||
snprintf(alldirfiles[countfiles], 70, "%s", filename);
|
snprintf(alldirfiles[countfiles], 70, "%s", filenames);
|
||||||
countfiles++;
|
countfiles++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -7,7 +7,8 @@ extern "C"
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
bool findfile(const char * filename, const char * path);
|
bool findfile(const char * filename, const char * path);
|
||||||
int GetFiles(char * filespath);
|
char * GetFileName(int i);
|
||||||
|
int GetAllDirFiles(char * filespath);
|
||||||
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
411
source/menu.cpp
411
source/menu.cpp
@ -1,6 +1,8 @@
|
|||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
|
* USB Loader GX Team
|
||||||
|
*
|
||||||
* libwiigui Template
|
* libwiigui Template
|
||||||
* Tantric 2009
|
* by Tantric 2009
|
||||||
*
|
*
|
||||||
* menu.cpp
|
* menu.cpp
|
||||||
* Menu flow routines - handles all menu logic
|
* Menu flow routines - handles all menu logic
|
||||||
@ -40,7 +42,6 @@ GuiImageData * pointer[4];
|
|||||||
GuiImage * bgImg = NULL;
|
GuiImage * bgImg = NULL;
|
||||||
GuiImageData * background = NULL;
|
GuiImageData * background = NULL;
|
||||||
GuiSound * bgMusic = NULL;
|
GuiSound * bgMusic = NULL;
|
||||||
int vol = Settings.volume;
|
|
||||||
float gamesize;
|
float gamesize;
|
||||||
|
|
||||||
/*** Variables used only in menu.cpp ***/
|
/*** Variables used only in menu.cpp ***/
|
||||||
@ -57,8 +58,6 @@ static char gameregion[7];
|
|||||||
extern FreeTypeGX *fontClock;
|
extern FreeTypeGX *fontClock;
|
||||||
extern u8 shutdown;
|
extern u8 shutdown;
|
||||||
extern u8 reset;
|
extern u8 reset;
|
||||||
extern char alldirfiles[300][70];
|
|
||||||
extern char missingFiles[500][12];
|
|
||||||
extern int cntMissFiles;
|
extern int cntMissFiles;
|
||||||
extern int networkisinitialized;
|
extern int networkisinitialized;
|
||||||
extern struct discHdr * gameList;
|
extern struct discHdr * gameList;
|
||||||
@ -203,8 +202,8 @@ static int MenuDiscList()
|
|||||||
nolist = 1;
|
nolist = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, vol);
|
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sbutton_install.png", CFG.theme_path);
|
snprintf(imgPath, sizeof(imgPath), "%sbutton_install.png", CFG.theme_path);
|
||||||
GuiImageData btnInstall(imgPath, button_install_png);
|
GuiImageData btnInstall(imgPath, button_install_png);
|
||||||
@ -609,7 +608,7 @@ static int MenuDiscList()
|
|||||||
bgMusic->PlayOggFile(Settings.ogg_path);
|
bgMusic->PlayOggFile(Settings.ogg_path);
|
||||||
}
|
}
|
||||||
bgMusic->SetPlayTime(thetimeofbg);
|
bgMusic->SetPlayTime(thetimeofbg);
|
||||||
SetVolumeOgg(255*(vol/100.0));
|
SetVolumeOgg(255*(Settings.volume/100.0));
|
||||||
|
|
||||||
if(choice == 3)
|
if(choice == 3)
|
||||||
{
|
{
|
||||||
@ -695,7 +694,7 @@ static int MenuDiscList()
|
|||||||
if (netcheck)
|
if (netcheck)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (missingFiles != NULL && cntMissFiles > 0)
|
if (GetMissingFiles() != NULL && cntMissFiles > 0)
|
||||||
|
|
||||||
{
|
{
|
||||||
char tempCnt[40];
|
char tempCnt[40];
|
||||||
@ -1389,7 +1388,7 @@ static int MenuInstall()
|
|||||||
char *name;
|
char *name;
|
||||||
static char buffer[MAX_CHARACTERS + 4];
|
static char buffer[MAX_CHARACTERS + 4];
|
||||||
|
|
||||||
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
|
|
||||||
char imgPath[100];
|
char imgPath[100];
|
||||||
|
|
||||||
@ -1572,8 +1571,8 @@ static int MenuFormat()
|
|||||||
|
|
||||||
options.length = cnt;
|
options.length = cnt;
|
||||||
|
|
||||||
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, vol);
|
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, Settings.sfxvolume);
|
||||||
snprintf(imgPath, sizeof(imgPath), "%swiimote_poweroff.png", CFG.theme_path);
|
snprintf(imgPath, sizeof(imgPath), "%swiimote_poweroff.png", CFG.theme_path);
|
||||||
GuiImageData btnpwroff(imgPath, wiimote_poweroff_png);
|
GuiImageData btnpwroff(imgPath, wiimote_poweroff_png);
|
||||||
snprintf(imgPath, sizeof(imgPath), "%swiimote_poweroff_over.png", CFG.theme_path);
|
snprintf(imgPath, sizeof(imgPath), "%swiimote_poweroff_over.png", CFG.theme_path);
|
||||||
@ -1802,333 +1801,6 @@ static int MenuCheck()
|
|||||||
|
|
||||||
return menu;
|
return menu;
|
||||||
}
|
}
|
||||||
/****************************************************************************
|
|
||||||
* MenuOGG
|
|
||||||
***************************************************************************/
|
|
||||||
int MenuOGG()
|
|
||||||
{
|
|
||||||
int menu = MENU_NONE, cnt = 0;
|
|
||||||
int ret = 0, choice = 0;
|
|
||||||
int scrollon, nothingchanged = 0;
|
|
||||||
|
|
||||||
GuiSound btnSoundOver(button_over_pcm, button_over_pcm_size, SOUND_PCM, vol);
|
|
||||||
GuiSound btnClick(button_click2_pcm, button_click2_pcm_size, SOUND_PCM, vol);
|
|
||||||
|
|
||||||
char imgPath[100];
|
|
||||||
|
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sbutton_dialogue_box.png", CFG.theme_path);
|
|
||||||
GuiImageData btnOutline(imgPath, button_dialogue_box_png);
|
|
||||||
snprintf(imgPath, sizeof(imgPath), "%ssettings_background.png", CFG.theme_path);
|
|
||||||
GuiImageData settingsbg(imgPath, settings_background_png);
|
|
||||||
|
|
||||||
GuiTrigger trigA;
|
|
||||||
trigA.SetSimpleTrigger(-1, WPAD_BUTTON_A | WPAD_CLASSIC_BUTTON_A, PAD_BUTTON_A);
|
|
||||||
GuiTrigger trigB;
|
|
||||||
trigB.SetButtonOnlyTrigger(-1, WPAD_BUTTON_B | WPAD_CLASSIC_BUTTON_B, PAD_BUTTON_B);
|
|
||||||
GuiTrigger trigMinus;
|
|
||||||
trigMinus.SetButtonOnlyTrigger(-1, WPAD_BUTTON_MINUS | WPAD_CLASSIC_BUTTON_MINUS, 0);
|
|
||||||
GuiTrigger trigPlus;
|
|
||||||
trigPlus.SetButtonOnlyTrigger(-1, WPAD_BUTTON_PLUS | WPAD_CLASSIC_BUTTON_PLUS, 0);
|
|
||||||
|
|
||||||
char fullpath[150];
|
|
||||||
char shortpath[35];
|
|
||||||
int countoggs = GetFiles(Settings.oggload_path);
|
|
||||||
|
|
||||||
if(!strcmp("", Settings.oggload_path)) {
|
|
||||||
sprintf(shortpath, "%s", LANGUAGE.Standard);
|
|
||||||
} else if (strlen(Settings.oggload_path) < (27 + 3)) {
|
|
||||||
sprintf(shortpath, "%s", Settings.oggload_path);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
strncpy(shortpath, Settings.oggload_path, 27);
|
|
||||||
shortpath[27] = '\0';
|
|
||||||
strncat(shortpath, "...", 3);
|
|
||||||
}
|
|
||||||
|
|
||||||
GuiText titleTxt(shortpath, 24, (GXColor){0, 0, 0, 255});
|
|
||||||
titleTxt.SetAlignment(ALIGN_CENTRE, ALIGN_MIDDLE);
|
|
||||||
titleTxt.SetPosition(0,0);
|
|
||||||
GuiButton pathBtn(300, 50);
|
|
||||||
pathBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
|
||||||
pathBtn.SetPosition(0,28);
|
|
||||||
pathBtn.SetLabel(&titleTxt);
|
|
||||||
pathBtn.SetSoundOver(&btnSoundOver);
|
|
||||||
pathBtn.SetSoundClick(&btnClick);
|
|
||||||
pathBtn.SetTrigger(&trigA);
|
|
||||||
pathBtn.SetEffectGrow();
|
|
||||||
|
|
||||||
GuiImage oggmenubackground(&settingsbg);
|
|
||||||
oggmenubackground.SetAlignment(ALIGN_LEFT, ALIGN_TOP);
|
|
||||||
oggmenubackground.SetPosition(0, 0);
|
|
||||||
|
|
||||||
GuiText backBtnTxt(LANGUAGE.Back , 22, (GXColor){THEME.prompttxt_r, THEME.prompttxt_g, THEME.prompttxt_b, 255});
|
|
||||||
backBtnTxt.SetMaxWidth(btnOutline.GetWidth()-30);
|
|
||||||
GuiImage backBtnImg(&btnOutline);
|
|
||||||
if (Settings.wsprompt == yes){
|
|
||||||
backBtnTxt.SetWidescreen(CFG.widescreen);
|
|
||||||
backBtnImg.SetWidescreen(CFG.widescreen);
|
|
||||||
}
|
|
||||||
GuiButton backBtn(btnOutline.GetWidth(), btnOutline.GetHeight());
|
|
||||||
backBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
|
||||||
backBtn.SetPosition(-180, 400);
|
|
||||||
backBtn.SetLabel(&backBtnTxt);
|
|
||||||
backBtn.SetImage(&backBtnImg);
|
|
||||||
backBtn.SetSoundOver(&btnSoundOver);
|
|
||||||
backBtn.SetSoundClick(&btnClick);
|
|
||||||
backBtn.SetTrigger(&trigA);
|
|
||||||
backBtn.SetTrigger(&trigB);
|
|
||||||
backBtn.SetEffectGrow();
|
|
||||||
|
|
||||||
customOptionList options2(countoggs);
|
|
||||||
|
|
||||||
for (cnt = 0; cnt < countoggs; cnt++) {
|
|
||||||
char tmp[30];
|
|
||||||
snprintf(tmp , 30, "%s", alldirfiles[cnt]);
|
|
||||||
options2.SetValue(cnt, "%s", tmp);
|
|
||||||
options2.SetName(cnt,"%i.", cnt+1);
|
|
||||||
}
|
|
||||||
// options2.length = cnt;
|
|
||||||
|
|
||||||
if(cnt < 9) {
|
|
||||||
scrollon = 0;
|
|
||||||
} else {
|
|
||||||
scrollon = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
GuiCustomOptionBrowser optionBrowser4(396, 280, &options2, CFG.theme_path, "bg_options_settings.png", bg_options_settings_png, scrollon, 55);
|
|
||||||
optionBrowser4.SetPosition(0, 90);
|
|
||||||
optionBrowser4.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
|
||||||
|
|
||||||
int songPlaying=0;
|
|
||||||
|
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sarrow_next.png", CFG.theme_path);
|
|
||||||
GuiImageData next(imgPath, arrow_next_png);
|
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sarrow_previous.png", CFG.theme_path);
|
|
||||||
GuiImageData prev(imgPath, arrow_previous_png);
|
|
||||||
snprintf(imgPath, sizeof(imgPath), "%smp3_stop.png", CFG.theme_path);
|
|
||||||
GuiImageData stop(imgPath, mp3_stop_png);
|
|
||||||
snprintf(imgPath, sizeof(imgPath), "%smp3_pause.png", CFG.theme_path);
|
|
||||||
GuiImageData pause(imgPath, mp3_pause_png);
|
|
||||||
snprintf(imgPath, sizeof(imgPath), "%sstartgame_arrow_right.png", CFG.theme_path);
|
|
||||||
GuiImageData play(imgPath, startgame_arrow_right_png);
|
|
||||||
|
|
||||||
GuiImage nextBtnImg(&next);
|
|
||||||
GuiButton nextBtn(next.GetWidth(), next.GetHeight());
|
|
||||||
nextBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
|
||||||
nextBtn.SetPosition(130, 400);
|
|
||||||
nextBtn.SetImage(&nextBtnImg);
|
|
||||||
nextBtn.SetSoundOver(&btnSoundOver);
|
|
||||||
nextBtn.SetSoundClick(&btnClick);
|
|
||||||
nextBtn.SetTrigger(&trigA);
|
|
||||||
nextBtn.SetEffectGrow();
|
|
||||||
|
|
||||||
GuiImage prevBtnImg(&prev);
|
|
||||||
prevBtnImg.SetWidescreen(CFG.widescreen);
|
|
||||||
GuiButton prevBtn(prev.GetWidth(), prev.GetHeight());
|
|
||||||
prevBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
|
||||||
prevBtn.SetPosition(-60, 400);
|
|
||||||
prevBtn.SetImage(&prevBtnImg);
|
|
||||||
prevBtn.SetSoundOver(&btnSoundOver);
|
|
||||||
prevBtn.SetSoundClick(&btnClick);
|
|
||||||
prevBtn.SetTrigger(&trigA);
|
|
||||||
prevBtn.SetEffectGrow();
|
|
||||||
|
|
||||||
GuiImage playBtnImg(&play);
|
|
||||||
playBtnImg.SetWidescreen(CFG.widescreen);
|
|
||||||
GuiButton playBtn(play.GetWidth(), play.GetHeight());
|
|
||||||
playBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
|
||||||
playBtn.SetPosition(72, 400);
|
|
||||||
playBtn.SetImage(&playBtnImg);
|
|
||||||
playBtn.SetSoundOver(&btnSoundOver);
|
|
||||||
playBtn.SetSoundClick(&btnClick);
|
|
||||||
playBtn.SetTrigger(&trigA);
|
|
||||||
playBtn.SetTrigger(&trigPlus);
|
|
||||||
playBtn.SetEffectGrow();
|
|
||||||
|
|
||||||
GuiImage stopBtnImg(&stop);
|
|
||||||
stopBtnImg.SetWidescreen(CFG.widescreen);
|
|
||||||
GuiButton stopBtn(stop.GetWidth(), stop.GetHeight());
|
|
||||||
stopBtn.SetAlignment(ALIGN_CENTRE, ALIGN_TOP);
|
|
||||||
stopBtn.SetPosition(17, 400);
|
|
||||||
stopBtn.SetImage(&stopBtnImg);
|
|
||||||
stopBtn.SetSoundOver(&btnSoundOver);
|
|
||||||
stopBtn.SetSoundClick(&btnClick);
|
|
||||||
stopBtn.SetTrigger(&trigA);
|
|
||||||
stopBtn.SetTrigger(&trigMinus);
|
|
||||||
stopBtn.SetEffectGrow();
|
|
||||||
|
|
||||||
HaltGui();
|
|
||||||
GuiWindow w(screenwidth, screenheight);
|
|
||||||
w.Append(&oggmenubackground);
|
|
||||||
w.Append(&pathBtn);
|
|
||||||
w.Append(&backBtn);
|
|
||||||
w.Append(&playBtn);
|
|
||||||
w.Append(&nextBtn);
|
|
||||||
w.Append(&prevBtn);
|
|
||||||
w.Append(&stopBtn);
|
|
||||||
mainWindow->Append(&w);
|
|
||||||
mainWindow->Append(&optionBrowser4);
|
|
||||||
|
|
||||||
ResumeGui();
|
|
||||||
|
|
||||||
while(menu == MENU_NONE)
|
|
||||||
{
|
|
||||||
|
|
||||||
if (backBtn.GetState() == STATE_CLICKED) {
|
|
||||||
if(nothingchanged == 1 && countoggs > 0) {
|
|
||||||
if(!strcmp("", Settings.oggload_path) || !strcmp("notset", Settings.ogg_path)) {
|
|
||||||
bgMusic->Play();
|
|
||||||
} else {
|
|
||||||
bgMusic->PlayOggFile(Settings.ogg_path);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
menu = MENU_SETTINGS;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (pathBtn.GetState() == STATE_CLICKED) {
|
|
||||||
mainWindow->Remove(&optionBrowser4);
|
|
||||||
w.Remove(&backBtn);
|
|
||||||
w.Remove(&pathBtn);
|
|
||||||
w.Remove(&playBtn);
|
|
||||||
w.Remove(&nextBtn);
|
|
||||||
w.Remove(&prevBtn);
|
|
||||||
w.Remove(&stopBtn);
|
|
||||||
char entered[43] = "";
|
|
||||||
strncpy(entered, Settings.oggload_path, sizeof(entered));
|
|
||||||
int result = OnScreenKeyboard(entered,43,0);
|
|
||||||
mainWindow->Append(&optionBrowser4);
|
|
||||||
w.Append(&pathBtn);
|
|
||||||
w.Append(&backBtn);
|
|
||||||
w.Append(&playBtn);
|
|
||||||
w.Append(&nextBtn);
|
|
||||||
w.Append(&prevBtn);
|
|
||||||
w.Append(&stopBtn);
|
|
||||||
if ( result == 1 ) {
|
|
||||||
int len = (strlen(entered)-1);
|
|
||||||
if(entered[len] !='/')
|
|
||||||
strncat (entered, "/", 1);
|
|
||||||
strncpy(Settings.oggload_path, entered, sizeof(Settings.oggload_path));
|
|
||||||
WindowPrompt(LANGUAGE.Backgroundmusicpath,0,LANGUAGE.ok,0,0,0);
|
|
||||||
if(isSdInserted()) {
|
|
||||||
if(!strcmp("", Settings.oggload_path)) {
|
|
||||||
sprintf(Settings.ogg_path, "notset");
|
|
||||||
bgMusic->Play();
|
|
||||||
}
|
|
||||||
cfg_save_global();
|
|
||||||
menu = MENU_OGG;
|
|
||||||
break;
|
|
||||||
} else {
|
|
||||||
WindowPrompt(LANGUAGE.NoSDcardinserted, LANGUAGE.InsertaSDCardtosave, LANGUAGE.ok, 0,0,0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if(countoggs > 0) {
|
|
||||||
optionBrowser4.SetFocus(1);
|
|
||||||
}
|
|
||||||
pathBtn.ResetState();
|
|
||||||
}
|
|
||||||
|
|
||||||
ret = optionBrowser4.GetClickedOption();
|
|
||||||
|
|
||||||
if(ret>=0) {
|
|
||||||
choice = WindowPrompt(LANGUAGE.Setasbackgroundmusic,alldirfiles[ret],LANGUAGE.Yes,LANGUAGE.No,0,0);
|
|
||||||
if(choice == 1) {
|
|
||||||
snprintf(fullpath,150,"%s%s",Settings.oggload_path,alldirfiles[ret]);
|
|
||||||
choice = bgMusic->PlayOggFile(fullpath);
|
|
||||||
if(choice < 0) {
|
|
||||||
WindowPrompt(LANGUAGE.Notasupportedformat, LANGUAGE.Loadingstandardmusic, LANGUAGE.ok, 0,0,0);
|
|
||||||
sprintf(Settings.ogg_path, "notset");
|
|
||||||
bgMusic->Play();
|
|
||||||
SetVolumeOgg(255*(vol/100.0));
|
|
||||||
} else {
|
|
||||||
snprintf(Settings.ogg_path, sizeof(Settings.ogg_path), "%s", fullpath);
|
|
||||||
cfg_save_global();
|
|
||||||
SetVolumeOgg(255*(vol/100.0));
|
|
||||||
nothingchanged = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
optionBrowser4.SetFocus(1);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (playBtn.GetState() == STATE_CLICKED && countoggs > 0) {
|
|
||||||
if(countoggs > 0) {
|
|
||||||
ret = optionBrowser4.GetSelectedOption();
|
|
||||||
songPlaying=ret;
|
|
||||||
snprintf(fullpath, 150,"%s%s", Settings.oggload_path,alldirfiles[ret]);
|
|
||||||
choice = bgMusic->PlayOggFile(fullpath);
|
|
||||||
if(choice < 0) {
|
|
||||||
WindowPrompt(LANGUAGE.Notasupportedformat, LANGUAGE.Loadingstandardmusic, LANGUAGE.ok, 0,0,0);
|
|
||||||
if(!strcmp("", Settings.oggload_path) || !strcmp("notset", Settings.ogg_path)) {
|
|
||||||
bgMusic->Play();
|
|
||||||
} else {
|
|
||||||
bgMusic->PlayOggFile(Settings.ogg_path);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
SetVolumeOgg(255*(vol/100.0));
|
|
||||||
songPlaying=ret;
|
|
||||||
nothingchanged = 1;
|
|
||||||
optionBrowser4.SetFocus(1);
|
|
||||||
}
|
|
||||||
playBtn.ResetState();
|
|
||||||
}
|
|
||||||
|
|
||||||
if(nextBtn.GetState() == STATE_CLICKED){
|
|
||||||
if(countoggs > 0) {
|
|
||||||
songPlaying++;
|
|
||||||
if (songPlaying>(countoggs - 1)){songPlaying=0;}
|
|
||||||
snprintf(fullpath,150,"%s%s", Settings.oggload_path,alldirfiles[songPlaying]);
|
|
||||||
choice = bgMusic->PlayOggFile(fullpath);
|
|
||||||
if(choice < 0) {
|
|
||||||
WindowPrompt(LANGUAGE.Notasupportedformat, LANGUAGE.Loadingstandardmusic, LANGUAGE.ok, 0,0,0);
|
|
||||||
if(!strcmp("", Settings.oggload_path) || !strcmp("notset", Settings.ogg_path)) {
|
|
||||||
bgMusic->Play();
|
|
||||||
} else {
|
|
||||||
bgMusic->PlayOggFile(Settings.ogg_path);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
nothingchanged = 1;
|
|
||||||
optionBrowser4.SetFocus(1);
|
|
||||||
}
|
|
||||||
SetVolumeOgg(255*(vol/100.0));
|
|
||||||
nextBtn.ResetState();
|
|
||||||
}
|
|
||||||
if(prevBtn.GetState() == STATE_CLICKED) {
|
|
||||||
if(countoggs > 0) {
|
|
||||||
songPlaying--;
|
|
||||||
if (songPlaying<0){songPlaying=(countoggs - 1);}
|
|
||||||
snprintf(fullpath,150,"%s%s", Settings.oggload_path,alldirfiles[songPlaying]);
|
|
||||||
choice = bgMusic->PlayOggFile(fullpath);
|
|
||||||
if(choice < 0) {
|
|
||||||
WindowPrompt(LANGUAGE.Notasupportedformat, LANGUAGE.Loadingstandardmusic, LANGUAGE.ok, 0,0,0);
|
|
||||||
if(!strcmp("", Settings.oggload_path) || !strcmp("notset", Settings.ogg_path)) {
|
|
||||||
bgMusic->Play();
|
|
||||||
} else {
|
|
||||||
bgMusic->PlayOggFile(Settings.ogg_path);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
nothingchanged = 1;
|
|
||||||
optionBrowser4.SetFocus(1);
|
|
||||||
}
|
|
||||||
SetVolumeOgg(255*(vol/100.0));
|
|
||||||
prevBtn.ResetState();
|
|
||||||
}
|
|
||||||
if(stopBtn.GetState() == STATE_CLICKED) {
|
|
||||||
if(countoggs > 0) {
|
|
||||||
StopOgg();
|
|
||||||
nothingchanged = 1;
|
|
||||||
optionBrowser4.SetFocus(1);
|
|
||||||
}
|
|
||||||
stopBtn.ResetState();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
HaltGui();
|
|
||||||
mainWindow->Remove(&optionBrowser4);
|
|
||||||
mainWindow->Remove(&w);
|
|
||||||
ResumeGui();
|
|
||||||
|
|
||||||
return menu;
|
|
||||||
}
|
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
* MainMenu
|
* MainMenu
|
||||||
@ -2164,8 +1836,8 @@ int MainMenu(int menu)
|
|||||||
|
|
||||||
ResumeGui();
|
ResumeGui();
|
||||||
|
|
||||||
bgMusic = new GuiSound(bg_music_ogg, bg_music_ogg_size, SOUND_OGG, vol);
|
bgMusic = new GuiSound(bg_music_ogg, bg_music_ogg_size, SOUND_OGG, Settings.volume);
|
||||||
bgMusic->SetVolume(vol);
|
bgMusic->SetVolume(Settings.volume);
|
||||||
bgMusic->SetLoop(1); //loop music
|
bgMusic->SetLoop(1); //loop music
|
||||||
// startup music
|
// startup music
|
||||||
if(!strcmp("", Settings.oggload_path) || !strcmp("notset", Settings.ogg_path)) {
|
if(!strcmp("", Settings.oggload_path) || !strcmp("notset", Settings.ogg_path)) {
|
||||||
@ -2176,7 +1848,7 @@ int MainMenu(int menu)
|
|||||||
|
|
||||||
while(currentMenu != MENU_EXIT)
|
while(currentMenu != MENU_EXIT)
|
||||||
{
|
{
|
||||||
SetVolumeOgg(255*(vol/100.0));
|
SetVolumeOgg(255*(Settings.volume/100.0));
|
||||||
|
|
||||||
switch (currentMenu)
|
switch (currentMenu)
|
||||||
{
|
{
|
||||||
@ -2195,53 +1867,10 @@ int MainMenu(int menu)
|
|||||||
case MENU_DISCLIST:
|
case MENU_DISCLIST:
|
||||||
currentMenu = MenuDiscList();
|
currentMenu = MenuDiscList();
|
||||||
break;
|
break;
|
||||||
case MENU_OGG:
|
|
||||||
currentMenu = MenuOGG();
|
|
||||||
break;
|
|
||||||
default: // unrecognized menu
|
default: // unrecognized menu
|
||||||
currentMenu = MenuCheck();
|
currentMenu = MenuCheck();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (Settings.volume)
|
|
||||||
{
|
|
||||||
case v10:
|
|
||||||
vol = 10;
|
|
||||||
break;
|
|
||||||
case v20:
|
|
||||||
vol = 20;
|
|
||||||
break;
|
|
||||||
case v30:
|
|
||||||
vol = 30;
|
|
||||||
break;
|
|
||||||
case v40:
|
|
||||||
vol = 40;
|
|
||||||
break;
|
|
||||||
case v50:
|
|
||||||
vol = 50;
|
|
||||||
break;
|
|
||||||
case v60:
|
|
||||||
vol = 60;
|
|
||||||
break;
|
|
||||||
case v70:
|
|
||||||
vol = 70;
|
|
||||||
break;
|
|
||||||
case v80:
|
|
||||||
vol = 80;
|
|
||||||
break;
|
|
||||||
case v90:
|
|
||||||
vol = 90;
|
|
||||||
break;
|
|
||||||
case v100:
|
|
||||||
vol = 100;
|
|
||||||
break;
|
|
||||||
case v0:
|
|
||||||
vol = 0;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
vol = 80;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
ExitGUIThreads();
|
ExitGUIThreads();
|
||||||
|
|
||||||
@ -2276,6 +1905,7 @@ int MainMenu(int menu)
|
|||||||
languageChoice = game_cfg->language;
|
languageChoice = game_cfg->language;
|
||||||
ocarinaChoice = game_cfg->ocarina;
|
ocarinaChoice = game_cfg->ocarina;
|
||||||
viChoice = game_cfg->vipatch;
|
viChoice = game_cfg->vipatch;
|
||||||
|
fix002 = game_cfg->errorfix002;
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
@ -2283,8 +1913,19 @@ int MainMenu(int menu)
|
|||||||
languageChoice = Settings.language;
|
languageChoice = Settings.language;
|
||||||
ocarinaChoice = Settings.ocarina;
|
ocarinaChoice = Settings.ocarina;
|
||||||
viChoice = Settings.vpatch;
|
viChoice = Settings.vpatch;
|
||||||
|
fix002 = off;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
u8 errorfixer002 = 0;
|
||||||
|
switch(fix002)
|
||||||
|
{
|
||||||
|
case on:
|
||||||
|
errorfixer002 = 1;
|
||||||
|
break;
|
||||||
|
case off:
|
||||||
|
errorfixer002 = 0;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
switch(languageChoice)
|
switch(languageChoice)
|
||||||
{
|
{
|
||||||
@ -2405,7 +2046,7 @@ int MainMenu(int menu)
|
|||||||
}
|
}
|
||||||
|
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
ret = Disc_WiiBoot(videoselected, cheat, vipatch, Settings.patchcountrystrings);
|
ret = Disc_WiiBoot(videoselected, cheat, vipatch, Settings.patchcountrystrings, errorfixer002);
|
||||||
if (ret < 0) {
|
if (ret < 0) {
|
||||||
Sys_LoadMenu();
|
Sys_LoadMenu();
|
||||||
}
|
}
|
||||||
|
@ -27,8 +27,7 @@ enum
|
|||||||
MENU_FORMAT,
|
MENU_FORMAT,
|
||||||
MENU_INSTALL,
|
MENU_INSTALL,
|
||||||
MENU_CHECK,
|
MENU_CHECK,
|
||||||
MENU_GAME_SETTINGS,
|
MENU_GAME_SETTINGS
|
||||||
MENU_OGG
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user