NPLL: Difference between revisions
Jump to navigation
Jump to search
m fix SMC link |
Add v0.6 updates and some more general info |
||
| (2 intermediate revisions by the same user not shown) | |||
| Line 3: | Line 3: | ||
NPLL is the [[Nintendo]] PowerPC Linux Loader - a bootloader that functions as a universal PowerPC binary, executable on all 3 of Nintendo's PowerPC consoles: the [[GameCube]], [[Wii]], and [[Wii U]]. It was created by [[User:Techflash|Techflash]] to replace the legacy [[Gumboot]], due to its many shortcomings. It is currently the primary bootloader of the [[Wii-Linux]] project. | NPLL is the [[Nintendo]] PowerPC Linux Loader - a bootloader that functions as a universal PowerPC binary, executable on all 3 of Nintendo's PowerPC consoles: the [[GameCube]], [[Wii]], and [[Wii U]]. It was created by [[User:Techflash|Techflash]] to replace the legacy [[Gumboot]], due to its many shortcomings. It is currently the primary bootloader of the [[Wii-Linux]] project. | ||
As of | As of October 14th, 2026, NPLL is currently at version v0.6. | ||
== Features == | == Features == | ||
| Line 11: | Line 11: | ||
** Wii | ** Wii | ||
** Wii U | ** Wii U | ||
* Environment (what loaded NPLL) support | |||
** Notes | |||
*** This is a non-exhaustive list, it is quite likely that other loaders work and are not mentioned here | |||
*** Not all loaders support all output binary formats of NPLL, see [https://github.com/Wii-Linux/NPLL#output-files the README on GitHub] for more information | |||
** GameCube | |||
*** Swiss | |||
** Wii | |||
*** [[Homebrew Channel]] | |||
*** [[MINI]] (via [[BootMii]]-as-boot2 or -as-IOS, or exploits which load it) | |||
*** NDEV Boot Program | |||
*** Priiloader | |||
*** [https://hackmii.com/2008/08/open-source-apploader-iso-template/ FOSS Apploader] (via System Menu) | |||
*** Installed as TitleID 1-2 (System Menu), loaded by [[IOS]] | |||
** Wii U | |||
*** [[linux-loader]] | |||
* Graphics support | * Graphics support | ||
** [[GameCube Hardware/Flipper|Flipper]]/[[Wii Hardware/Hollywood|Hollywood]] Video Interface framebuffer | ** [[GameCube Hardware/Flipper|Flipper]]/[[Wii Hardware/Hollywood|Hollywood]] Video Interface framebuffer | ||
** [[Wii U Hardware/Latte|Latte]] R700 framebuffer | *** Mode autodetection (similar to libogc homebrew, and official SDK software) from: | ||
**** GameCube: | |||
***** Existing video state | |||
***** IPL ROM | |||
**** Wii: | |||
***** Existing video state | |||
***** SYSCONF and setting.txt from the [[SFFS]] | |||
** [[Wii U Hardware/Latte|Latte]] R700 framebuffer (both TV and [[Wii U Hardware/DRC|DRC]]) | |||
* Text console output support | * Text console output support | ||
** Framebuffer text console | ** Framebuffer text console with multi-framebuffer output support | ||
** [[USB Gecko]] text console over EXI | ** [[USB Gecko]] text console over EXI | ||
* Block storage support | * Block storage support | ||
| Line 23: | Line 44: | ||
** SD Cards in an [[SD Gecko]] over EXI | ** SD Cards in an [[SD Gecko]] over EXI | ||
** [[Wii Hardware/NAND|NAND]] over Hollywood/Latte [[Hardware/NAND Interface|NAND Interface]] | ** [[Wii Hardware/NAND|NAND]] over Hollywood/Latte [[Hardware/NAND Interface|NAND Interface]] | ||
** [[NROM]], DVD-ROM (in compatible drives), and DVD-R (in compatible drives), over [[ | ** [[NROM]], DVD-ROM (in compatible drives), and DVD-R (in compatible drives), over [[Hardware/Drive Interface|DI]] on the Wii | ||
** NROM, miniDVD-ROM, and miniDVD-R over [[ | ** NROM, miniDVD-ROM, and miniDVD-R over [[Hardware/Drive Interface|DI]] on the GameCube | ||
** USB Mass Storage | ** USB Mass Storage | ||
* Filesystem support | * Filesystem support | ||
| Line 31: | Line 52: | ||
** ISO9660 on optical storage media | ** ISO9660 on optical storage media | ||
** [[SFFS]] on NAND | ** [[SFFS]] on NAND | ||
** [[WFS]] on [[Wii U Hardware/eMMC|Wii U eMMC/MLC]] | |||
* Partition table support | * Partition table support | ||
** MBR | ** MBR | ||
*** Extended partitions | *** Extended partitions | ||
** GPT | ** GPT | ||
** Statically | ** Statically defined (e.g. on NAND) | ||
** No partitions (use whole device) | ** No partitions (use whole device) | ||
* Input support | * Input support | ||
| Line 42: | Line 64: | ||
** [[GameCube Controller]], GameCube Keyboard, and N64 Controller, via Flipper/Hollywood [[Hardware/Serial Interface|Serial Interface]] | ** [[GameCube Controller]], GameCube Keyboard, and N64 Controller, via Flipper/Hollywood [[Hardware/Serial Interface|Serial Interface]] | ||
** USB HID Keyboards, via Hollywood/Latte OHCI/EHCI | ** USB HID Keyboards, via Hollywood/Latte OHCI/EHCI | ||
** DRH (Wii U GamePad Host) via Hollywood/Latte OHCI | ** [[Wii U Hardware/DRH|DRH]] (Wii U GamePad Host) via Latte EHCI | ||
** [[Wii Remote|Wii Remotes]] via Hollywood/Latte OHCI | |||
* Executable support | * Executable support | ||
** Standard ELF executable (incl. Linux <code>zImage</code>) | ** Standard ELF executable (incl. Linux <code>zImage</code>) | ||
** Linux <code>vmlinux</code> | ** Linux <code>vmlinux</code> | ||
** Standard DOL executable | ** Standard DOL executable | ||
** Wii channel | |||
* Config format support | * Config format support | ||
** Legacy Gumboot config (<code>gumboot.lst</code>) | ** Legacy Gumboot config (<code>gumboot.lst</code>) | ||
** NPLL config (<code>npll.cfg</code>) | ** NPLL config (<code>npll.cfg</code>) | ||
* Return-to-loader stub support | |||
** GameCube ([[Swiss]]-compatible) | |||
** Wii ([[Homebrew Channel|HBC]]-compatible) | |||
Latest revision as of 07:54, 14 October 2026


NPLL is the Nintendo PowerPC Linux Loader - a bootloader that functions as a universal PowerPC binary, executable on all 3 of Nintendo's PowerPC consoles: the GameCube, Wii, and Wii U. It was created by Techflash to replace the legacy Gumboot, due to its many shortcomings. It is currently the primary bootloader of the Wii-Linux project.
As of October 14th, 2026, NPLL is currently at version v0.6.
Features
[edit | edit source]- Console support
- GameCube
- Wii
- Wii U
- Environment (what loaded NPLL) support
- Notes
- This is a non-exhaustive list, it is quite likely that other loaders work and are not mentioned here
- Not all loaders support all output binary formats of NPLL, see the README on GitHub for more information
- GameCube
- Swiss
- Wii
- Homebrew Channel
- MINI (via BootMii-as-boot2 or -as-IOS, or exploits which load it)
- NDEV Boot Program
- Priiloader
- FOSS Apploader (via System Menu)
- Installed as TitleID 1-2 (System Menu), loaded by IOS
- Wii U
- Notes
- Graphics support
- Text console output support
- Framebuffer text console with multi-framebuffer output support
- USB Gecko text console over EXI
- Block storage support
- Filesystem support
- FAT + exFAT, via FatFs, on standard storage media
- ext2/3/4, via lwext4, on standard storage media
- ISO9660 on optical storage media
- SFFS on NAND
- WFS on Wii U eMMC/MLC
- Partition table support
- MBR
- Extended partitions
- GPT
- Statically defined (e.g. on NAND)
- No partitions (use whole device)
- MBR
- Input support
- Wii front buttons via Hollywood GPIO and Processor Interface
- Wii U front buttons via Wii U SMC
- GameCube Controller, GameCube Keyboard, and N64 Controller, via Flipper/Hollywood Serial Interface
- USB HID Keyboards, via Hollywood/Latte OHCI/EHCI
- DRH (Wii U GamePad Host) via Latte EHCI
- Wii Remotes via Hollywood/Latte OHCI
- Executable support
- Standard ELF executable (incl. Linux
zImage) - Linux
vmlinux - Standard DOL executable
- Wii channel
- Standard ELF executable (incl. Linux
- Config format support
- Legacy Gumboot config (
gumboot.lst) - NPLL config (
npll.cfg)
- Legacy Gumboot config (
- Return-to-loader stub support