Babelfish

From WiiBrew
Jump to navigation Jump to search
Babelfish
General
Author(s)fail0verflow
Links
Source


Babelfish is a tool by fail0verflow that was the first nonpersistent custom firmware (CFW) for the Wii. Previous custom firmware simply overwrote every IOS, but was also primarily for piracy purposes, and therefore does not belong on WiiBrew. Babelfish works similar to installing a cIOS in every slot, except this tool actually makes no changes to the NAND.

Technical explanation

To avoid modifying the NAND, Babelfish instead patches the IOS it is told to load on-the-fly such that when __IOS_LaunchNewIOS is called, the IOS loaded is replaced with the same loader stub that initially loaded Babelfish, maintaining the illusion of a cIOS network without causing permanent damage. For this reason, it was initially called "IOS Virus."

Patches

  • Redirects any IOS loaded by __IOS_LaunchNewIOS to Babelfish's loader stub
  • Redirects any IOS reload to the custom loader
  • Sends debug output to USBGecko
  • Custom IPC hooks (made redundant by ahbprot):
    • device_open
    • new_thread
    • ppc_boot
    • arm_boot
    • load_elf