diff --git a/source/menu.cpp b/source/menu.cpp index 4e62fb4b..a4566901 100644 --- a/source/menu.cpp +++ b/source/menu.cpp @@ -1970,7 +1970,7 @@ int MainMenu(int menu) break; } - ret = Disc_WiiBoot(videoselected, cheat, vipatch, countrystrings, errorfixer002, alternatedol, alternatedoloffset+1); + ret = Disc_WiiBoot(videoselected, cheat, vipatch, countrystrings, errorfixer002, alternatedol, alternatedoloffset); if (ret < 0) { Sys_LoadMenu(); } diff --git a/source/prompts/DiscBrowser.cpp b/source/prompts/DiscBrowser.cpp index 7b493684..b885d1a0 100644 --- a/source/prompts/DiscBrowser.cpp +++ b/source/prompts/DiscBrowser.cpp @@ -40,25 +40,25 @@ int DiscBrowse(struct discHdr * header) WindowPrompt(tr("ERROR:"), tr("Could not set USB."), tr("OK")); return ret; } - +WindowPrompt(tr("ERROR:"), tr("Could not set USB."), tr("OK")); ret = Disc_Open(); if(ret < 0) { WindowPrompt(tr("ERROR:"), tr("Could not open disc."), tr("OK")); return ret; } - +WindowPrompt(tr("ERROR:"), tr("Could not open disc."), tr("OK")); ret = __Disc_FindPartition(&offset); if (ret < 0) { WindowPrompt(tr("ERROR:"), tr("Could not find a WBFS partition."), tr("OK")); return ret; } - +WindowPrompt(tr("ERROR:"), tr("Could not find a WBFS partition."), tr("OK")); ret = WDVD_OpenPartition(offset); if (ret < 0) { WindowPrompt(tr("ERROR:"), tr("Could not open WBFS partition"), tr("OK")); return ret; } - +WindowPrompt(tr("ERROR:"), tr("Could not open WBFS partition"), tr("OK")); int *buffer = (int*)memalign(32, 0x20); if (buffer == NULL) @@ -66,12 +66,13 @@ int DiscBrowse(struct discHdr * header) WindowPrompt(tr("ERROR:"), tr("Not enough free memory."), tr("OK")); return -1; } - +WindowPrompt(tr("ERROR:"), tr("Not enough free memory."), tr("OK")); ret = WDVD_Read(buffer, 0x20, 0x420); if (ret < 0) { WindowPrompt(tr("ERROR:"), tr("Could not read the disc."), tr("OK")); return ret; } +WindowPrompt(tr("ERROR:"), tr("Could not read the disc."), tr("OK")); void *fstbuffer = memalign(32, buffer[2]*4); FST_ENTRY *fst = (FST_ENTRY *)fstbuffer; @@ -81,7 +82,7 @@ int DiscBrowse(struct discHdr * header) free(buffer); return -1; } - +WindowPrompt(tr("ERROR:"), tr("Not enough free memory."), tr("OK")); ret = WDVD_Read(fstbuffer, buffer[2]*4, buffer[1]*4); if (ret < 0) { @@ -90,7 +91,7 @@ int DiscBrowse(struct discHdr * header) free(fstbuffer); return ret; } - +WindowPrompt(tr("ERROR:"), tr("Could not read the disc."), tr("OK")); free(buffer); WDVD_Reset(); @@ -104,8 +105,17 @@ int DiscBrowse(struct discHdr * header) customOptionList options3(discfilecount); for (u32 i = 0; i < discfilecount; i++) { - options3.SetName(i, "%i", i); - options3.SetValue(i, fstfiles(fst, i)); + + int len = (strlen(fstfiles(fst, i))); + + if (fstfiles(fst, i)[len-4] =='.' && + fstfiles(fst, i)[len-3] =='d' && + fstfiles(fst, i)[len-2] =='o' && + fstfiles(fst, i)[len-1] =='l') + { + options3.SetName(i, "%i", i); + options3.SetValue(i, fstfiles(fst, i)); + } dolfilecount++; }