added custom path for replacement dol.

added a few entries into language.h & cpp
made  title tooltips on the gamewall transparent.
made a readmii file.
This commit is contained in:
giantpune 2009-06-16 13:42:52 +00:00
parent 22ca798b5e
commit a0c87cc1ff
9 changed files with 90 additions and 29 deletions

BIN
readMii.doc Normal file

Binary file not shown.

View File

@ -74,6 +74,9 @@ snprintf(LANGUAGE.CoverDownload, sizeof(LANGUAGE.CoverDownload), "Cover Download
snprintf(LANGUAGE.CoverPath, sizeof(LANGUAGE.CoverPath), "Cover Path"); snprintf(LANGUAGE.CoverPath, sizeof(LANGUAGE.CoverPath), "Cover Path");
snprintf(LANGUAGE.CoverpathChanged, sizeof(LANGUAGE.CoverpathChanged), "Coverpath Changed"); snprintf(LANGUAGE.CoverpathChanged, sizeof(LANGUAGE.CoverpathChanged), "Coverpath Changed");
snprintf(LANGUAGE.Coverpathchange, sizeof(LANGUAGE.Coverpathchange), "Coverpath change"); snprintf(LANGUAGE.Coverpathchange, sizeof(LANGUAGE.Coverpathchange), "Coverpath change");
snprintf(LANGUAGE.DolPath, sizeof(LANGUAGE.DolPath), "Dol Path");
snprintf(LANGUAGE.DolpathChanged, sizeof(LANGUAGE.DolpathChanged), "Dolpath Changed");
snprintf(LANGUAGE.Dolpathchange, sizeof(LANGUAGE.Dolpathchange), "Dolpath change");
snprintf(LANGUAGE.Cheatcodespathchanged, sizeof(LANGUAGE.Cheatcodespathchanged), "Cheatcodes Path changed"); snprintf(LANGUAGE.Cheatcodespathchanged, sizeof(LANGUAGE.Cheatcodespathchanged), "Cheatcodes Path changed");
snprintf(LANGUAGE.Cheatcodespath, sizeof(LANGUAGE.Cheatcodespath), "Cheatcodes Path"); snprintf(LANGUAGE.Cheatcodespath, sizeof(LANGUAGE.Cheatcodespath), "Cheatcodes Path");
snprintf(LANGUAGE.count, sizeof(LANGUAGE.count), "Play Count"); snprintf(LANGUAGE.count, sizeof(LANGUAGE.count), "Play Count");
@ -186,7 +189,7 @@ 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");
snprintf(LANGUAGE.Passwordhasbeenchanged, sizeof(LANGUAGE.Passwordhasbeenchanged), "Password has been changed"); snprintf(LANGUAGE.Passwordhasbeenchanged, sizeof(LANGUAGE.Passwordhasbeenchanged), "Password has been changed");
snprintf(LANGUAGE.Passwordchange, sizeof(LANGUAGE.Passwordchange), "Password change"); snprintf(LANGUAGE.Passwordchange, sizeof(LANGUAGE.Passwordchange), "Password change");
snprintf(LANGUAGE.Plays, sizeof(LANGUAGE.Plays), "Play Count"); snprintf(LANGUAGE.Plays, sizeof(LANGUAGE.Plays), "Play Count");
snprintf(LANGUAGE.PowerofftheWii, sizeof(LANGUAGE.PowerofftheWii), "Power off the Wii"); snprintf(LANGUAGE.PowerofftheWii, sizeof(LANGUAGE.PowerofftheWii), "Power off the Wii");
snprintf(LANGUAGE.Prev, sizeof(LANGUAGE.Prev), "Prev"); snprintf(LANGUAGE.Prev, sizeof(LANGUAGE.Prev), "Prev");
@ -467,6 +470,18 @@ void language_set(char *name, char *val)
strcopy(LANGUAGE.Coverpathchange, val, sizeof(LANGUAGE.Coverpathchange)); strcopy(LANGUAGE.Coverpathchange, val, sizeof(LANGUAGE.Coverpathchange));
return; return;
} }
if (strcmp(name, "DolPath") == 0) {
strcopy(LANGUAGE.DolPath, val, sizeof(LANGUAGE.DolPath));
return;
}
if (strcmp(name, "DolpathChanged") == 0) {
strcopy(LANGUAGE.DolpathChanged, val, sizeof(LANGUAGE.DolpathChanged));
return;
}
if (strcmp(name, "Dolpathchange") == 0) {
strcopy(LANGUAGE.Dolpathchange, val, sizeof(LANGUAGE.Dolpathchange));
return;
}
if (strcmp(name, "Cheatcodespath") == 0) { if (strcmp(name, "Cheatcodespath") == 0) {
strcopy(LANGUAGE.Cheatcodespath, val, sizeof(LANGUAGE.Cheatcodespath)); strcopy(LANGUAGE.Cheatcodespath, val, sizeof(LANGUAGE.Cheatcodespath));
return; return;
@ -919,10 +934,10 @@ void language_set(char *name, char *val)
strcopy(LANGUAGE.Passwordchange, val, sizeof(LANGUAGE.Passwordchange)); strcopy(LANGUAGE.Passwordchange, val, sizeof(LANGUAGE.Passwordchange));
return; return;
} }
if (strcmp(name, "Plays") == 0) { if (strcmp(name, "Plays") == 0) {
strcopy(LANGUAGE.Plays, val, sizeof(LANGUAGE.Plays)); strcopy(LANGUAGE.Plays, val, sizeof(LANGUAGE.Plays));
return; return;
} }
if (strcmp(name, "PowerofftheWii") == 0) { if (strcmp(name, "PowerofftheWii") == 0) {
strcopy(LANGUAGE.PowerofftheWii, val, sizeof(LANGUAGE.PowerofftheWii)); strcopy(LANGUAGE.PowerofftheWii, val, sizeof(LANGUAGE.PowerofftheWii));
return; return;

View File

@ -70,6 +70,9 @@ struct LANGUAGE
char CoverPath[50]; char CoverPath[50];
char CoverpathChanged[50]; char CoverpathChanged[50];
char Coverpathchange[50]; char Coverpathchange[50];
char DolPath[50];
char DolpathChanged[50];
char Dolpathchange[50];
char Cheatcodespathchanged[80]; char Cheatcodespathchanged[80];
char Cheatcodespath[80]; char Cheatcodespath[80];
char count[20]; char count[20];
@ -186,7 +189,7 @@ struct LANGUAGE
char PasswordChanged[50]; char PasswordChanged[50];
char Passwordhasbeenchanged[80]; char Passwordhasbeenchanged[80];
char Passwordchange[50]; char Passwordchange[50];
char PowerofftheWii[50]; char PowerofftheWii[50];
char Plays[20]; char Plays[20];
char Prev[50]; char Prev[50];
char PromptsButtons[50]; char PromptsButtons[50];

View File

@ -148,6 +148,7 @@ GuiGameGrid::GuiGameGrid(int w, int h, struct discHdr * l, int count, const char
titleTT = new GuiTooltip("test"); titleTT = new GuiTooltip("test");
titleTT->SetAlignment(ALIGN_LEFT, ALIGN_TOP); titleTT->SetAlignment(ALIGN_LEFT, ALIGN_TOP);
titleTT->SetPosition(-100,0); titleTT->SetPosition(-100,0);
titleTT->SetAlpha(175);
// if (Settings.wsprompt == yes) // if (Settings.wsprompt == yes)
// installBtnTT.SetWidescreen(CFG.widescreen); // installBtnTT.SetWidescreen(CFG.widescreen);
@ -1355,6 +1356,7 @@ void GuiGameGrid::Update(GuiTrigger * t)
if (selected!=selectedOld){ if (selected!=selectedOld){
delete titleTT; delete titleTT;
titleTT = new GuiTooltip(titlebuffer); titleTT = new GuiTooltip(titlebuffer);
titleTT->SetAlpha(175);
wait=0;wait1=0; wait=0;wait1=0;
} }
selectedOld=selected; selectedOld=selected;

View File

@ -1191,6 +1191,7 @@ int MenuSettings()
options2.SetName(3, "%s", LANGUAGE.Titlestxtpath); options2.SetName(3, "%s", LANGUAGE.Titlestxtpath);
options2.SetName(4, "%s", LANGUAGE.Updatepath); options2.SetName(4, "%s", LANGUAGE.Updatepath);
options2.SetName(5, "%s", LANGUAGE.Cheatcodespath); options2.SetName(5, "%s", LANGUAGE.Cheatcodespath);
options2.SetName(6, "%s", LANGUAGE.DolPath);
for(int i = 0; i <= MAXOPTIONS; i++) options2.SetValue(i, NULL); for(int i = 0; i <= MAXOPTIONS; i++) options2.SetValue(i, NULL);
w.Append(&optionBrowser2); w.Append(&optionBrowser2);
optionBrowser2.SetClickable(true); optionBrowser2.SetClickable(true);
@ -1212,6 +1213,7 @@ int MenuSettings()
options2.SetValue(3, "%s", Settings.titlestxt_path); options2.SetValue(3, "%s", Settings.titlestxt_path);
options2.SetValue(4, "%s", Settings.update_path); options2.SetValue(4, "%s", Settings.update_path);
options2.SetValue(5, "%s", Settings.Cheatcodespath); options2.SetValue(5, "%s", Settings.Cheatcodespath);
options2.SetValue(6, "%s", Settings.dolpath);
if(backBtn.GetState() == STATE_CLICKED) if(backBtn.GetState() == STATE_CLICKED)
{ {
@ -1438,6 +1440,33 @@ int MenuSettings()
else else
WindowPrompt(0,LANGUAGE.Consoleshouldbeunlockedtomodifyit,LANGUAGE.ok,0,0,0); WindowPrompt(0,LANGUAGE.Consoleshouldbeunlockedtomodifyit,LANGUAGE.ok,0,0,0);
break; break;
case 6:
if ( Settings.godmode == 1)
{
w.Remove(&optionBrowser2);
w.Remove(&backBtn);
char entered[43] = "";
strncpy(entered, Settings.dolpath, sizeof(entered));
int result = OnScreenKeyboard(entered,43,0);
w.Append(&optionBrowser2);
w.Append(&backBtn);
if ( result == 1 )
{
int len = (strlen(entered)-1);
if(entered[len] !='/')
strncat (entered, "/", 1);
strncpy(Settings.dolpath, entered, sizeof(Settings.dolpath));
WindowPrompt(LANGUAGE.DolpathChanged,0,LANGUAGE.ok,0,0,0);
// if(!isSdInserted()) {
if(!isInserted(bootDevice)) {
WindowPrompt(LANGUAGE.NoSDcardinserted, LANGUAGE.InsertaSDCardtosave, LANGUAGE.ok, 0,0,0);
}
}
} else {
WindowPrompt(LANGUAGE.Dolpathchange,LANGUAGE.Consoleshouldbeunlockedtomodifyit,LANGUAGE.ok,0,0,0);
}
break;
} }
} }
/** If not godmode don't let him inside **/ /** If not godmode don't let him inside **/

View File

@ -223,6 +223,7 @@ void CFG_Default(int widescreen) // -1 = non forced Mode
snprintf(Settings.oggload_path, sizeof(Settings.oggload_path), "%s/config/backgroundmusic/", bootDevice); snprintf(Settings.oggload_path, sizeof(Settings.oggload_path), "%s/config/backgroundmusic/", bootDevice);
snprintf(Settings.update_path, sizeof(Settings.update_path), "%s/apps/usbloader_gx/", bootDevice); snprintf(Settings.update_path, sizeof(Settings.update_path), "%s/apps/usbloader_gx/", bootDevice);
snprintf(Settings.Cheatcodespath, sizeof(Settings.Cheatcodespath), "%s/codes/", bootDevice); snprintf(Settings.Cheatcodespath, sizeof(Settings.Cheatcodespath), "%s/codes/", bootDevice);
snprintf(Settings.dolpath, sizeof(Settings.dolpath), "%s/", bootDevice);
sprintf(Settings.ogg_path, "notset"); sprintf(Settings.ogg_path, "notset");
//all alignments are left top here //all alignments are left top here
@ -490,6 +491,10 @@ void path_set(char *name, char *val)
strcopy(Settings.oggload_path, val, sizeof(Settings.oggload_path)); strcopy(Settings.oggload_path, val, sizeof(Settings.oggload_path));
return; return;
} }
if (strcmp(name, "dolpath") == 0) {
strcopy(Settings.dolpath, val, sizeof(Settings.dolpath));
return;
}
if (strcmp(name, "ogg_path") == 0) { if (strcmp(name, "ogg_path") == 0) {
strcopy(Settings.ogg_path, val, sizeof(Settings.ogg_path)); strcopy(Settings.ogg_path, val, sizeof(Settings.ogg_path));
return; return;
@ -1212,6 +1217,7 @@ bool cfg_save_global()// save global settings
} else { } else {
fprintf(f, "godmode = %d\n ", 0); fprintf(f, "godmode = %d\n ", 0);
} }
fprintf(f, "dolpath = %s\n ", Settings.dolpath);
fprintf(f, "ogg_path = %s\n ", Settings.ogg_path); fprintf(f, "ogg_path = %s\n ", Settings.ogg_path);
fprintf(f, "wiilight = %d\n ", Settings.wiilight); fprintf(f, "wiilight = %d\n ", Settings.wiilight);
fprintf(f, "gameDisplay = %d\n ", Settings.gameDisplay); fprintf(f, "gameDisplay = %d\n ", Settings.gameDisplay);

