Homebrew (video games)
Homebrew, when applied to video games, refers to games produced by hobbyists for proprietary video game consoles which are not intended to be user-programmable. The official documentation is often only available to licensed developers, and these systems may use storage formats that make distribution difficult, such as ROM cartridges or encrypted CD-ROMs. Many consoles have hardware restrictions to prevent unauthorized development. Development can use unofficial, community maintained toolchains or official development kits such as Net Yaroze, Linux for PlayStation 2, or Microsoft XNA. Targets for homebrew games are typically those which are no longer commercially relevant or produced, and with simpler graphics and/or computational abilities, such as the Atari 2600, Nintendo Entertainment System, Wii, Nintendo 3DS, Genesis, Dreamcast, Game Boy Advance, PlayStation, and PlayStation 2. Development
New games for older systems are typically developed using emulators. Development for newer systems usually involves actual hardware, given the lack of accurate emulators. Efforts have been made to use actual console hardware for many older systems, though. Atari 2600 programmers may burn an EEPROM to plug into a custom cartridge board or use audio transfer via the Starpath Supercharger. Game Boy Advance developers have several ways to use GBA flash cartridges in this regard. First generation consoles

Odyssey
In 2009, Odball became the first game for the Magnavox Odyssey since 1973. It was produced by Robert Vinciguerra who has since written several other Odyssey games. On July 11, 2011, Dodgeball was published by Chris Read. Second generation consoles

Atari 2600

Channel F
A handful of games have been programmed for the Fairchild Channel F, the first console to use ROM cartridges. The first known release is Sean Riddle's clone of Lights Out which included instructions on how to modify the SABA#20 Chess game into a Multi-Cartridge. There is also a version of Tetris and in 2008 "Videocart 27: Pac-Man" became the first full production game for the system since it was discontinued. Third and fourth generation consoles

NES / Famicom
Several compilers are available for the Nintendo Entertainment System, but like the Atari 2600, most development is done in 6502 assembly language. One impediment to NES homebrew development is the relative difficulty involved with producing physical cartridges, although third-party flash carts do exist, making homebrew possible on original NES hardware. Several varieties of custom processors are used within NES cartridges to expand system capabilities; most are difficult to replicate except by scavenging old cartridges. One of the unofficial games that supports parallax scrolling and the MMC5 chip is Street Fighter II: Nostalgic Edition, which is a port of Street Fighter II: The World Warrior developed by Parisoft. While the original Famicom and its clones can play unlicensed games, the 10NES hardware lock-out mechanism of the original model NES complicates the production of physical cartridges. The 10NES chip can be permanently disabled by performing a minor change to the hardware. The redesigned NES (also known as the New-Style NES or the New Famicom) lacks the 10NES chip. Genesis / Mega Drive
The Sega Genesis has no physical lockout mechanism (instead relying on software encoding), making it easier to release software for the system. Pier Solar and the Great Architects, Paprium, and a port of Teenage Queen are examples of games that were released as physical cartridges. Other games include Sacred Line Genesis, Coffee Crisis, and Frog Feast for the Genesis and Mighty Mighty Missile for the Sega CD. The 2018 game Tanglewood was notable in that it was developed using original Sega Genesis development hardware. TurboGrafx-16/PC Engine

The TurboGrafx-16/PC Engine has a comparatively small homebrew scene. The first homebrew title was MindRec's Implode in 2002, a few years after the system's last official release (Dead Of The Brain I & II for the PC Engine in 1999). The title was released on CD-ROM. Two years later, MindRec released Meteor Blaster DX on CD-R. Their official word on the change of CD format was that they were unable to be pressed to CD-ROM proper due to the glass mastering software suddenly unable to handle the unorthodox style of CD structure that the system expects. Five years later, Aetherbyte Studios released Insanity, a Berzerk clone, on pressed CD-ROMs, quelling the notion of unpressable CDs. Aetherbyte later went on to prototype and produce a new HuCard design called "AbCARD", which was fully compatible with the console. Aetherbyte celebrated the 30th Anniversary of the PC Engine since its release in 1987. There is one C compiler for the console known as HuC, however it has not been officially updated since 2005. The MagicKit assembler is generally considered the de facto assembler for the console, and comes included with HuC. Additional libraries for HuC/MagicKit include Squirrel, a sound engine developed by Aetherbyte Studios, and the SGX/ACD library, developed by Tomatheous, that gives the developer easy access to the SuperGrafx video hardware as well as the Arcade Card. The cc65 C compiler is compatible with the console, although there is no development library supported for it. There are a few original TurboGrafx CD games being made such as FX Unit Yuki: The Henshin Engine and a port of Mysterious Song in 2012. SNES / Super Famicom

