Running Linux Inside Animal Crossing on the GameCube

  • Thread starter Thread starter CoolMe
  • Start date Start date
  • Views Views 1,332
  • Replies Replies 1
  • Likes Likes 4

CoolMe

Well-Known Member
Member
GBAtemp Patron
Joined
Apr 16, 2019
Messages
9,475
Reaction score
46,632
Trophies
5
Age
31
XP
54,287
Country
United States
In the GameCube version of Nintendo's Animal Crossing, players can eventually fully upgrade their virtual homes and furnish them to their liking, which is often considered the game's pinnacle. However, thanks to the efforts of "decrazyo", there's now an innovative addition: an x86 emulator capable of booting Linux within the game. This feat utilizes the built-in Nintendo Entertainment System (NES) emulator in Animal Crossing, originally designed to play classic games in the player's virtual space. By configuring this emulator to load custom ROMs from the GameCube's memory card, new possibilities emerge.

Decrazyo crafted an NES ROM that initiates a minimal Linux environment. Instead of rewriting the Embeddable Linux Kernel Subset (ELKS) for the NES's 8-bit CPU, an x86 emulator was incorporated into the ROM. Running an x86 emulator on the NES is challenging, especially concerning performance, as the emulated system operates at a fraction of real-time speed.

During development, the ROM initially caused Animal Crossing to crash due to unsupported features and excessive RAM usage. To address this, decrazyo modified the emulator to align with supported features and patched Animal Crossing to double the in-game emulator's memory allocation.

The end result is a modified version of Animal Crossing running an NES emulator, which in turn runs a ROM containing an x86 emulator that boots a minimal Linux environment, albeit at significantly reduced speed. This project exemplifies the original Animal Crossing's potential as a platform for creative hacking endeavors.



Sources:arrow:: nes86, elks
 
It's a neat trick, but...
To address this, decrazyo modified the emulator to align with supported features and patched Animal Crossing to double the in-game emulator's memory allocation.
This is done using arbitrary code execution. Once you start doing that, you could very well just toss the emulator completely and run some sort of Gamecube-native version of Linux, I presume.


This project exemplifies the original Animal Crossing's potential as a platform for creative hacking endeavors.
There are definitely easier ways to run Gamecube code.
 

Site & Scene News

Popular threads in this forum