mirror of
https://github.com/dborth/snes9xgx.git
synced 2024-11-27 21:14:21 +01:00
finalize 4.2.4
This commit is contained in:
parent
533176c7b6
commit
25e659297e
@ -3,7 +3,8 @@
|
|||||||
<name>Snes9x GX</name>
|
<name>Snes9x GX</name>
|
||||||
<coder>Tantric</coder>
|
<coder>Tantric</coder>
|
||||||
<version>4.2.3</version>
|
<version>4.2.3</version>
|
||||||
<release_date>20100722</release_date>
|
<release_date>20100814</release_date>
|
||||||
<short_description>Super Nintendo Emulator</short_description>
|
<short_description>Super Nintendo Emulator</short_description>
|
||||||
<long_description>A Super Nintendo Emulator for Wii</long_description>
|
<long_description>A Super Nintendo Emulator for Wii</long_description>
|
||||||
|
<no_ios_reload/>
|
||||||
</app>
|
</app>
|
||||||
|
@ -43,6 +43,12 @@ Wii homebrew is WiiBrew (www.wiibrew.org).
|
|||||||
| UPDATE HISTORY |
|
| UPDATE HISTORY |
|
||||||
•˜———–—––-- - —————————––––– ———–—––-- - —————————––––– ———–—––-- - ————————•
|
•˜———–—––-- - —————————––––– ———–—––-- - —————————––––– ———–—––-- - ————————•
|
||||||
|
|
||||||
|
[4.2.4 - August 14, 2010]
|
||||||
|
|
||||||
|
* IOS 202 support removed
|
||||||
|
* USB 2.0 support via IOS 58 added - requires that IOS58 be pre-installed
|
||||||
|
* DVD support via AHBPROT - requires latest HBC
|
||||||
|
|
||||||
[4.2.3 - July 22, 2010]
|
[4.2.3 - July 22, 2010]
|
||||||
|
|
||||||
* Fixed broken auto-update
|
* Fixed broken auto-update
|
||||||
|
@ -503,14 +503,21 @@ SavePrefs (bool silent)
|
|||||||
return false;
|
return false;
|
||||||
|
|
||||||
sprintf(filepath, "%s%s", pathPrefix[device], APPFOLDER);
|
sprintf(filepath, "%s%s", pathPrefix[device], APPFOLDER);
|
||||||
|
DIR_ITER *dir = diropen(filepath);
|
||||||
if (!diropen(filepath))
|
if (!dir)
|
||||||
{
|
{
|
||||||
mkdir(filepath, 0777);
|
if(mkdir(filepath, 0777) != 0)
|
||||||
|
return false;
|
||||||
sprintf(filepath, "%s%s/roms", pathPrefix[device], APPFOLDER);
|
sprintf(filepath, "%s%s/roms", pathPrefix[device], APPFOLDER);
|
||||||
mkdir(filepath, 0777);
|
if(mkdir(filepath, 0777) != 0)
|
||||||
|
return false;
|
||||||
sprintf(filepath, "%s%s/saves", pathPrefix[device], APPFOLDER);
|
sprintf(filepath, "%s%s/saves", pathPrefix[device], APPFOLDER);
|
||||||
mkdir(filepath, 0777);
|
if(mkdir(filepath, 0777) != 0)
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
dirclose(dir);
|
||||||
}
|
}
|
||||||
sprintf(filepath, "%s%s/%s", pathPrefix[device], APPFOLDER, PREF_FILE_NAME);
|
sprintf(filepath, "%s%s/%s", pathPrefix[device], APPFOLDER, PREF_FILE_NAME);
|
||||||
sprintf(prefpath, "%s%s", pathPrefix[device], APPFOLDER);
|
sprintf(prefpath, "%s%s", pathPrefix[device], APPFOLDER);
|
||||||
|
@ -214,51 +214,12 @@ void setFrameTimerMethod()
|
|||||||
* IOS Check
|
* IOS Check
|
||||||
***************************************************************************/
|
***************************************************************************/
|
||||||
#ifdef HW_RVL
|
#ifdef HW_RVL
|
||||||
static bool FindIOS(u32 ios)
|
|
||||||
{
|
|
||||||
s32 ret;
|
|
||||||
u32 n;
|
|
||||||
|
|
||||||
u64 *titles = NULL;
|
|
||||||
u32 num_titles=0;
|
|
||||||
|
|
||||||
ret = ES_GetNumTitles(&num_titles);
|
|
||||||
if (ret < 0)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
if(num_titles < 1)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
titles = (u64 *)memalign(32, num_titles * sizeof(u64) + 32);
|
|
||||||
if (!titles)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
ret = ES_GetTitles(titles, num_titles);
|
|
||||||
if (ret < 0)
|
|
||||||
{
|
|
||||||
free(titles);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
for(n=0; n < num_titles; n++)
|
|
||||||
{
|
|
||||||
if((titles[n] & 0xFFFFFFFF)==ios)
|
|
||||||
{
|
|
||||||
free(titles);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
free(titles);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool SaneIOS()
|
bool SaneIOS()
|
||||||
{
|
{
|
||||||
bool res = false;
|
bool res = false;
|
||||||
u32 num_titles=0;
|
u32 num_titles=0;
|
||||||
u32 tmd_size;
|
u32 tmd_size;
|
||||||
u32 ios = IOS_GetVersion();
|
u32 ios = IOS_GetVersion();
|
||||||
u32 tmdbuffer[MAX_SIGNED_TMD_SIZE] ATTRIBUTE_ALIGN(32);
|
|
||||||
|
|
||||||
if(ios > 200)
|
if(ios > 200)
|
||||||
return false;
|
return false;
|
||||||
@ -270,12 +231,23 @@ bool SaneIOS()
|
|||||||
return false;
|
return false;
|
||||||
|
|
||||||
u64 *titles = (u64 *)memalign(32, num_titles * sizeof(u64) + 32);
|
u64 *titles = (u64 *)memalign(32, num_titles * sizeof(u64) + 32);
|
||||||
|
|
||||||
|
if(!titles)
|
||||||
|
return false;
|
||||||
|
|
||||||
if (ES_GetTitles(titles, num_titles) < 0)
|
if (ES_GetTitles(titles, num_titles) < 0)
|
||||||
{
|
{
|
||||||
free(titles);
|
free(titles);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
u32 *tmdbuffer = (u32 *)memalign(32, MAX_SIGNED_TMD_SIZE);
|
||||||
|
|
||||||
|
if(!tmdbuffer)
|
||||||
|
{
|
||||||
|
free(titles);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
for(u32 n=0; n < num_titles; n++)
|
for(u32 n=0; n < num_titles; n++)
|
||||||
{
|
{
|
||||||
@ -297,6 +269,7 @@ bool SaneIOS()
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
free(tmdbuffer);
|
||||||
free(titles);
|
free(titles);
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
@ -368,14 +341,11 @@ main(int argc, char *argv[])
|
|||||||
#ifdef HW_RVL
|
#ifdef HW_RVL
|
||||||
// only reload IOS if AHBPROT is not enabled
|
// only reload IOS if AHBPROT is not enabled
|
||||||
u32 version = IOS_GetVersion();
|
u32 version = IOS_GetVersion();
|
||||||
|
s32 preferred = IOS_GetPreferredVersion();
|
||||||
|
|
||||||
|
if(version != 58 && preferred > 0 && version != (u32)preferred && __di_check_ahbprot() != 1)
|
||||||
|
IOS_ReloadIOS(preferred);
|
||||||
|
|
||||||
if(version != 58 && __di_check_ahbprot() != 1)
|
|
||||||
{
|
|
||||||
if(FindIOS(58))
|
|
||||||
IOS_ReloadIOS(58);
|
|
||||||
else if((version < 61 || version >= 200) && FindIOS(61))
|
|
||||||
IOS_ReloadIOS(61);
|
|
||||||
}
|
|
||||||
DI_Init();
|
DI_Init();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
#include "filelist.h"
|
#include "filelist.h"
|
||||||
|
|
||||||
#define APPNAME "Snes9x GX"
|
#define APPNAME "Snes9x GX"
|
||||||
#define APPVERSION "4.2.3"
|
#define APPVERSION "4.2.4"
|
||||||
#define APPFOLDER "snes9xgx"
|
#define APPFOLDER "snes9xgx"
|
||||||
#define PREF_FILE_NAME "settings.xml"
|
#define PREF_FILE_NAME "settings.xml"
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
<app version="4.2.3">
|
<app version="4.2.4">
|
||||||
<file url="http://snes9x-gx.googlecode.com/files/Snes9x%20GX%204.2.3.zip"></file>
|
<file url="http://snes9x-gx.googlecode.com/files/Snes9x%20GX%204.2.4.zip"></file>
|
||||||
</app>
|
</app>
|
||||||
|
Loading…
Reference in New Issue
Block a user