Bung Enterprises released the Game Doctor SF hardware series. It allows users to copy games and run new games on SNES hardware. ROMs can be converted into the Game Doctor SF format and put onto a 3 1/2" floppy. Games as large as twelve megabits can be put on floppy disks formatted to 1.6 megabytes. An alternative device is the Super Flash, by Tototek, which allows multiple games to be burned onto a flash memory chip in a cartridge. This allows games as large as 48 megabits. The system can also program compatibility with a C compiler. The run and gun game, Alisha's Adventure, used original Super Famicom development hardware. WaterMelon's action role-playing game codenamed ProjectN, is a brand-new homebrew game for the SNES that is currently in development. Neo-Geo MVS, AES, and CD
The Neo-Geo Home Cart and Arcade Systems can be tough candidates for homebrew development. Neo-Geo AES and MVS cartridges have two separate boards: one for video, and one for sound. If programming a cartridge for the system were to occur, it would involve replacing the old ROM chips with one's newly programmed ones as the cartridges are in a sense, Arcade boards. NGDevTeam who have released Fast Striker and Gunlord found a workaround with this. What they did was print out their own board, and soldered their own ROM chips into them; this, however, can cause the Universe Bios logo to look corrupted if a custom bios were to be programmed. Programming for the Neo-Geo CD, however is easier than programming for cartridges. The CDs themselves can actually contain both sound and video respectively. Depending on the Megabit count for a game program, load times will vary. A CD game with low Megabit counts will load only one time; whereas a CD game with higher megabit counts could load in between scenes, or rounds. There are now some full games scheduled for release in physical form, such as Neo Xyx. Programmer of the Neo-Geo Universe Bios, Razoola is currently working on a "Skeleton Game Driver" that supports two players. This ROM is meant to remedy the corrupted Universe Bios Screens, as well as work with an unmodified/stock Neo-Geo Multi-Video System (MVS), or Advanced Entertainment System (AES). Razion is an example of an original Neo Geo game ported over to modern consoles, in this case the Nintendo Switch. Game Boy
There are many toolkits and utilities available to program homebrew on the handheld. ROM hacks of popular games on the handheld are available for the system. There are also unofficial ports and demakes of games from other home consoles and handhelds made for the Game Boy, some examples are a demake of the PlayStation game Castlevania: Symphony of the Night, a port of the infamous Philips CDi game Zelda’s Adventure, and a port of Stunt Race FX for the Game Boy. Fifth generation consoles

Jaguar

