At the end of 2005 a hacking group known as PI released a copy of the demo disk found inside of the Xbox 360 kiosks. PI has been cranking out a lot of these game ISO files even though there isn't a way to play them yet. The thing that makes the kiosk disc special is that Microsoft didn't enable many of the security features found on regular game discs. Granted, the actual executable files are still cryptographically signed, but you can manipulate many of the other unsigned files on the disc. The disc doesn't have a strict media flag either, so you can burn it to a CD/DVD and it will play in any Xbox 360. The Xbox-Scene community has been investigating booting your own Flash files using the disc which is what we'll be showing you today. The final result will be a disc that is playable on any Xbox 360.
Before we get started we need to talk about the legality of this how-to. There is really no way to legally posses the files we are going to be working with. The majority of safe guards placed on the Xbox 360 are designed to prevent game piracy. It is doubtful that anything we will be demonstrating today will lead to anybody booting pirated games on the 360. We do feel that this how-to will open up the Xbox 360 to all of the Flash developers out there and hopefully produce some interesting homebrew games.
The first thing you are going to need to do is find a copy of the kiosk disc. We can't tell you where to get it , but check your favorite BitTorrent tracker and you'll find the 4.1GB release (it is labeled PAL, but works fine on US boxes). It has been out for a month so it shouldn't be encumbered by some obnoxious private tracker. To boot Flash files you don't even need the entire disk. So your best bet is to look for just the Hexic files from the disc, which are only 60MB.
The "default.XEX" file is the one executed when the disc is launched. Looking around you will find all of the demo trailers in the WMV format and audio as WMA files. The menu text is stored as XML. There are no file checks on the disk so you can delete files from the DVD image and create an image small enough to be burned onto a CDR.
To create a bootable Flash disc you need three files: default.xex, Splash.swf, and HexicDeluxe.swf. You can open the HexicDeluxe.swf in your web browser and see that it is just a normal Flash game. It will be running incredibly slow though. You can (and should) replace the Splash and HexicDeluxe files with your own. The default.xex file is a flash player written specifically for Hexic. When the Xbox boots it starts the default.xex file. default.xex displays the Splash.swf file while it loads HexicDeluxe.swf in the background. Once it is loaded the splash screen tells you to "press A to continue". default.xex is also responsible for playing the background music, but doesn't mind if you don't provide any.
The development of homebrew flash for the Xbox 360 started with a thread by illictx: Launching Swf Files Via Kiosk Disk, Attempting... Developments are now being documented in the Flash for Xbox 360 Wiki. To try out hombrew you need to first grab a replacement splash screen. We're using one by forum member Gloei since it prompts you when loading is complete. It looks like this:
If you want to develop your own Flash files there are some issues you will run into. Since default.xex is a custom Flash player designed for Hexic, it only supports features used in Hexic. That means it only supports one controller and not even all of the buttons. It also doesn't support sustained button presses since it sends a button release signal immediately after the button press. There are several common functions that aren't supported. Your files need to be compatible with Flash 6, only use ActionScript 1, and use Zlib compression. The best place to find out about what functions you can use is the wiki. The folks in the forum thread on Xbox-scene.com will be happy to help as well.
We hope this how-to demonstrated how easy it is to run your own Flash games and animations on the Xbox 360. The fact that only one file is required from the demo disk means it is incredibly simple for almost any Flash developer to try this out for themselves. Hopefully the Flash community will get behind this and we'll get some incredible demos taking full advantage of the 360's power (as the slow browser performance of Hexic shows). Of course in a perfect world, Microsoft would release a completely compatible and full featured Flash player for homebrew developers, eventually marketing the best examples on Xbox Live Arcade.