mirror of
https://github.com/wiidev/usbloadergx.git
synced 2024-11-22 11:19:17 +01:00
USB Loader GX
*Properly sync video after flush to avoid possible green flash *Moved argument command line also to mem2 to avoid overwrite of it Forwarder V4: *Changed to new app_booter method (see WiiXplorer SVN) *Properly sync video after flush to avoid possible green flash *Centered background image and corrected aspect ratio
This commit is contained in:
parent
de2fbe11fa
commit
8a21f92f0b
@ -2,8 +2,8 @@
|
|||||||
<app version="1">
|
<app version="1">
|
||||||
<name> USB Loader GX</name>
|
<name> USB Loader GX</name>
|
||||||
<coder>USB Loader GX Team</coder>
|
<coder>USB Loader GX Team</coder>
|
||||||
<version>2.2 r1102</version>
|
<version>2.2 r1103</version>
|
||||||
<release_date>201107231948</release_date>
|
<release_date>201107241629</release_date>
|
||||||
<!-- // remove this line to enable arguments
|
<!-- // remove this line to enable arguments
|
||||||
<arguments>
|
<arguments>
|
||||||
<arg>--ios=250</arg>
|
<arg>--ios=250</arg>
|
||||||
|
@ -57,6 +57,8 @@ static int SetupARGV(struct __argv * args)
|
|||||||
bzero(args, sizeof(struct __argv));
|
bzero(args, sizeof(struct __argv));
|
||||||
args->argvMagic = ARGV_MAGIC;
|
args->argvMagic = ARGV_MAGIC;
|
||||||
|
|
||||||
|
u32 argc = 0;
|
||||||
|
u32 position = 0;
|
||||||
u32 stringlength = 1;
|
u32 stringlength = 1;
|
||||||
|
|
||||||
/** Append Arguments **/
|
/** Append Arguments **/
|
||||||
@ -66,12 +68,8 @@ static int SetupARGV(struct __argv * args)
|
|||||||
}
|
}
|
||||||
|
|
||||||
args->length = stringlength;
|
args->length = stringlength;
|
||||||
args->commandLine = (char*) malloc(args->length);
|
//! Put the argument into mem2 too, to avoid overwriting it
|
||||||
|
args.commandLine = (char *) ARGS_ADDR + sizeof(struct __argv);
|
||||||
if (!args->commandLine) return -1;
|
|
||||||
|
|
||||||
u32 argc = 0;
|
|
||||||
u32 position = 0;
|
|
||||||
|
|
||||||
/** Append Arguments **/
|
/** Append Arguments **/
|
||||||
for (u32 i = 0; i < Arguments.size(); i++)
|
for (u32 i = 0; i < Arguments.size(); i++)
|
||||||
@ -114,7 +112,7 @@ static int RunAppbooter()
|
|||||||
if (args.argvMagic == ARGV_MAGIC)
|
if (args.argvMagic == ARGV_MAGIC)
|
||||||
{
|
{
|
||||||
memmove(ARGS_ADDR, &args, sizeof(args));
|
memmove(ARGS_ADDR, &args, sizeof(args));
|
||||||
DCFlushRange(ARGS_ADDR, sizeof(args));
|
DCFlushRange(ARGS_ADDR, sizeof(args) + args.length);
|
||||||
}
|
}
|
||||||
|
|
||||||
u64 currentStub = getStubDest();
|
u64 currentStub = getStubDest();
|
||||||
|
@ -179,6 +179,9 @@ void StopGX()
|
|||||||
|
|
||||||
VIDEO_SetBlack(TRUE);
|
VIDEO_SetBlack(TRUE);
|
||||||
VIDEO_Flush();
|
VIDEO_Flush();
|
||||||
|
VIDEO_WaitVSync();
|
||||||
|
if (vmode->viTVMode & VI_NON_INTERLACE)
|
||||||
|
VIDEO_WaitVSync();
|
||||||
}
|
}
|
||||||
|
|
||||||
/****************************************************************************
|
/****************************************************************************
|
||||||
|
Loading…
Reference in New Issue
Block a user