The first hobbyist-developed Atari Jaguar game was released in 1995: a version of Tetris called JSTetris. It was written using a hacked version of the Alpine Development Kit, one of the pieces of hardware used to program official Jaguar games. After purchasing all the intellectual property assets of Atari Corporation from JTS in 1998, Hasbro Interactive, on May 14, 1999, announced that they have released all rights to the Jaguar, declaring the console an open platform. Following the announcement, a few developers and publishers, such as AtariAge, B&C Computervisions, Piko Interactive, Songbird Productions, Telegames, and Video61, have released both previously unfinished games from the Jaguar's past as well as several brand new games. Since emulation of the console is still limited, coding uses a real console through either the Skunkboard development cartridge, using a BJL modified Jaguar, or the official Alpine Development Kit. The commercial game BattleSphere Gold, also contains the JUGS (Jaguar Unmodified Game Server) aid to development. Games are released in either cartridge, CD–or both–formats. Most developers have published their works either online on forums or in cartridge via independent publishers. Since both systems do not have regional locking, all of the titles are region free. Some of the earliest CD releases were not encrypted, requiring either B&C's Jaguar CD Bypass Cartridge or Reboot's Jagtopia (Freeboot) program burned into a CD in order to run unencrypted CD games, but Curt Vendel of Atari Museum released the binaries and encryption keys for both the cartridge and CD format, making it possible to run games without the need of development hardware. A cracked BIOS of the Jaguar D can be soldered inside the system. There are also ST-to-Jaguar conversions, which involves porting titles from the Atari ST to the Jaguar, which may include some enhancements. While they can be downloaded for free, select titles were sold on August 3, 2016 and others, as of date, are being licensed and sold in festivals dedicated to the system such as E-JagFest, JagFest or online via AtariAge. PC-FX
There is only one Homebrew development kit known for the PC-FX, which is based on the GNU Compiler Collection version 2.95.1. The Mednafen author began work on a library for the compiler called pcfxlib but it was discontinued due to lack of interest until trap15 started development of a new library called liberis. The toolchain is designed for a Linux environment, although it can also be used with cygwin. To date, no Homebrew titles for the PC-FX have been released, although Aetherbyte Studios and Eponasoft have both expressed interest in developing new software for the console. PlayStation
Making games on the PlayStation is possible with any model of the system through the use of a modchip or the double 'Swap Trick'. There is also a softmod/save game exploit called "tonyhax" Requirements consist of a PC, SDK, and a 'Comms Link' device to upload and download files to and from the console. Another way of starting homebrew on the PlayStation is 'UniROM', which is a Softmod. UniROM works by being installed onto a cheat-device, which is connected via the parallel-port (on old consoles) and allows loading of custom code via burned CDs and the serial port. Homebrew was originally promoted by Sony with the Net Yaroze, which had a large scene for quite some time. However, the official Net Yaroze site was shut down in mid-2009, and Sony stopped supporting the system as well as the users who still owned the console. Saturn
All models of the Sega Saturn can be used for hobbyist development. Modchips for the Saturn Model 1 have been scarce for some time, as it seems that no one has produced any new modchips in years. As such, the only two options left are to either perform the swap trick or extensively modify a Saturn Model 2 modchip. Running homebrew on the Model 2 can be accomplished by bridging two points on the modchip, soldering a wire from the modchip to the Saturn power supply, and inserting it where the CD-ROM ribbon cable inserts. The swap trick is more difficult to pull off on this Model due to the lack of an access light. Another method is what is known as the "PseudoSaturn" unlocking method. It is a program created by CyberWarrior2000 that abuses the "Pro Action Replay" cartridge's firmware. It unlocks region, frequency, and CD protection of most Saturn models. Either a modded Saturn or a swap trick is required to run the installer, which loads the code in the FlashROM of the cartridge. Afterwards, the cartridge unlocks everything and most software can be run, from backups to homebrews. There is also now a new engine for development called the Jo-Engine created by Johannes Fetz to allow easy development of 2D games. This engine is currently able to compile 2D games without the Sega Graphic Libraries (SGL). Another engine by XL2, called the Z-Treme engine, led to the creation of a fully 3D Sonic The Hedgehog game called Sonic Z-Treme. Z-Treme uses Sega Basic Libraries (SBL) and Sega Graphic Libraries (SGL). Virtual Boy
Nintendo's Virtual Boy has no region lock, but it wasn't until the flash carts FlashBoy and FlashBoy+ were released that the homebrew scene began to grow. Two previously unreleased games, Bound High! and Niko-Chan Battle (the Japanese version of Faceball) have been released. In 2015, A dedicated fan ported Konami’s cyberpunk click and point Snatcher over the Virtual Boy platform. Red Square, an Yume Nikki fan game was created in six weeks for the 2019 Dream Diary Jam. Nintendo 64
The Nintendo 64 Homebrew scene began, and started off small, in January 1997, after the release of the DoctorV64, by Bung, during which many hobbyist developers utilized the use of a DoctorV64 for playback of their game or demo code, while also programming and utilizing their own written tools and programs for development, usually for Windows 95, or Linux. Nintendo 64 homebrew demo scene competitions, known as "Presence Of Mind" were held, in which entrants utilized the DoctorV64, were hosted by the now-defunct N64 Homebrew Development website, Dextrose.com, in December 1997, leading into 1998, and 1999. A Presence Of Mind competition was due to happen in 2000, but with the waning popularity of the console by this time, did not occur. Between the years 2001 and 2005, homebrew development for the console stalled. A new flashcart for the system, titled the NeoMyth Flashcart, was announced in May 2006. Jennifer Taylor started work on the opensource SDK known as LibDragon in May 2009, for developers to utilize a non-proprietary SDK for homebrew game and program development on the Nintendo 64. In April 2010, another new developer-friendly device for running custom programs and code, known as the 64Drive, would begin to be  developed by Marshall H. 
In 2012, Ukrainian developer KRIKzz would develop their own device for the Nintendo 64, which is also utilized for homebrew development. During this time, the Nintendo 64 homebrew scene picked up again, and in 2016 a subreddit, as well as a Discord Server (N64Brew), were created to further bring Nintendo 64 Homebrew developers together, and to the forefront. Communication between developers still happens on IRC, under the channel #n64dev. The N64Brew community has hosted game jam development competitions in 2020, 2021, and 2022. These competitions focused on creating games for the system (rather than demos, compared to the '98 and '99 competitions). These competitions also held interviews with the judges and developers behind the games they worked on. Notable judges for the competitions were former Nintendo 64 developers, such as Allan Findlay, David Doak, Neil Voss, and Giles Goddard. In August 2020, a wiki dedicated to providing accurate documentation of the Nintendo 64, its peripherals, and related software was created by the Nintendo 64 homebrew community. There have also been a number of other game emulators developed for the Nintendo 64, notably a Nintendo Entertainment System, Super Nintendo, Neo Geo, Game Boy and Game Boy Color  and a ScummVM emulator, among others. In 2022, active development for the console and programs for the console is back in swing. There are roughly 2,000 active members within the Nintendo 64 Homebrew community. The 16-bit top-down shooter Xeno Crisis has received a version for the Nintendo 64, released on physical cartridge in April 2023. Sixth generation consoles

