-Fixed --skipIOS argument when a non-existant or invalid IOS number was passed

-Fixed --forceNoAHBPROT= argument in the meta.xml file (extra = sign)
-Fixed the report from spilling an extra line past the frame
-Moved the DM/DML time stamps to after detection.
This commit is contained in:
Joostinonline 2014-08-05 21:34:08 +00:00
parent 5ffc019e0d
commit fede10cef6
4 changed files with 134 additions and 132 deletions

View File

@ -56,7 +56,7 @@ Version 2.1.0 HacksDen Edition
See SysCheck at Wiibrew.com for changes in other versions.</long_description> See SysCheck at Wiibrew.com for changes in other versions.</long_description>
<arguments> <arguments>
<arg>--debug=false</arg> <arg>--debug=false</arg>
<arg>--forceNoAHBPROT==false</arg> <arg>--forceNoAHBPROT=false</arg>
</arguments> </arguments>
<no_ios_reload/> <no_ios_reload/>

View File

@ -220,7 +220,7 @@ int printReport(char report[200][100], int firstLine, bool completeReport) {
GRRLIB_DrawImg(0, 0, tex_background_png, 0, 1, 1, HEX_WHITE); GRRLIB_DrawImg(0, 0, tex_background_png, 0, 1, 1, HEX_WHITE);
GRRLIB_DrawImg(36, 40, tex_window_png, 0, 1, 1, HEX_WHITE); GRRLIB_DrawImg(36, 40, tex_window_png, 0, 1, 1, HEX_WHITE);
for (j = 0; j < BLANK + 1; j++) { for (j = 0; j < 15; j++) {
GRRLIB_PrintfTTF(80, 98+j*17, myFont, report[firstLine+j], 12, HEX_BLACK); GRRLIB_PrintfTTF(80, 98+j*17, myFont, report[firstLine+j], 12, HEX_BLACK);
} }
if (completeReport) { if (completeReport) {

View File

@ -511,6 +511,15 @@ end:
s32 get_miosinfo(char *str) s32 get_miosinfo(char *str)
{
u32 size = 0;
u32 i = 0;
s32 ret = 0;
u8 *appfile = NULL;
char buffer[20];
ret = read_file_from_nand("/title/00000001/00000101/content/0000000c.app", &appfile, &size);
if(ret >= 0 && appfile)
{ {
struct tm time; struct tm time;
@ -638,15 +647,6 @@ s32 get_miosinfo(char *str)
strptime("Jul 2 2014 10:31:06", "%b %d %Y %H:%M:%S", &time); strptime("Jul 2 2014 10:31:06", "%b %d %Y %H:%M:%S", &time);
const time_t dml_2_11_time = mktime(&time); const time_t dml_2_11_time = mktime(&time);
u32 size = 0;
u32 i = 0;
s32 ret = 0;
u8 *appfile = NULL;
char buffer[20];
ret = read_file_from_nand("/title/00000001/00000101/content/0000000c.app", &appfile, &size);
if(ret >= 0 && appfile)
{
for(i = 0; i < size; ++i) for(i = 0; i < size; ++i)
{ {
if(DM_INSTALLED) //DIOS MIOS if(DM_INSTALLED) //DIOS MIOS

View File

@ -273,17 +273,18 @@ int main(int argc, char **argv)
SystemInfo.countIOS++; SystemInfo.countIOS++;
} }
// Not the most efficient way to remove argument-skipped IOS's, but it works.
while (arguments.skipIOScnt > 0) { while (arguments.skipIOScnt > 0) {
for (i = nbTitles; i--;) { for (i = nbTitles; i--;) {
titleID = titles[i] & 0xFFFFFFFF; titleID = titles[i] & 0xFFFFFFFF;
if(titleID == arguments.skipIOSlist[arguments.skipIOScnt - 1]) { if(arguments.skipIOSlist[arguments.skipIOScnt - 1] > 0 && titleID == arguments.skipIOSlist[arguments.skipIOScnt - 1]) {
logfile("Skipped IOS %i, titles[%i] = %i\r\n", arguments.skipIOSlist[arguments.skipIOScnt - 1], i, titles[i]); logfile("Skipped IOS %i, titles[%i] = %i\r\n", arguments.skipIOSlist[arguments.skipIOScnt - 1], i, titles[i]);
titles[i] = 0; titles[i] = 0;
SystemInfo.countIOS--; SystemInfo.countIOS--;
arguments.skipIOScnt--;
break; break;
} }
} }
arguments.skipIOScnt--;
} }
CheckTime(current_time, 600); CheckTime(current_time, 600);
@ -456,7 +457,7 @@ int main(int argc, char **argv)
// Try to identify the cIOS by the info put in by the installer/ModMii // Try to identify the cIOS by the info put in by the installer/ModMii
sysMenuInfoContent = *(u8 *)((u32)iosTMDBuffer+0x1E7); sysMenuInfoContent = *(u8 *)((u32)iosTMDBuffer+0x1E7);
sprintf(filepath, "/title/%08x/%08x/content/%08x.app", 0x00000001, 2, sysMenuInfoContent); sprintf(filepath, "/title/00000001/00000002/content/%08x.app", sysMenuInfoContent);
gprintf(filepath); gprintf(filepath);
ret = read_file_from_nand(filepath, &buffer, &filesize); ret = read_file_from_nand(filepath, &buffer, &filesize);
@ -481,8 +482,8 @@ int main(int argc, char **argv)
CheckTime(current_time, 600); CheckTime(current_time, 600);
// Get the certificates from the NAND // Get the certificates from the NAND
UpdateTime();
printLoading(MSG_GetCertificates); printLoading(MSG_GetCertificates);
UpdateTime();
if (!GetCertificates()) { if (!GetCertificates()) {
printError(ERR_GetCertificates); printError(ERR_GetCertificates);
sleep(5); sleep(5);
@ -502,6 +503,7 @@ int main(int argc, char **argv)
bool completeReport = true; bool completeReport = true;
while (difftime (time(NULL),starttime) < 15) { while (difftime (time(NULL),starttime) < 15) {
wpressed = DetectInput(DI_BUTTONS_HELD); wpressed = DetectInput(DI_BUTTONS_HELD);
usleep(50000); usleep(50000);