mirror of
https://github.com/wiidev/usbloadergx.git
synced 2024-11-18 09:19:17 +01:00
* Added new DIOS MIOS v2.2 update2 NoDisc setting.
* Fixed Devolution config version number and removed forced Wifi logging setting
This commit is contained in:
parent
4d59ed63bf
commit
6ed3f4e59f
@ -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>3.0 r1197</version>
|
<version>3.0 r1198</version>
|
||||||
<release_date>201207191950</release_date>
|
<release_date>201207201652</release_date>
|
||||||
<!-- // remove this line to enable arguments
|
<!-- // remove this line to enable arguments
|
||||||
<arguments>
|
<arguments>
|
||||||
<arg>--ios=250</arg>
|
<arg>--ios=250</arg>
|
||||||
|
@ -20,8 +20,8 @@
|
|||||||
#define LAUNCH_DEVO() ((void(*)(void))loader_bin)()
|
#define LAUNCH_DEVO() ((void(*)(void))loader_bin)()
|
||||||
|
|
||||||
#define DEVO_SIG 0x3EF9DB23
|
#define DEVO_SIG 0x3EF9DB23
|
||||||
#define DEVO_VERSION 0x00000100
|
#define DEVO_CONFIG_VERSION 0x0110
|
||||||
#define DEVO_WIFILOG 0x00000001
|
#define DEVO_WIFILOG 0x00000001 // added in Devo config version 0x0110
|
||||||
|
|
||||||
// Devolution
|
// Devolution
|
||||||
typedef struct _DEVO_CFG
|
typedef struct _DEVO_CFG
|
||||||
@ -32,7 +32,7 @@ typedef struct _DEVO_CFG
|
|||||||
u32 memcard_cluster;
|
u32 memcard_cluster;
|
||||||
u32 disc1_cluster;
|
u32 disc1_cluster;
|
||||||
u32 disc2_cluster;
|
u32 disc2_cluster;
|
||||||
u32 options;
|
u32 options; // added in Devo config version 0x0110
|
||||||
} DEVO_CGF;
|
} DEVO_CGF;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -38,8 +38,9 @@ enum DMLConfig
|
|||||||
DML_CFG_NODISC = (1<<9), // unused since DML v1.0, removed in v2.1
|
DML_CFG_NODISC = (1<<9), // unused since DML v1.0, removed in v2.1
|
||||||
DML_CFG_FORCE_WIDE = (1<<9), // DM v2.1+, Config v02
|
DML_CFG_FORCE_WIDE = (1<<9), // DM v2.1+, Config v02
|
||||||
DML_CFG_BOOT_DISC = (1<<10),
|
DML_CFG_BOOT_DISC = (1<<10),
|
||||||
// DML_CFG_BOOT_DOL = (1<<11), // unused since DML v1.0, removed in v2.1
|
// DML_CFG_BOOT_DOL = (1<<11), // unused since DML v1.0, removed in v2.1
|
||||||
DML_CFG_BOOT_DISC2 = (1<<11) // DM v2.1+, Config v02
|
DML_CFG_BOOT_DISC2 = (1<<11), // DM v2.1+, Config v02
|
||||||
|
DML_CFG_NODISC2 = (1<<12) // added back in DM v2.2 update2 (r20)
|
||||||
};
|
};
|
||||||
|
|
||||||
enum DMLVideoModes
|
enum DMLVideoModes
|
||||||
|
@ -144,13 +144,13 @@ int GameBooter::BootGCMode(struct discHdr *gameHdr)
|
|||||||
// setup Devolution
|
// setup Devolution
|
||||||
memset(DEVO_CONFIG, 0, sizeof(*DEVO_CONFIG));
|
memset(DEVO_CONFIG, 0, sizeof(*DEVO_CONFIG));
|
||||||
DEVO_CONFIG->signature = DEVO_SIG;
|
DEVO_CONFIG->signature = DEVO_SIG;
|
||||||
DEVO_CONFIG->version = DEVO_VERSION;
|
DEVO_CONFIG->version = DEVO_CONFIG_VERSION;
|
||||||
DEVO_CONFIG->device_signature = st1.st_dev;
|
DEVO_CONFIG->device_signature = st1.st_dev;
|
||||||
DEVO_CONFIG->disc1_cluster = st1.st_ino; // set starting cluster for first disc ISO file
|
DEVO_CONFIG->disc1_cluster = st1.st_ino; // set starting cluster for first disc ISO file
|
||||||
//DEVO_CONFIG->disc2_cluster = st2.st_ino; // set starting cluster for second disc ISO file
|
//DEVO_CONFIG->disc2_cluster = st2.st_ino; // set starting cluster for second disc ISO file
|
||||||
|
|
||||||
// use wifi logging if USB gecko is not found in slot B
|
// use wifi logging if USB gecko is not found in slot B
|
||||||
DEVO_CONFIG->options |= DEVO_WIFILOG;
|
// DEVO_CONFIG->options |= DEVO_WIFILOG; // removed on Tueidj request
|
||||||
|
|
||||||
// check memory card
|
// check memory card
|
||||||
if(devoMCEmulation == DEVO_MC_OFF)
|
if(devoMCEmulation == DEVO_MC_OFF)
|
||||||
@ -289,12 +289,9 @@ int GameBooter::BootGCMode(struct discHdr *gameHdr)
|
|||||||
WindowPrompt(tr("Warning:"), tr("The Force Widescreen setting requires DIOS MIOS v2.2 or more. This setting will be ignored."), tr("OK"));
|
WindowPrompt(tr("Warning:"), tr("The Force Widescreen setting requires DIOS MIOS v2.2 or more. This setting will be ignored."), tr("OK"));
|
||||||
dmlWidescreenChoice = OFF;
|
dmlWidescreenChoice = OFF;
|
||||||
}
|
}
|
||||||
if(dmlNoDiscChoice) // DML NoDisc setting : removed in DM 1.0, config v1. Keeping it as it can be used as ForceWidescreen in DM v2.1 with cfg v1
|
if(dmlNoDiscChoice && dmlConfigVersionChoice < 2) // DML NoDisc setting : removed in DM 1.0, config v1. Used as ForceWidescreen in DM v2.1 with cfg v1. Added back in DM 2.2 update2 Config v2
|
||||||
{
|
{
|
||||||
WindowPrompt(tr("Warning:"), tr("The No Disc setting is not used anymore by DIOS MIOS (Lite). Now you need to place a disc in your drive."), tr("OK"));
|
WindowPrompt(tr("Warning:"), tr("The No Disc setting is not used anymore by DIOS MIOS (Lite). Now you need to place a disc in your drive."), tr("OK"));
|
||||||
|
|
||||||
if(dmlConfigVersionChoice > 1) // in config v1 it acts as ForceWidescreen, in config v2 it's disabled.
|
|
||||||
dmlNoDiscChoice = OFF;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const char *gcPath = strchr(RealPath, '/');
|
const char *gcPath = strchr(RealPath, '/');
|
||||||
@ -329,7 +326,12 @@ int GameBooter::BootGCMode(struct discHdr *gameHdr)
|
|||||||
strncpy(dml_config->GamePath, gamePath, sizeof(dml_config->GamePath));
|
strncpy(dml_config->GamePath, gamePath, sizeof(dml_config->GamePath));
|
||||||
// use no disc patch
|
// use no disc patch
|
||||||
if(dmlNoDiscChoice)
|
if(dmlNoDiscChoice)
|
||||||
dml_config->Config |= DML_CFG_NODISC;
|
{
|
||||||
|
if(dmlConfigVersionChoice < 2)
|
||||||
|
dml_config->Config |= DML_CFG_NODISC; // used by v2.1 as ForceWidescreen setting
|
||||||
|
else
|
||||||
|
dml_config->Config |= DML_CFG_NODISC2; // used by v2.2 update2+ as NoDisc setting
|
||||||
|
}
|
||||||
|
|
||||||
gprintf("DML: Loading game %s\n", dml_config->GamePath);
|
gprintf("DML: Loading game %s\n", dml_config->GamePath);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user