Dreamcast
Despite its short commercial lifespan of less than two years in North America, the Dreamcast benefits from an active homebrew scene even ten years after its discontinuation. Due to a flaw in the Dreamcast’s BIOS, which was intended for use with MIL-CD's, the console can run software from a CD-R without the use of a modchip. Sega responded to this by removing MIL-CD support from the BIOS on Dreamcast consoles manufactured from November 2000 onwards. The console is especially notable for its commercial homebrew scene. One notable project was the Bleemcast! emulator, which was a series of bootdisks made to play PlayStation games on the system, featuring visual enhancements over the original console. Newer independent releases include Last Hope, released by RedSpotGames, and DUX, both Shoot 'em up style games. These releases were written using the KallistiOS development system. A port of the freeware high-level development language Fenix and BennuGD is available for use in game development; many DIV Games Studio games have been ported and others were originally written for the system. 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 found a way to turn this into a loophole called the PS2 Independence Exploit, allowing the use of homebrew software. Other options for homebrew development would be the use of a modchip or the utilization of a PS2 hard drive and an HD Loader. In Europe and Australia, the PS2 came with a free Yabasic interpreter on the bundled demo disc for some time. This allows simple programs to be created for the PS2 by the end-user. This was included in a failed attempt to circumvent a UK tax by defining the console as a "computer" if it contained certain software. A port of the NetBSD project and BlackRhino GNU/Linux, an alternative Debian-based distribution, are also available for the PS2. Using homebrew programs (e.g. 'SMS Media Player') it is possible to listen to various audio file formats (MP3, OMA, Ogg Vorbis, AAC, FLAC, AC3), and watch various video formats (DivX/XviD, MPEG1, MPEG2, MPEG4-ASP in AVI Container) using the console. Media can be played from any device connected to the console i.e. external USB/FireWire/thumb drive/hard disk drive (FAT32 only), the internal hard disk on early revision consoles, optical CD-R(W)/DVD±R(W) disks (modded systems or patched disks), or network shares (Windows Network or PS2 host: protocol). A more recent development (May 2008) called Free McBoot or FMCB allows homebrew programs to be launched without a trigger disc required by the older exploit. This also allows the use of homebrew on unmodded systems without a functional disc drive. However, installation of the exploit to each individual memory card requires either an already exploited/modded system in order to launch the installer, or a boot image that can load an app that loads ELF files (a Network Adaptor with a hard drive is also required). Simply copying from one memory card to another will not work. This exploit does not work on the latest slimline PS2s (the later SCPH-9000x models with BIOS 2.30 and newer) but will work on all models prior to that. The newest versions of Free McBoot (version 1.90 and newer) also have the ability to install and boot from both Sony and non-Sony HDDs when using an original "fat" model PS2 and network adapter. This support is called Free HDBoot or FHDB. With a few minor issues, it is now possible to play games entirely from the HDD, without needing to use the optical disc drive nor a physical memory card. Unlike the Independence Exploit, which requires a trigger disk, Free McBoot needs only a standard Memory Card, which allows it to be used on systems with broken optical drives. The installation is keyed to the Memory Card and will only be usable on the same version consoles that it was originally installed on, unless a Multi-Install is performed. The drawback of this exploit is that it needs to be installed/compiled on each individual memory card. Simply copying the exploit is not possible. Along with this, an already modded or exploited system is required to install Free McBoot on a Memory Card. After installing an exploit, unsigned executables (Executable and Linkable Format) may be launched from a Memory Card or a USB drive. Such programs include emulators, media players, hard drive management tools, and PC-based or NAS-based file shares. The exploit is also notable for allowing the user to copy PS1/PS2 save files from a Memory Card to a USB drive, a functionality normally only possible with tools such as DexDrive. Sony released a Linux-based operating system for the PS2 in a package that also includes a keyboard, mouse, Ethernet adapter and HDD. The North American versions went out of stock not too long afterwards, however the European version was still available. The kit boots by installing a proprietary interface (the run-time environment) which is on a region-encoded DVD, meaning that the European and North America kits would only work with a PS2 from their respective regions. A number of homebrew emulators of older computer and gaming systems have been developed for the PS2. GameCube
Homebrew development on the Nintendo GameCube tended to be difficult, since it uses a proprietary MiniDVD-based drive and media as opposed to the standard DVD drives of the PS2 and Xbox for piracy protection. Also, its connectivity is limited, as it does not feature a USB port or an HDD port like the PlayStation 2. The barrier to burning Nintendo 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 Nintendo 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 follow-up has been released (under the name Phantasy Star Online Episode I & II Plus) and thus the original PSO was rarely sold after then, and because the Broadband Adapter was not often carried in stores due to the Nintendo GameCube's very limited selection of online games. As of August 2019, the most common method is to use an Action Replay in conjunction with an SD card adapter inserted into the memory card slot, allowing the user to run homebrew from the SD card, or over Ethernet. Another method involves using a modchip to allow the GameCube to run homebrew from a MiniDVD-R via the disc drive. Another method uses a save game exploit which involves transferring modified game save files to a GameCube memory card that triggers arbitrary code execution when loaded by an official game, allowing custom software to be run from a memory card, SD card, or other media. As the Nintendo GameCube's case does not fit a full-size DVD-R, third party replacement cases are available. Homebrew software for the Nintendo GameCube mainly consist of emulators for other systems, as well as several popular homebrew utilities. Swiss is an “all-in-one homebrew utility”, including a file browser, and the ability to force software to use different video modes that aren't officially supported, such as progressive scan or 16:9 widescreen. The Game Boy Interface is a homebrew software frontend for the Game Boy Player peripheral, and is often used for capturing high-quality footage from Game Boy, Game Boy Color, and Game Boy Advance games. The 16-bit top-down shooter Xeno Crisis has received a version for the Gamecube, released on physical optical disc. Xbox

