Homebrew (video games)

From Wikipedia, the free encyclopedia

Homebrew is a term frequently applied only to video games that are produced by consumers on proprietary game platforms; in other words, game platforms that are not typically user-programmable, or use proprietary hardware for storage. Sometimes games developed on official development kits, such as Net Yaroze or PS2 Linux are included in the definition. Some, however, also refer to all non-commercial, "home-developed" games for open architectures as homebrew games, though these typically go under more frequently used labels, such as freeware. The term doesn't, however, include commercially sold games that are developed without the console manufacturer's license.

A popular type of homebrewed games is fangames.

In Japan, these games are usually called Dojin soft. Which is the way of saying homebrew this software is not illegal depending on what the software does.

Homebrew games are typically developed to be used with emulators. There have been efforts to use actual console hardware; Atari 2600 homebrew developers can use various methods, for example, audio transfer via the SuperCharger module. Game Boy Advance homebrew developers have several ways to use flash memory cartridges (see Game Boy Advance flash cartridges).

Today, along with the Sega Dreamcast, Game Boy Advance, and the PlayStation Portable the most frequently used platforms for homebrew development represent a good part of the older generations of the consoles - the Atari 2600 and Nintendo Entertainment System.

The Atari 2600 and NES are interesting because they both use the 6502 instruction set which is likely to be familiar to people who have programmed 8-bit computers, such as the Commodore 64.

