Archive for the 'Xbox' Category


Mac Meet Xbox: Part 3.1

Saturday, February 10th, 2007

Mac Meet Xbox

3.1, What?
Networking a Mac and an Xbox can sometimes be troublesome, occasionally involving unusual network setups, so I decided to publish this little Mac Meet Xbox addition to better cover the subject. Having in-depth, detailed knowledge of networking isn’t necessary, but some basic concepts are key in keeping Xbox Media Center updated with new builds and fresh content.

For most, there are two main ways of attaching your devices: using a router as a central network hub, and wired Ethernet using a “crossover cable.” Both ways work, and the choice is up to you depending on your existing network setup or personal preferences.

Key Networking Technologies
Before you can begin learning about the details of the specific scenarios, a little foundation knowledge will go a long way towards helping you understand how each setup works.

The most common method of getting your Xbox and Mac talking to each other is with the use of a home internet router, be it wired or wireless. To be a router, your networking hub must have some core functionality that’s found in all routers, which includes IP distribution, internet splitting, and switching. Every router or internet gateway you can find on store shelves today will offer these features and more, so you generally don’t need to worry whether or not your particular router does these things.

IP distribution, the fancy-sounding Dynamic Host Configuration Protocol, or more commonly called “DHCP” is the core of the router’s functionality, automatically providing IP addresses to connected computers. When a computer is connected and set to automatically find an IP address, it talks to the router and negotiates assignment of an IP address. When accepted, the computer can talk to others on the same network. Apple likes to call DHCP “Automatic” in many cases, and static “Manual.” They’re just friendlier-sounding words compared to the alphabet soup that is most computer terminology.

Usually, the main goal in purchasing a router is to “split” a single broadband internet connection into many connections, allowing multiple computers and devices access to the internet. The router achieves this using a technology called Network Address Translation (NAT), in which it modifies all packets destined for the internet to have the address of your cable or DSL modem, not the internal IP address of your computer assigned by its DHCP server. Outbound packets have a note made of them in its memory, so when the response packet comes back from the internet, the router looks up which computer it should go to. It’s a clever technology that allows multiple devices to masquerade as one, and your ISP is none the wiser.

Finally, the last major feature that routers inherently provide is switching. Switching is nothing more than intelligent data moving, which has the side effect of making things more secure. Networking technologies of several years ago relied on hubs, which are actual devices, compared to the more general “central location” hub referred to above. A hub was just a device that allowed multiple computers to talk to each other by means of simply shouting at everything connected. When data was sent into a hub, it went out every other port in an attempt to reach the destination computer. If the destination was within reach, it, too, would shout back, keeping all the other attached computers within “earshot.” Any computer attached but not involved in the shouting match as it were, could keep a record of both sides of the conversation, which is bad for security. Switching avoids this problem by keeping track of the port through which each computer is reachable. If necessary, more than one switch can be involved, yet each knows its role in getting the data to the destination without involving other computers. This not only cuts down on potential eavesdropping, but reduces overall network congestion — computers no longer have to wait for the shouting to stop to get their packets on the network.

Why Use a Router with XBMC?
With all the fancy features provided by a router, what applies to getting Xbox Media Center off the ground? At the very least, it gets you and your Xbox an internet connection. For your computer, the internet use is obvious, but Xbox Media Center also uses the internet to get weather, RSS news feeds, IMDB movie information, and more. Simply plugging in your Xbox and computer will get you that much by relying on the DHCP capabilities of the router.

The Router Setup
Most home routers are very straightforward — plug the device into wall power, run Ethernet from your cable or DSL modem the the Internet/WAN port, and run Ethernet to your Mac and Xbox. If your Mac has an AirPort, AirPort Extreme, or other wireless card installed and your router has antennae, you’ll also have the option of just linking up your Mac wirelessly. Both Ethernet and wireless work, and the only noticeable difference is data transfer speed. When copying a 700 MB movie to your Xbox, Ethernet speeds will blow away wireless (at least until 802.11n becomes more popular). After all the devices are connected and powered up, the router will assign them IP addresses, and everything will have internet access and the ability to communicate with each other.

You can view your Mac’s IP address by opening your Mac’s System Preferences → Network → Built-in Ethernet → TCP/IP tab, shown here:

And just like you’d expect from the Mac, that’s it! No other setup is needed. To connect to your Xbox, you’ll need to find out its IP address, which you’ll FTP into to transfer movies, music, games, or whatever media you choose to play. Boot your Xbox and simply scroll down the main list and highlight the Settings tab. On the right, the assigned IP address will be displayed:

As you can see, the IP 192.168.1.11 is given, which is the same address you would use to connect using Transmit or other preferred FTP client. Using a router makes networking your hardware very easy, especially with the DHCP capabilities that do all the legwork for you.