The Xbox console uses several measures, including cryptographically signed code to obfuscate 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 Xbox GUIs (known as dashboards), games and applications for the Xbox. A softmod, which uses a commercial game such as 007: Agent Under Fire, Mech Assault, or Splinter Cell, had been created to execute a persistent softmod installer without modification of the hardware. This method utilizes modified font and sound files to cause the Xbox to cause a stack buffer overflow and load a homebrew dashboard. Once in this condition, the Xbox is able to execute homebrew games and applications upon boot up. Due to the Xbox using standard PC libraries, writing homebrew games is relatively easy and the vast majority of libraries available for a PC programmer are available to an Xbox homebrew programmer. One of the more common type of homebrew games for the Xbox are ports of PC games whose 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, given its high processing power. 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 or ported to the Xbox. Game Boy Advance
Homebrew development for the Game Boy Advance handheld has been popular due to the availability of C compilers and ready-made, high-quality code libraries, and debugging features for several Game Boy Advance emulators like VisualBoyAdvance-M, mGBA, NO$GBA, John GBA and My Boy. Adding to the success of homebrew for the system is the immense Pokémon ROM hacking community, the wide availability of Flash ROM cartridges and cartridge writers for the system, as well as nostalgia for the system in general (which applies to all other retro game systems). Seventh generation consoles

PlayStation Portable

Nintendo DS

Since the release of the Nintendo DS, a great deal of hacking has occurred involving the DS's fully rewritable firmware, Wi-Fi connection, game cards that allow SD storage, and software use. There are now many emulators for the DS, as well as the NES, SNES, Sega Master System, Sega Mega Drive, Neo-Geo Pocket, Neo-Geo MVS (arcade), and older handheld consoles like the Game Boy Color. There are a number of cards which either have built-in flash memory, or a slot which can accept an SD, or MicroSD (like the DSTT, R4, AceKard and ez-flash V/Vi) cards. These cards typically enable DS console gamers to use their console to play MP3s and videos, and other non-gaming functions traditionally reserved for separate devices. In South Korea, many video game consumers exploit illegal copies of video games, including for the Nintendo DS. In 2007, 500,000 copies of DS games were sold, while the sales of the DS hardware units was 800,000. Another modification device called Action Replay, manufactured by the company Datel, is a device which allows the user to input cheat codes that allows it to hack games, granting the player infinite health, power-ups, access to any part of the game, infinite in game currency, the ability to walk through walls, and various other abilities depending on the game and code used. Photographer Steve Chapman, looking for other ways to continue his photography work with smaller equipment, created DS-DSLR, an application that allowed him to control his camera without his bulky laptop. When his camera was connected to the DS through the GBA cartridge slot, DS-DSLR allowed him to execute many tasks, including controlled bracketing, custom interval shots, and timed long exposures. DS-DSLR even had a noise-activated shutter control which was activated when the DS mic detected noise. With the DSi, it too has some homebrew exploits, some of which use DSiWare apps such as Flipnote Studio (aka ugopwn), sudokuhax, using a game called Sudoku by EA Games, grtpwn, exidiahax, fieldrunhax, 4swordhax, UNO*hax, and an exploit using Petit Computer called petit-compwner. There is also systemflaaw, which uses the DSi-exclusive game System Flaw. A user by the name of shutterbug2000 on GBAtemp has released two DSi exploits, one being called Memory Pit, an exploit using the DSi Camera app, and the other known as the Flipnote Lenny exploit (aka ugopwn), using Flipnote Studio. Xbox 360
Microsoft has released a version of its proprietary Software Development Kit (SDK) for free, to would-be homebrew programmers. This SDK, called XNA Game Studio, is a free version of the SDK available to professional development companies and college students. However, to create Xbox 360 games one must pay for a premium membership to the XNA Creators Club. Once the games are verified, the games written with XNA Studio can be made available for 80, 240, or 400 Microsoft Points to all Xbox 360 owners (through Xbox Live). This allows creators of homebrew content access to their target audience of Xbox 360 owners. This content is available under the Indie Games section of the New Xbox Experience. On March 20, 2007, it was announced that a hack using the previously discovered hypervisor vulnerability in the Xbox 360 kernel versions 4532 and 4548 had been developed to allow users to run XeLL, a Linux bootloader. The initial hack was beyond the average user and required an Xbox serial cable to be installed and a flashed DVD Drive firmware. Felix Domke, the programmer behind XeLL, has since announced a live bootable Linux CD suitable for novice users, with the capabilities to be installed to the SATA hard drive of the Xbox 360. Despite the availability of such a distribution, the Xbox 360 still isn't considered a popular platform for homebrew development, given the dependence of the exploit on the DVD-ROM being able to load a burnt DVD game, a modified version of the game King Kong, and two older kernel revisions of the console itself. A group independent of Microsoft is working on the means to run homebrew code, as part of the Free60 project. Note: The hypervisor vulnerability in the Xbox 360 kernel versions 4532 and 4548 was addressed by Microsoft with the release of the NXE system and dashboard update in 2008. Homebrew was since re-enabled on any Xbox 360 with dash 2.0.7371.0 or lower via an exploit referred to as the JTAG / SMC hack but was promptly patched again by Microsoft with the 2.0.8495.0 update. Homebrew has now become available on most Xbox 360 consoles due to the Reset Glitch Hack (excluding the late Winchester revision, which fixed this exploit with mitigations in hardware). It works on all current dashboards. As the Reset Glitch Hack requires a modchip, soldering skills are a necessity when attempting to use this exploit. PlayStation 3