Although on a much lesser scale, both the Sega Master System and Genesis/Mega Drive do enjoy some homebrew development, as there is no physical lockout mechanism (akin to Nintendo's 10NES), thus running homebrew software on that hardware is much easier.

The Sega Saturn has a relatively small, yet very creative homebrew website in Denmark and is slowly increasing in popularity.

A big factor is that the platforms (and portable platforms in general) are simple enough that a very small team, or a lone programmer, can make a decent enough game for them, therefore favoring homebrew projects which are usually undertaken by small teams or individuals.

Contents

[edit] Sixth-generation consoles

All of the major sixth generation consoles enjoy some popularity with modders, but less so than earlier generations. Mostly this is due to the fact that producing software for powerful platforms needs more resources, there aren't very good emulators for these platforms yet, and the consoles themselves often employ rather complex systems to prevent unauthorized code. Homebrew developers often have to use "loopholes" to get their software to run.

[edit] Sega Dreamcast

The Sega Dreamcast was a console that, while shadowed by its later competitors, is particularly lauded for its homebrew development capabilities.

[edit] PlayStation 2

Early versions of the PlayStation 2 have a buffer overflow bug in the part of the BIOS that handles PS1 game compatibility; hackers figured out how to turn this into a loophole called the PS2 Independence Exploit, allowing the use of homebrew software. Another option for homebrew development is the use of a modchip. Or, developers can use a PS2 hard drive and HD Loader.

Sony also released an official homebrew-development kit that allows PlayStation 2 to run Linux. See the PS2 Linux article for more information.

[edit] Nintendo GameCube

The GameCube, when it comes to homebrew, has historically enjoyed little success due to the fact that it uses quite obscure hardware. False rumors claimed that the GameCube used non-standard DVD-media that was incompatible with consumer DVD burners, or stated that GameCube discs spun backwards, claiming that the discs were written from the outside in.

In fact, the only barrier to burning GameCube discs with a consumer DVD burner is the Burst Cutting Area, a "barcode" in the innermost ring of the disc, an area inaccessible to most burners and writeable only by very expensive disc pressing machines. For a long time the only way to run homebrew software on GameCube was through a patching-system exploit of Phantasy Star Online Episode I & II, requiring users to find the game and a Broadband Adapter. Both of these are difficult to find because a disc has been released (under the name Phantasy Star Online Episode I & II Plus) and thus the original PSO is rarely sold, and because the BBA is not often carried in stores due to the Gamecube's very limited selection of online games.

Nowadays the most common method is to use a special loader software, often using a modchip, and homebrew software can be loaded from DVD-R, SD card, or over Ethernet. As the GameCube's case does not fit a full-size DVD-R, third party replacement cases are available. As of 2006, there is quite a bit of homebrew software available for the GameCube, though the homebrew community remains small.

[edit] Microsoft Xbox

The Xbox console uses several measures, including cryptographically signed code to obfuscated firmware. The primary method of executing homebrew code required installing a mod chip which could be flashed with a modified Microsoft BIOS. This BIOS allowed the system to boot unsigned executables (XBEs) and control several hardware variables, such as region coding and video mode. With the leak of Microsoft's official development kit (XDK) homebrew coders were able to write replacement operating systems(known as dashboards) games, and applications for the Xbox.

Eventually, a softmod which uses a commercial game such as 007: Agent Under Fire, Mech Assault or Splinter Cell to load up homebrew software has been discovered. This method utilizes modified font and sound files to cause the Xbox to intentionally crash and load one of the homebrew dashboards. Once in this condition, the Xbox was now able execute homebrew games and applications.

Because the Xbox uses standard PC libraries and can execute C++ and assembly code, writing homebrew games is extremely easy, as the vast majority of commands available for a PC programmer are available to an Xbox homebrew programmer. This ease of coding is the same reason that commercial developers loved the Xbox.

One of the more common type of homebrew games for the Xbox are ports of PC games who's source has been publicly released or leaked. Many classic PC games have been released for Xbox, but most are created with the XDK which limits their availability. The only places to find these ports are through IRC or peer-to-peer browsers.

The Xbox system is also very adept at running emulators which have been ported from PC. The Xbox is able to emulate systems up to the previous generation, including the Nintendo 64 and the PlayStation. For this reason, many different emulators have been created for the Xbox, and some of them have even more development support than their PC counterparts.

Recently, progress has been made in the creation of a legal development kit for the Xbox, known as OpenXDK. The OpenXDK is intended to allow coders to create new applications and games, as well as port existing source codes, without using illegally obtained Microsoft software. The games and applications created under the OpenXDK can be legally hosted on the net, and downloaded by users.

Even after the release of the Xbox 360, the Xbox homebrew scene remains extremely active, with new game ports, emulators, and applications coming out weekly. Microsoft is currently encouraging Xbox 360 homebrewed content with XNA, though at a charge of $99.

[edit] NUON

The Nuon was a game chip built into several DVD players. The company who made the system called VM Labs released a homebrew SDK just before they went bankrupt. The graphical capabilities are on par with the PlayStation. The homebrew SDK & homebrew apps written in Nuon can be downloaded from http://www.nuon-dome.com/download.html. Homebrew Nuon apps can only be played on Samsung DVD-N50x and RCA Nuon DVD players.

[edit] Seventh-generation consoles

[edit] PlayStation Portable (PSP)

Main article: PlayStation Portable homebrew

[edit] PlayStation 3

The Playstation 3 has been designed to run other operating systems from day one. Very soon after launch, the first users managed to install Fedora Core 5 onto the Playstation 3 via the 'Install Other OS' option in the PS3's XMB (Cross Media Bar), which also allows configuring the PS3 to boot into the other OS installed by default.

So far, several Linux flavors have been successfully installed to the PS3, such as Fedora Core 5, Fedora Core 6, Gentoo and Yellow Dog Linux (YDL). The latter comes installed with the Cell SDK by default, allowing programmers a low cost entry into Cell programming. See also: Linux for PlayStation 3

At this point graphics support is limited to framebuffer access only (no access to the PS3's graphics chip RSX yet). Since NVIDIA has a good track record when it comes to releasing Linux drivers for its products, there is some hope that Linux on PS3 will be able to support the RSX graphics card eventually. In the meantime however, they will have to make do with framebuffer access and software-only implementations of OpenGL, such as Mesa 3D. A port of Lua Player, which will implement Mesa 3D, is already underway.

Homebrew developers do have access to the revolutionary Cell microprocessor, including 6 of its 7 active Synergistic Processing Elements (SPEs). The Game OS resides under a hypervisor and prevents users to take full control of the PS3's hardware. This is a robust security measure which has helped Sony feel secure enough to allow users to install other operating systems to the PS3.

The Sixaxis controller has also been exposed to Linux, but as of yet no driver seems to have been successfully created that exposes its tilt sensor and accelerometer functionality.

[edit] Nintendo Wii

Main article: Wii homebrew

[edit] Nintendo DS

Main article: Nintendo DS homebrew

[edit] GP2X

The GP2X by Gamepark Holdings is fully dedicated to running homebrew software.

[edit] Gizmondo

The Gizmondo's ability to run homebrew was cracked early 2006. However, due to the fact that the Tiger Telematics, the creator of Gizmondo, is bankrupt, a small but loyal fan base have provided a fair amount of homebrew applications and emulators.

[edit] External links