diff --git a/hbc/meta.xml b/hbc/meta.xml
index 3341f01..69ad9ef 100644
--- a/hbc/meta.xml
+++ b/hbc/meta.xml
@@ -2,8 +2,8 @@
Snes9x GX
Tantric
- 4.2.1
- 20100714
+ 4.2.2
+ 20100720
Super Nintendo Emulator
A Super Nintendo Emulator for Wii
diff --git a/readme.txt b/readme.txt
index b5b9267..a5264f0 100644
--- a/readme.txt
+++ b/readme.txt
@@ -10,7 +10,7 @@
ญ
ืญญญญ ญญญญญญญญญญ ญญญญญญญญ-ญญ-ฌ
-|0Oื๘oท Snes9x GX 4.2.1 ทo๘ืO0|
+|0Oื๘oท Snes9x GX 4.2.2 ทo๘ืO0|
| http://code.google.com/p/snes9x-gx |
| (Under GPL License) |
`จจจจจจ จจจจจจจจจจจจจจจจ จจจจจจจจจจจจจจจ จจจจจจจจจจจจจจจจจจจจ จจจจจจจจจจจจจ'
@@ -43,6 +43,11 @@ Wii homebrew is WiiBrew (www.wiibrew.org).
| UPDATE HISTORY |
-- - -- - -- -
+[4.2.2 - July 20, 2010]
+
+* Reverted USB2 changes
+* Fixed return-to-menu crash with Filtered mode
+
[4.2.1 - July 14, 2010]
* Improved audio timing
diff --git a/source/snes9xgx.cpp b/source/snes9xgx.cpp
index bea449f..71c495c 100644
--- a/source/snes9xgx.cpp
+++ b/source/snes9xgx.cpp
@@ -252,31 +252,6 @@ static bool FindIOS(u32 ios)
free(titles);
return false;
}
-
-#define ROUNDDOWN32(v) (((u32)(v)-0x1f)&~0x1f)
-
-static bool USBLANDetected()
-{
- u8 dummy;
- u8 i;
- u16 vid, pid;
-
- USB_Initialize();
- u8 *buffer = (u8*)ROUNDDOWN32(((u32)SYS_GetArena2Hi() - (32*1024)));
- memset(buffer, 0, 8 << 3);
-
- if(USB_GetDeviceList("/dev/usb/oh0", buffer, 8, 0, &dummy) < 0)
- return false;
-
- for(i = 0; i < 8; i++)
- {
- memcpy(&vid, (buffer + (i << 3) + 4), 2);
- memcpy(&pid, (buffer + (i << 3) + 6), 2);
- if( (vid == 0x0b95) && (pid == 0x7720))
- return true;
- }
- return false;
-}
#endif
/****************************************************************************
* USB Gecko Debugging
@@ -343,8 +318,6 @@ main(int argc, char *argv[])
#endif
#ifdef HW_RVL
- bool usblan = USBLANDetected();
-
// try to load IOS 202
if(FindIOS(202))
IOS_ReloadIOS(202);
@@ -354,33 +327,11 @@ main(int argc, char *argv[])
if(IOS_GetVersion() == 202)
{
// enable DVD and USB2
+ DI_LoadDVDX(false);
+ DI_Init();
+
if(mload_init() >= 0 && load_ehci_module())
- {
- int mode = 3;
-
- if(usblan)
- {
- int usblanport = GetUSB2LanPort();
-
- if(usblanport >= 0)
- {
- if(usblanport == 1)
- mode = 1;
- else
- mode = 2;
-
- USB2Storage_Close();
- mload_close();
- IOS_ReloadIOS(202);
- mload_init();
- load_ehci_module();
- }
- }
- SetUSB2Mode(mode);
USB2Enable(true);
- DI_LoadDVDX(false);
- DI_Init();
- }
}
#endif
diff --git a/source/snes9xgx.h b/source/snes9xgx.h
index 01fd67a..e4c57be 100644
--- a/source/snes9xgx.h
+++ b/source/snes9xgx.h
@@ -20,7 +20,7 @@
#include "filelist.h"
#define APPNAME "Snes9x GX"
-#define APPVERSION "4.2.1"
+#define APPVERSION "4.2.2"
#define APPFOLDER "snes9xgx"
#define PREF_FILE_NAME "settings.xml"
diff --git a/source/utils/ehcmodule.elf.o b/source/utils/ehcmodule.elf.o
index 1a49e35..f88d988 100644
Binary files a/source/utils/ehcmodule.elf.o and b/source/utils/ehcmodule.elf.o differ
diff --git a/source/utils/mload.c b/source/utils/mload.c
index ce75594..19864d7 100644
--- a/source/utils/mload.c
+++ b/source/utils/mload.c
@@ -135,9 +135,6 @@ int mload_init()
mloadVersion = IOS_IoctlvFormat(hid, mload_fd, MLOAD_GET_MLOAD_VERSION, ":");
iosBase = IOS_IoctlvFormat(hid, mload_fd, MLOAD_GET_IOS_BASE, ":");
- if(mloadVersion < 0x52) // unsupported IOS202
- return mload_close();
-
return mload_fd;
}
@@ -257,7 +254,7 @@ bool load_ehci_module()
if(mload_run_thread(elf.start, elf.stack, elf.size_stack, elf.prio) < 0)
return false;
-
+
usleep(5000);
return true;
}
diff --git a/update.xml b/update.xml
index a46949e..b6f7438 100644
--- a/update.xml
+++ b/update.xml
@@ -1,4 +1,4 @@
-
-
+
+