wonderful-i8086
Experimental C toolchain for the WonderSwan. Early development.
Known limitations
- Read-only data (const arrays, etc.) will only end up in ROM if declared as
__far
.
- To be more precise, by default, pointers are near pointers. In wonderful-i8086, this means they can only point to the console RAM. To point to SRAM or the console ROM, far pointers must be utilized.
- The WonderWitch target has compilation issues on non-trivial code, due to the necessary logic to handle DS ≠ SS. This is unlikely to be resolved shortly.
- tkchia: "Yes, unfortunately support for %ss ≠ .data code is still extremely hacky and involves some not-quite-reliable deep black magic. (GCC was never quite designed in the first place to work with non-flat address spaces. Plus, the libgcc library was definitely not written with a %ss ≠ .data environment in mind.)" (source)
Installation instructions
Check back later.
Licensing information
All source files have their licensing terms stated in the file itself. Crucially, for runtime components linked with a compiled binary, the licenses are as follows:
Core libraries
Additional libraries