Sega Controller Houses Auto-launch Emulator

[Joe’s] wife grew up playing Sega games and he wanted to help her unwind by reliving the experience. Since the work computer she uses when travelling isn’t a good place to install emulators he built this plug-and-play emulator inside of a Sega controller.

We’ve seen this type of thing a few times before (even with XBMC in a SNES controller) but there is one thing we hadn’t thought of lately. Newer versions of Windows have auto-launch disabled for USB drives. But [Joe] knew that there were still some USB sticks that manage to auto-launch anyway so he researched how those work. It turns out that they have two partitions, one is formatted as a CDFS which looks like a CD-ROM to Windows and allows auto-launch. He used this method of partitioning a USB stick, storing the ROMs on the mass storage partition and the emulator and the CDFS partition. To finish the hack he cracked open the controller and found room for a USB hub and the PCB from the thumb drive.

If you still have cartridges lying around you can pull the ROMs off of them over USB.

17 thoughts on “Sega Controller Houses Auto-launch Emulator

      1. That’s not a hack.

        He’s using something commonly referred to as a “mass production tool”. This is basically a utility designed to batch-format and initialize USB flash storage devices at the factory. It will download the controller firmware to the USB MCU on the other side (yes, USB keys contain a small CPU, some RAM, and some ROM), then have the USB MCU format the flash medium in ways that are impossible to achieve using your computer (via the USB mass storage protocol).

        Among many, many other things, one of the neat tricks most USB flash drive controllers are capable of is enumerating as multiple devices- usually a read only CDROM or a floppy drive, as well as a read/write hard disk where your data goes. SanDisk uses this technology for their “U3” capable drives, but really just about every modern day USB flash drive supports the same feature. You feed the mass production tool an ISO along with some formatting information about the new layout of the flash area, and it goes off and formats the key through the USB MCU then sets a bunch of internal parameters stored in the MCU’s EEPROM.

        There’s a lot of other stuff you can tweak in there too- VIDs and PIDs, you can flip the removable bit (properly), change the LED blinking pattern when in use, etc. You do have to be careful though because the mass production tools are CHIPSET SPECIFIC… And a lot of them are poorly written and full of engrish, so using the wrong tool on the wrong chipset can brick your UFD permanently (as in, “no longer enumerates at all”). Contrary to belief, Corsair doesn’t manufacture UFDs. They use controllers made by Silicon Motion or any other silicon manufacturing company, and some common Flash NAND chip that the controller happens to support. So when you’re trying to track down a mass production tool on the internet, what you’re really trying to do is figure out who made the controller **inside** your UFD, and what MPT that specific controller revision works with.

        TLDR; it’s not a hack, it’s just hidden functionality. Manufacture utilities can unlock this, but be warned, the tool he lists in his article PROBABLY WON’T WORK with **your** specific key as the tool is specific to the chips inside your USB key. If you try to use the wrong key with the wrong chipset, you’ll brick your flash drive.

  1. “Newer versions of Windows have auto-launch disabled for USB drives. But [Joe] knew that there were still some USB sticks that manage to auto-launch anyway so he researched how those work. It turns out that they have two partitions, one is formatted as a CDFS which looks like a CD-ROM to Windows and allows auto-launch. He used this method of partitioning a USB stick, storing the ROMs on the mass storage partition and the emulator and the CDFS partition.”

    How to disable that on Windows 7?

    1. Start -> Control Panel -> AutoPlay

      There’s a tick box right at the top to enable or disable AutoPlay entirely, or you can individually set different actions for different media.

  2. Wouldn’t it be better to give her a hacked Xbox and run the Sega emulator from there on an old tube TV? That’s the best experience you can get. In fact I think there was a Sega controller -> Xbox hack shown here a few years ago.

    1. “Since the work computer she uses when travelling isn’t a good place to install emulators he built this plug-and-play emulator inside of a Sega controller.”

      I’ve not seen many people travel for business carrying an xbox and a massive tube TV with them………….

  3. I don’t get this: “the work computer she uses when travelling isn’t a good place to install emulators”, so his solution is to launch an emulator save on a USB drive on the very same work computer? How does that make it okay?

Leave a Reply to gustibusCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.