User Tools

Site Tools


wswan:index

This is an old revision of the document!


wswan

The wswan target provides support for targetting the Bandai WonderSwan console. In addition, experimental support is provided for targetting the WonderWitch environment via the wwitch target.

Currently supported languages include:

  • assembly - via binutils-ia16's GNU assembler, using Intel-style opcodes and syntax;
  • C - via gcc-ia16, supporting up to the C11 standard with GNU extensions.

Packages

  • target-wswan - basic support metapackage

Documentation

Tutorial

This is very incomplete and only covers the absolute basics.

Library documentation

  • libws - low-level hardware definitions and functions
  • libwsx - high-level utilities
  • libww - WonderWitch API wrapper, for the wwitch subtarget

Guides

Toolchain documentation

Internal documentation

Subtargets

The wswan target features multiple subtargets:

  • wswan/medium - create a ROM with multiple code segments, the default, stack and static data stored in IRAM;
  • wswan/small - create a ROM with one code segment, slightly faster code but 64KB maximum code limit, stack and static data stored in IRAM;
  • wswan/medium-sram (experimental) - create a ROM with multiple code segments, stack stored in IRAM, static data stored in SRAM;
  • wswan/small-sram (experimental) - create a ROM with one code segment, stack stored in IRAM, static data stored in SRAM;
  • wswan/bootfriend - special subtarget for creating BootFriend executables which execute from RAM.

In addition, there exists an experimental subtarget wwitch for targeting the Freya abstraction layer used by the WonderWitch platform.

wswan/index.1767109535.txt.gz · Last modified: by asie