The PlayStation 3 was 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 PlayStation 3's XMB (Xross Media Bar), which also allows configuring the PlayStation 3 to boot into the other OS installed by default. So far, several Linux flavors have been successfully installed to the PlayStation 3, such as Fedora Core 5, Fedora Core 6, Gentoo, Ubuntu 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

Originally, graphics support was limited to framebuffer access only (no access to the PlayStation 3's graphics chip RSX), yet some access to the RSX graphics processor was achieved (but Sony blocked this with firmware release 2.10). As of firmware release 3.21, consumers are no longer able to access the 'Other OS' due to Sony removing the facility from the software in an update. Sony said this was in response to several 'security concerns'. Homebrew developers do have access to the Cell microprocessor, including 6 of its 7 active Synergistic Processing Elements (SPEs). The Game OS resides under a hypervisor and prevents users from taking full control of the PlayStation 3's hardware. This is a security measure which helps Sony feel secure enough to allow users to install other operating systems on the PS3. The Sixaxis controller has also been exposed to Linux and Windows, but no driver seems to have been successfully created yet that exposes its accelerometer functionality, except for Motioninjoy. However other drivers have successfully used it as a controller for gaming and other applications. In May 2008, a vulnerability was found in the PlayStation 3 allowing users to install a partial debug firmware on a regular console. However, the debug functionality is disabled, so neither homebrew applications nor backup games can be run yet. Another exploit was found on August 14, 2008, allowing users to boot some backup games from the PlayStation 3's HDD, although the exact instructions on how to do this were not released at that time. However, a different person posted instructions 10 days later, which explained the exploit. On January 6, 2009 a hacking ring known as the "Sh4d0ws" leaked the jig files needed to launch the PlayStation 3 into service mode. Although the PlayStation 3 can be triggered into service mode, it is not yet of any use because the files needed to make changes to the console have not been leaked. On August 31, 2010, PSGroove, an exploit for the PS3 through the USB port, was released and made open source. This exploit works on all of the PS3 models released up until then. A guide for the creation of the PSGroove is available through several online sources. George Hotz, better known under his nickname "geohot", appeared on Attack of the Show because he released the PlayStation 3's encryption keys, therefore any homebrew or custom firmware can be signed. Once signed, homebrew can be natively run. It would be difficult for Sony to fix this because it would most likely require a voluntary recall and the most expensive parts would have to be replaced. In 2011, Sony, with help from law firm Kilpatrick Stockton, sued Hotz and associates of the group fail0verflow for their jailbreaking activities. Charges included violating the DMCA, CFAA, copyright law, and California's CCDAFA, and for breach of contract (related to the PlayStation Network User Agreement), tortious interference, misappropriation, and trespass. Wii

In advance of the Wii's release, WiiCade was the first site to host Adobe Flash homebrew games specifically designed for the Wii and its remote, which could be played without any exploits using the Wii's Opera web browser. The Wii was hacked via a custom serial interface in December 2007. The goal of most Wii exploits is to install the Homebrew Channel, a custom channel that lets users run homebrew software on the console. The Homebrew Channel's first full release was in December 2008. Though Nintendo successfully patched various older exploits to install The Homebrew Channel, many exploits to run the channel on current firmware exist. This channel can be installed using exploits in games such as the NTSC version of Super Smash Bros. Brawl, an exploit on the Internet Channel, a DNS exploit with the EULA, or it can be installed via an exploit in the Wii's messaging system. Note that only exploits that use disc games are compatible with installing The Homebrew Channel on the vWii (virtual Wii) mode on a Wii U, with the exception of "wuphax", an exploit that installs the channel via Wii U specific system permission exploits. The Wii Opera software development kit let developers make their own games in JavaScript. The console's controller was also a popular target for modification. On August 9, 2010, Team Twiizers released an exploit called LetterBomb which uses a malformed mail letter (Buffer overflow) to load a boot.elf file into memory, which then installs The Homebrew Channel to run unsigned code. In recent years, other methods exploiting the Internet Channel (Flashhax) and the Wii's EULA (str2hax) have been released. In 2019, an exploit using Bluetooth called BlueBomb was released. BlueBomb meant that the Wii Mini was hackable for the first time, as it was previously not possible due to the Wii Mini's Internet, Wii messaging capabilities and SD slot removed. Eighth generation consoles

3DS

The first public homebrew exploit for the Nintendo 3DS, ninjhax, originally called ssspwn, allowed the user to scan a QR Code to exploit the game Cubic Ninja. Other ways to run The Homebrew Launcher have been discovered since then, including freakyhax, an exploit in the Deluxe edition of Freakyforms: Your Creations, Alive! ; Doodlebomb, an exploit in the 1.1.1 and older versions of Swapdoodle; browserhax, broswerhax-xl, SSloth browser, and Super-Skaterhax (all of which used the 3DS' Internet Browser while the latter works only on New 3DS models); soundhax, using the Nintendo 3DS Sound app; pichaxx, using Pokémon Picross; unSAFE_MODE, which injects a corrupted WiFi profile into the SAFE_MODE firmware; kartdlphax and Kartminer7 which both utilize Mario Kart 7; ntrboot, using an NDS/DSi flash cart; and smashbroshax, a New 3DS exclusive exploit for Super Smash Bros. for Nintendo 3DS. The majority of system updates that have "Further improvements to overall system stability and other minor adjustments have been made to enhance the user experience" in their changelog are simply to patch Homebrew Launcher (userland) exploits. Those that require a specific version of a game or application are often patched in these updates by adding exploited application versions to the "IsTitleAllowed" blacklist, which prevents outdated applications on the list from launching and forces users to update those applications to the latest version to launch the application. For example, notehax only works on outdated versions of Flipnote Studio 3D. In the 11.6.0-39 system update, all regions of Flipnote Studio version <=1.0.1 in USA, <=1.2.0 in EUR, and <=1.3.1 in JPN were blocked from launching the application, patching the exploit on current firmware. Unsigned software can be launched from the SD card without having to install custom firmware on the device by using an exploit to run The Homebrew Launcher. The Homebrew Launcher itself can be launched on system versions 9.0-11.16 on any 3DS system. However, without installing custom firmware, the user will need to run the exploit each time they want to access The Homebrew Launcher. To directly install custom software onto the 3DS home menu, custom firmware is needed. There are several custom firmware releases available, the most popular being Luma3DS. Requirements to install custom firmware involve using various exploits to run a boot ROM exploit called boot9strap, which executes custom code before boot ROM lockout. In December 2020, an exploit was released that used an oversight in DSiWare, which can run custom code from the DSiWare menu in the 3DS settings app to install the 3DS hacks. As of system software version 11.17.0-50 (which released in May 2023), many of the software homebrew exploits that were used to install custom firmware have been patched. Despite this, other methods of exploiting the 3DS for homebrew are still available, such as the aforementioned Super-Skaterhax for New 3DS models and ntrboot for all other models. PlayStation 4
In 2015, an exploit for the PlayStation 4 was released for firmware 1.76 and below which grants kernel access. The userland exploit was WebKit via the PS4 Web Browser. This opened the door for unsigned code on the system and a homebrew community began to emerge. Over time, further exploits have been found that grant kernel level modifications to the system. The firmware versions for these are 4.05, 4.74, 5.05/5.07, 6.72, 7.02, 7.55, and 9.00. All of these use the PS4 Web Browser as the entry point. Homebrew on the PS4 includes being able to boot the PS4 into a Linux distribution, although this is not permanent and the console will revert to Orbis OS on reboot. Some payloads can patch games on the fly, such as 60 FPS for games that were never given official patches, character mods, and removal of intros and cutscenes. These patches can even work on physical retail discs inserted into the console; they are done at runtime in RAM and such leave the physical disc data intact. PlayStation Vita 

In 2016, an exploit for the PlayStation Vita was released named "HENkaku". This exploit used a bug found on the 3.60 system firmware, allowing users to run unsigned software. It was installed by visiting a website and clicking on the install button on the PlayStation Vita web browser. This had to be done every time the user turned the system on, and was patched in firmware version 3.61. However, in 2018, computer science student TheFloW (Andy Nguyen) found a kernel bug in firmware versions 3.65, 3.67, and 3.68 that allowed unsigned code to be run. Eventually, he developed an exploit called "h-encore" which allowed one to install the HENkaku hack on later PS Vita versions. The kernel bug was patched in firmware version 3.69, but the userland bug still works. Because HENkaku needs to be reinstalled every time the device is turned on again, an optional flasher program named ensō can be used alongside HENkaku to flash it into the system, making the plugin stay permanently even after shutdown and reboot, until uninstalled through the ensō installer. On February 13, 2019, TheFloW released a downgrader tool that can downgrade any Vita console to an older firmware down to its factory firmware. On December 26, 2022, TheFloW released HENlo, a WebKit-based exploit chain for developers and security researchers on his GitHub page; a working implementation of the exploit which can be used on all Vita firmware versions was released by SKGleba. Wii U 

The most common way to execute code on the Wii U for 5.5.6 and below is through vulnerabilities in the Wii U's built in web browser. one method of launching homebrew was called Haxchi which launches homebrew directly (such as the Wii U Homebrew Launcher) using an exploit installed in the game's file location. There is also an additional, optional, part of Haxchi called "Coldboot Haxchi" or CBHC. CBHC allows custom firmware to be enabled automatically each time the system is turned on by running the Virtual Console game directly on boot, whereas other exploits have to be run every time manually. However, CBHC has an increased risk of rendering the system inoperable as deleting the Virtual Console game, among other things, will brick the console, rendering it unusable. In January 2022, Tiramisu and the EnvironmentLoader were released. Tiramisu allows custom firmware to be automatically loaded on boot like CBHC but uses the systems built in Health and Safety Information app  to run the exploit instead of a VC game. since Tiramisu uses a system app instead of a VC game there is no Brick risk from deleting/moving the app. Tiramisu allows users to change the Boot Title of the system after installation

Later in September 2022 the first public beta for the new Aroma environment was released. Aroma used the same exploit and EnvironmentLoader as Tiramisu enabling easy migration between the two. Aroma introduced Modules , new Plugin System, and a new Homebrew app format .wuhb. Aroma dropped support of .elf homebrew application in favor of .rpx and .wuhb. Aroma was the first Homebrew method/Environment to drop support for the Homebrew Launcher in favor of Launching Homebrew from the Wii U Menu directly

Many homebrew applications that run via the Homebrew Launcher (or Wii U Menu on Aroma) have been collected and hosted on fortheusers.org. These hosted applications can be downloaded directly on the Wii U using The Homebrew App Store app in the repository. The Wii U's built-in emulated Wii environment (often nicknamed vWii or Wii Mode) is capable of running Wii homebrew, such as The Homebrew Channel. However, vWii is much more fragile than a real Wii console and has a higher chance of being rendered inoperable if dangerous software is used. Also, due to changes made to the Wii operating system in vWii mode, previous exploits that utilized the Wii Menu itself to load the HackMii Installer, such as Letterbomb, do not work on vWii. The only ways to hack vWii without one of the exploit games is by using applications called wuphax or Compat Installer. Wuphax uses the public Wii U IOSU exploit to temporarily inject the HackMii installer into the Mii Channel so that The Homebrew Channel can be installed without an exploit game. Compat Installer uses the public IOSU exploit to install the Open-Source Homebrew Channel from Wii U Mode. Nintendo Switch

The Nintendo Switch was first exploited by a team called ReSwitched. On March 14, 2017, about 11 days after the console's release, the team released their exploit to the public. This exploit was called PegaSwitch. It did not allow true homebrew to run on the system at the time, but it did let developers look for other security bugs in the system. Later that year on October 1, ReSwitched announced new exploits and tools that allowed homebrew developers to start working on homebrew programs for the system before they could be launched. At the 34th Chaos Communication Congress, hackers Plutoo, Derrek, and Naehrwert announced a kernel exploit for the system (which they said would not be released) and said that a homebrew launcher was coming soon. On January 7, 2018, Twitter user fail0verflow uploaded a video showing a simple side-scrolling text program before booting the system, which shows that there was a way to run unsigned code before boot-up, opening up possibilities for new programs focused on development. On March 29, 2018, SciresM, a respected developer in the homebrew community, announced that a custom firmware called "Atmosphere" would be released for all available firmware versions at the time. Firmware above and including 1.0.0 are hackable via a cold boot exploit known as Fusée Gelée, developed by the ReSwitched team. This exploit takes advantage of a bug in the boot ROM on the Tegra X1 chip used by the Nintendo Switch. The exploit was also independently discovered by fail0verflow under the name ShofEL2. Firmware version 1.0.0 is hackable via a TrustZone exploit known as Jamais Vu. Atmosphere released its first public build in October 2018. Currently, the Nintendo Switch has both a homebrew launcher and custom firmware. Access to a Japanese copy of Puyo Puyo Tetris is needed to install CFW on version 1.0.0. The ability to install homebrew on the Nintendo Switch is also dependent on the version of the console. As consoles that were released after June 2018 with version 4.1.0 shipped have their boot ROMs patched against the full control TrustZone exploit that would allowed for homebrew to be installed, it is currently not possible to install homebrew to the HAC-001(-01) revision of the Nintendo Switch, the Nintendo Switch Lite, and the Nintendo Switch – OLED Model without the purchase and installation of a specialized modchip which replicates the vulnerability of the Tegra X1 chip. Xbox One, Series X, and Series S 

The Xbox One and Series X/S have a Dev Mode which, though intended to be used for retail game development, can be used to run unsigned homebrew software. It can be enabled on any retail Xbox console. Dev Mode disables retail games and software while enabled. Homebrew software can be developed as Universal Windows Platform applications, allowing many programs designed to run on desktop editions of Windows 10 to run on the console including console emulators. In order to activate developer mode, one has to first register for an app developer account, which has a fee of $19. The Xbox One and Series X/S have had limited exploits found, but very few have allowed homebrew, and all known exploits have been patched as of October 2022. See also
Fangame
Hacking of consumer electronics
Mod (video gaming)
Modchip
ROM hacking
Jailbreaking
Softmod

References

External links
 Retro Video Gamer - publisher of Homebrew Heroes book
 SSEGA Sega Genesis Homebrew section
 gbadev.org
 Skeetendo 
 VGB
 Main Page - N64Brew Wiki, which provides accurate documentation of the Nintendo 64, its peripherals, and related software. Awesome N64 Development - A maintained list of N64 development resources, toolchains, and N64 homebrew-related programs. Libdragon - Official website for the Nintendo 64 opensource SDK, known as LibDragon. Custom firmware
 
Video game development
Dedicated consoles