Why Use a Crossover Cable with XBMC?
A router is usually the most universal way to use XBMC, however there are times and setups where you may not have 24/7 internet access, a router is too far away, or you’re simply in a rush to copy a file over. A crossover cable is a relatively common piece of network cabling, which “crosses over” the “talk” and “listen” wires, making one device talk directly into the other’s listen connection, and vice versa. In doing so, the need for a router or wired switch is made unnecessary. This setup will yield the fastest overall transfer speeds, however a router really doesn’t introduce a noticeable delay.

The Crossover Cable Setup
Hooking up your Mac and Xbox via a crossover cable is as simple as plugging it into the Ethernet ports on both machines. Unlike the router setup, though, they can’t immediately communicate. Both the Mac and the Xbox are normally set to use DHCP to get an IP address. As you recall, the router provides this service, but it’s no longer in the picture, so the devices therefore can’t receive IP addresses without some additional setup. To make the configuration as easy as possible, you can set both devices to have static/manual IP addresses, as opposed to automatic.

Once connected, visit the Mac’s Network settings (again, System Preferences → Network → Built-in Ethernet → TCP/IP tab). Change the “Configure IPv4″ popup menu to Manually, and a number of fields will become editable. Fill in an IP address such as 192.168.1.10, and a Subnet Mask of 255.255.255.0. A router isn’t used in this setup, so the Router and DNS Servers fields can be left blank. Here’s a screenshot of a properly configured Ethernet interface on the Mac side of the network:

Unless you’re sharing an internet connection under the Sharing system preference pane, static is the only option for a crossover cable setup. And, quite frankly, setting all your networked devices to static IPs is probably a good choice in any arrangement if you intend to be interacting with them regularly. You’ll always know which IP to connect to in order to get to the machine you expect. (On my home network, I personally use a router with DHCP enabled, but have all my computers and Xboxes set with static IP addresses so I know where each is when I need to talk to it. Any other computers, such as my fiancée’s laptop, simply get an IP assigned via DHCP when it connects.) Hit “Apply Now” to invoke the new IP setup, and your Mac will be configured.

Next, boot up your Xbox running XBMC and open its Settings page. Highlight the Network tab if it’s not already selected, and move the selection over the Assignment up and down arrows, and choose “Manual (Static)”, as seen below:

Once “Manual (Static)” is chosen, you can move the selection down to the IP Address field and type in the desired IP address using the little onscreen number pad. Choose something reasonable (an ending number anywhere between .2 and .254), and one that’s not the static IP of your Mac. That last bit is important — the two devices absolutely must have different IPs, or else they’ll be fighting for control and probably both end up disconnected until you change one of them.

Once you’re done typing an IP, press the “E” key onscreen to Enter your settings. Step back out of the Network settings using the Back button on your controller or remote, and head back to the main XBMC menu. For good measure, reboot your Xbox using the red button in the lower-right corner, and it will start up fresh with the static IP set exactly how you typed it. You’re then ready to connect via FTP using that IP, and start loading up content, browsing around the Xbox filesystem, or updating Xbox Media Center!

I hope this networking tutorial shines some light on what seems to be a trouble spot for many a new Xbox modder. If you still have questions, feel free to post a comment using the form below.

Mac Meet Xbox: Navigation
Part 1: Why Xbox + Choosing Chips
Part 2: Cracking the Case + Installing and Flashing
Part 3: Installing XBMC
Part 3.1: Networking in Detail

Xdisc: Mac Xbox ISO Utility

Friday, December 29th, 2006

Often when dealing with Xbox content on the Mac, it’s useful to be able to create a bootable DVD, perhaps of a game or Xbox Dashboard program. While Xbox Media Center doesn’t run well from a DVD, games, utilities, and other programs are designed to be playable from a disc.

The Xbox can’t normally read computer formatted CDs like ISO 9660 and Joliet (XBMC can, though), but to make a bootable disc, it must be of the proper format. Microsoft designed a custom disc format for the Xbox in an attempt to stop piracy and secure the system, however it was quickly reverse engineered to allow for all kinds of uses. Xdisc is an Xbox disc image creator/extractor for Mac OS X, built on top of the open-source extract-xiso utility, which can be compiled for most operating systems. It can build an Xbox ISO file (disc image) from a folder on your computer, or can directly FTP into the Xbox and create an image of a folder or DVD, including games. It can also extract the contents of an Xbox ISO, producing the original files that make up the software. FTP is fully integrated into extract-xiso — and thus Xdisc — making for a great solution that can communicate directly with the Xbox to get the job done.

Xdisc Screenshot

The author, known as “trackfive,” does not have a personal site that I can find and link to, so I’m hosting a copy of Xdisc right here, so you can download away. Also included in the download are several drag-and-drop applets to quickly create and extract XISOs without launching the application and messing with settings.

