NetBSD

From Wii-Linux Wiki
Revision as of 00:00, 18 October 2026 by Techflash (talk | contribs) (Linux doesn't do sw color conversion anymore)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
See also: Official NetBSD Website

NetBSD is one of the BSD operating systems, descended from the Berkeley System Distribution. Starting with version 10.0, NetBSD supports the Wii as a first class platform, with further enhancements to hardware support added in version 11.0.

Comparison with Wii-Linux

  • When NetBSD starts from the Homebrew Channel, it can only use MEM1 and part of MEM2, since IOS reserves the upper 12MB. Wii-Linux is able to use all of MEM2, as can NetBSD if started from BootMii.
  • NetBSD's init system is much simpler and lighter than systemd.
  • The Wii-Linux ArchPOWER image has better menu-driven configuration tools. While NetBSD's sysinst can be used for tasks like network configuration, it is not as easy to use as tools like nmtui or ConfigMii.
  • NetBSD's package manager is not included as part of the base system, and has to be installed using sysinst.
  • The framebuffer driver in both Wii-Linux and NetBSD emulates RGB colors, so graphical software doesn't have to be rewritten for the Wii's YUYV framebuffer. NetBSD's driver does this via the GX GPU, using a scratch framebuffer in memory, copying into the EFB (via the CPU) every frame, and then using GX to do the conversion + copy back to the XFB. Linux previously did this via software math. Those 2 approaches have similar performance. Modern Linux versions, however, do this by exposing the RGB linear framebuffer as GX tiled texture, then using an indirect texture to remap the output to appear correct after rendering into the EFB, and thus appearing correct on the display after copying out to the XFB (also using GX).
  • Wii-Linux has more complete hardware support in some areas:
    • Recent versions of Wii-Linux present the EXI bus as SPI, allowing the use of SPI drivers (most notably using the mmc-spi driver for SD Gecko support). NetBSD has a bespoke SPI stack, with driver support limited to the RTC and the USB Gecko.
    • Because NetBSD has no general "game pad" or "joystick" input abstraction, the SI driver simulates a USB hub and presents GameCube controllers as USB game controllers.
    • NetBSD has no GameCube support whatsoever.
  • NetBSD has superior hardware support in other areas:
    • There seems to be a wider array of USB drivers enabled in NetBSD, so many devices will work on NetBSD but not Linux.
    • The NetBSD driver for the Wii's BCM4318 Wi-Fi has been reported to be faster and more stable than Linux's driver (although performance is still not good.)
    • NetBSD has support for Hollywood's AES engine. Allegedly, this is used for accelerating WPA as well as disk encryption.