View File

@ -334,6 +334,7 @@ struct SSettings {
char languagefiles_path[100]; char languagefiles_path[100];
char oggload_path[100]; char oggload_path[100];
char ogg_path[150]; char ogg_path[150];
char dolpath[150];
char update_path[150]; char update_path[150];
char Cheatcodespath[100]; char Cheatcodespath[100];
int titlesOverride; int titlesOverride;

View File

@ -9,6 +9,7 @@
#include "wpad.h" #include "wpad.h"
#include "disc.h" #include "disc.h"
#include "alternatedol.h" #include "alternatedol.h"
#include "settings/cfg.h"
/*KENOBI! - FISHEARS*/ /*KENOBI! - FISHEARS*/
extern const unsigned char kenobiwii[]; extern const unsigned char kenobiwii[];
@ -30,7 +31,7 @@ static u8 *appldr = (u8 *)0x81200000;
/* Variables */ /* Variables */
static u32 buffer[0x20] ATTRIBUTE_ALIGN(32); static u32 buffer[0x20] ATTRIBUTE_ALIGN(32);
struct SSettings Settings;
static void __noprint(const char *fmt, ...) static void __noprint(const char *fmt, ...)
{ {
@ -340,7 +341,11 @@ s32 Apploader_Run(entry_point *entry, u8 cheat, u8 videoSelected, u8 vipatch, u8
if(alternatedol == 1) { if(alternatedol == 1) {
void *dolbuffer; void *dolbuffer;
int dollen; int dollen;
char * path = "SD:/";
char * path = Settings.dolpath;
//snprintf(path, sizeof(path), Settings.dolpath);
//char * path = "SD:/";
bool dolloaded = Load_Dol(&dolbuffer, &dollen, path); bool dolloaded = Load_Dol(&dolbuffer, &dollen, path);
if(dolloaded) { if(dolloaded) {
Remove_001_Protection(dolbuffer, dollen); Remove_001_Protection(dolbuffer, dollen);

View File

@ -12,33 +12,33 @@ extern "C"
struct gameXMLinfo struct gameXMLinfo
{ {
char id[10]; char id[8];
char version[500]; char version[50];
char region[10]; char region[10];
char title[500]; char title[100];
char synopsis[2000]; char synopsis[2000];
char title_EN[500]; char title_EN[100];
char synopsis_EN[2000]; char synopsis_EN[2000];
char locales[100][500]; char locales[15][50];
char developer[500]; char developer[75];
char publisher[500]; char publisher[75];
char publisherfromid[500]; char publisherfromid[75];
char year[10]; char year[10];
char month[10]; char month[10];
char day[10]; char day[10];
char genre[500]; char genre[40];
char genresplit[100][500]; char genresplit[10][15];
char ratingtype[10]; char ratingtype[6];
char ratingvalue[10]; char ratingvalue[6];
char ratingdescriptors[100][500]; char ratingdescriptors[20][15];
char ratingvalueCERO[10]; char ratingvalueCERO[6];
char ratingvalueESRB[10]; char ratingvalueESRB[6];
char ratingvaluePEGI[10]; char ratingvaluePEGI[6];
char wifiplayers[10]; char wifiplayers[4];
char wififeatures[100][500]; char wififeatures[10][15];
char players[10]; char players[4];
char accessories[100][500]; char accessories[10][15];
char accessories_required[100][500]; char accessories_required[10][15];
char iso_crc[10]; char iso_crc[10];
char iso_md5[50]; char iso_md5[50];
char iso_sha1[50]; char iso_sha1[50];