1/7/2007 Update
Trackfive has also produced some Automator plugins, which allow you to Control-click (right-click) on a folder or file and create or extract the Xbox ISO in one simple step. What could be easier?

Mac Meet Xbox: Part 3

Thursday, December 21st, 2006

Mac Meet Xbox

Welcome back to the “Mac meet Xbox” series, Part 3, where we finally get to the good stuff. With the Xbox opened, modded, and ready to run beautiful, open-source, and decidedly non-Microsoft software, we’re going to format and install Xbox Media Center.

Getting XBMC
Yet again we run into the issue of legality in the Mac meet Xbox series, as Xbox Media Center is compiled from source code using Microsoft’s XDK (Xbox Development Kit). The XDK is a series of Windows programs, drivers, and Xbox software which allows developers to write and debug software for the Xbox. It is supposed to be available only to game publishers, however copies of it have leaked out onto the internet. The source code for Xbox Media Center is freely available and open source, but when you compile it into an Xbox program (an “.xbe” file, akin to Windows’ “.exe” files), you’re using copyrighted software, thus the resulting executable contains a portion of copyrighted code. Distributing such a copyrighted work violates the DMCA in the U.S., however laws in your country may vary. For the sake of this tutorial, I’ll leave the legalities up to you, but you should be aware of why the Microsoft XDK is publicly considered “off limits” in most discussion areas. For more details, you can visit the XBMC wiki page regarding the XDK and its involvement with Xbox Media Center.

Building Xbox Media Center from source code with the XDK isn’t a great option, let alone an easy one. Thankfully, a few charitable people build and post copies of XBMC around the net. I’ll have to leave you to your own devices to obtain a copy. As of this writing, the latest version is 2.0.1, and it can be found on many usenet servers and popular BitTorrent sites. Like the BIOS files mentioned in the previous Mac meet Xbox part, XBMC is also distributed in RAR format, which must first be decompressed.

Dashboard Swap
With a shiny new build of XBMC on your computer, you’ll need to prepare the Xbox to receive the files. The community that has developed around Xbox modding decided upon one of the best choices for file transfer — FTP. We’re going to run an FTP server on the newly modded Xbox, browse through it’s carefully arranged system files, and replace a bunch of them with Xbox Media Center. First, though, you’ll need an FTP server.

In the early days of Xbox modding, a replacement for Microsoft’s Xbox “dashboard” was created, EvolutionX, and it served a number of needs: launching programs, flashing the Xbox’s onboard BIOS, changing settings, and running an FTP server. While others have since been developed, and even our very own Xbox Media Center is capable, we need something simple and easy to get off the ground. The easiest way to run an FTP server is to boot a prepared EvolutionX disc, which automatically starts the FTP service. Again, you can find discs to do the job all over the web. Burn the disc image to a DVD-R, DVD+RW, or CD-RW, which are three of the most compatible disc types — CD-Rs tend not to work well. Pop in the disc, reboot your Xbox, and marvel at the first non-Microsoft application running on your Xbox. By the time you see the spinning “EvolutionX” text, it’s ready to accept FTP connections at the IP address displayed in the Utilities menu (assuming your network setup is the same as in Part 2).

There are several Mac FTP programs that will work for the next task, however I strongly recommend Panic’s Transmit client, which has proven to work reliably with the built-in FTP servers of the Xbox programs we’ll be dealing with. (For the full effect, paste on the replacement icon!) Launch Transmit, and connect to the IP given by EvolutionX, with the universal Xbox FTP login:
Username: xbox
Password: xbox
Of all your passwords, this should be the easiest to remember.

Transmit Xbox Connect

When connected, you’ll be presented with a list of folders much like that of a Windows “My Computer” view: C:, D:, E:, and a few other drive letters. Not surprisingly, the folders correspond to similarly arranged devices — C: is for the main Xbox system files, D: is the DVD-ROM drive, E: is for extra files like game saves. If you’re curious, you can browse the contents of the optical drive by peeking inside D:, however the real guts of the Xbox’s system lie in the C: folder. Unlike Windows, however, the Xbox system files are stores right inside C:. Opening it will list a number of important files, but the one to note is xboxdash.xbe. This file, along with its associated fonts, sounds, and textures is the heart the Xbox software. It’s the green screen you’re used to browsing through when you have no game inserted in the console or are about to play a DVD movie. At this point, I would advise backing up all the contents of the C: drive to a safe folder on your computer, should you need them in the future. Go “up” a directory where you can see the drive list again, and simply drag C: to your Mac, and wait for it to copy over. (If you’re so inclined, you might also drag over E: to back up your saved games and other data.)

