User Tools

Site Tools


project:homebrew:wsbootfriend

This is an old revision of the document!


BootFriend is a custom “firmware” solution compatible with the WonderSwan Color and SwanCrystal handheld consoles. It provides a custom splash screen with the following features:

  • Customize the logo through a web editor (including setting a faster boot time),
  • Load .bfb programs to RAM via serial port - this is similar to the GBA's “Multiboot” functionality,
  • Launch Pocket Challenge V2 cartridges on WonderSwan consoles in “pin-strap mode”.
  • Use the installer to “unbrick” consoles with corrupted internal EEPROMs.

Installation

Loading .bfb programs

Loading .bfb programs requires a serial port adapter. Multiple solutions exist:

  • The official RS-232 adapter bundled with the WonderWitch.
  • ExtFriend - DIY, based on the RP2040/Raspberry Pi Pico, can be built at home for about $10-$15.
  • RetroOnyx USB Link Cable - $85 as of writing, high quality.

To load a .bfb program, first initiate a 38400 bps XMODEM file transfer on the PC side, then turn on the console with BootFriend installed. Some guides are available to help:

List of available programs

  • WS Backup Tool - backup/restore boot ROM, game data and save data
  • WSMonitor - rudimentary debugger, allows examining the state of memory and I/O ports before boot ROM lockout. Documentation and source code is available here.

Troubleshooting

If done correctly, the PC should notify you that a transfer has started. During this time, the handheld's screen should populate with dots. Each dot corresponds to one block - 128 bytes - of data.

If a letter appears, that signifies an error. Some errors are recoverable and will result in an automatic attempt to retry transfer; others will cause the transfer to stop.

  • A, B, K - corrupt information in transferred block,
  • C - transfer cancelled by sending side,
  • D - received file has invalid format,
  • R - the received file's requested RAM area is out of permitted range.

Other features

project/homebrew/wsbootfriend.1711722326.txt.gz · Last modified: 2024/03/29 14:25 by asie