Once the contents of C: are backed up and safely tucked away, promptly delete everything in the C: folder. That’s right. Blow it away. Doing so will rid your Xbox of its Microsoft dashboard and prepare the space for XBMC. Short of re-copying the files you just backed up, you won’t be able to get back to the standard Xbox dashboard any longer. If you’re going to make this machine a media center Xbox, you might as well go all the way and make the media center the default system. With that, highlight everything in C:, and click Transmit’s “Delete” toolbar button.

Some moments later, your C: folder will be empty, ready to accept new software. At this point, if you were to reboot your Xbox without the EvolutionX disc inserted, you would receive an error stating that your Xbox needs serious repair by trained Microsoft professionals. Slim chance of that happening any time soon, after all, you’re an Xbox modder now anyway — what do they know? Browse to the contents of the decompressed Xbox Media Center folder and find default.xbe contained within. Upload this file and all of its sibling files and folders, ensuring that the default.xbe is directly inside the C: drive. This may take some time, as XBMC totals over 100 MB and has quite a few small files which can slow down the overall transfer. Upon completion of the upload — and this is important — rename default.xbe to xboxdash.xbe. You’ll note that the original Microsoft dashboard had the same file name, thus we’ve replaced it with Xbox Media Center’s main program. Without an xboxdash.xbe to launch, the Xbox will produce an error screen. Renaming Xbox Media Center’s main program to match what the Xbox expects to find effectively tricks it into launching the new software at startup.

The Final Test
To ensure you’ve properly installed Xbox Media Center, open the DVD drive, remove the EvolutionX disc, and restart your Xbox. If all goes well, you’ll hear a startup tune and be greeted with the Xbox Media Center splash screen, and a brand new menu system. Movies, music, pictures, programs — it’s all here.

XBMC

If you’ve made it this far, consider yourself an official Xbox modder. You’ve successfully opened the console, modified it to run non-Microsoft software, and installed your own replacement system. Getting this far took countless hours of cracking and coding on the part of some very dedicated hackers, and you’ve managed to follow in their footsteps to assemble your own home media center. It would not be inappropriate to snicker now, as you’ve built yourself a very capable media center with TV output capabilities for under $150 — from Microsoft, of all places.

Now that you have Xbox Media Center up and running, take some time to browse through its features and familiarize yourself with the menu system, as we’ll be dealing with them extensively in Part 4 of Mac meet Xbox. Next time, we’ll cover the ins and outs of customizing Xbox Media Center and how to get content streaming from your networked Macs right to your TV screen.

Mac Meet Xbox: Navigation
Part 1: Why Xbox + Choosing Chips
Part 2: Cracking the Case + Installing and Flashing
Part 3: Installing XBMC
Part 3.1: Networking in Detail

Halo Wars for iPod

Thursday, December 14th, 2006

If you hadn’t noticed from my many previous posts, the category even, I’m a huge Xbox fan. And what Xbox fan doesn’t appreciate a battle-filled round of Halo, the title that literally made the Xbox what it is today? While I’m still ever-so-slightly bitter about losing the original Halo to Microsoft Game Studios after the crowd-pleasing MacWorld 1999 demo, I’m quite glad it turned out as successful as it has. What was primed to be a noteworthy Mac game got transformed into an enormous console blockbuster, a milestone in gameplay and attention to detail demonstrating that Bungie simply “gets it” when it comes to games. It was, and still is, one of the top selling Xbox games, and Halo 2 is continually rising back up to top of Xbox Live charts.

Halo Wars for iPodI’m certainly excited over the upcoming release of Halo 3 for the Xbox 360, but I recently learned of a new spin on the Halo saga. Halo Wars aims to deliver a real time strategy version of Halo, allowing you to command massive armies of Spartan soldiers and vehicles, defending against Covenant invaders on a global scale — a “bigger picture” interpretation of the first-person action that fills Halo 1 through 3. Normally, I don’t get excited about anything other than first-person shooters; I like having a weapon displayed in the lower third of my TV screen and a straight-ahead view of the oncoming foes. Over the last few weeks, though, I’ve really started enjoying Company of Heroes on the PC, which is a World War II real-time strategy game. It got me thinking: If this game is fun, playing it in the Halo environment must really be impressive. Calling in Banshee air strikes while maneuvering squads of soldiers around in Warthogs makes Company of Heroes seem boring by comparison.

Over at the Halo Wars site, they provide a trailer of what’s in store. Although it doesn’t detail any of the gameplay, it is a great teaser, displaying dozens of UNSC allies and enemies, all with their signature vehicles and weapons ready and poised for battle. Sadly, the trailers are only available in Windows Media format (the obvious choice for a Microsoft affiliated game). I’ve taken the liberty of converting it to a more Mac- and iPod-friendly format, which you can download now →