Futaba is an open-source, low-level assembler specifically targetting the Super Famicom and Super Nintendo Entertainment System.
Download the .zip file that matches your architecture from the releases page.
If you want to use the core library in your own project, it is avaible as Spannerisms.Futaba on nuget.org.
For extensive documentation of syntax or the command line interface, please see this page.
Generally, you should make one Assembler object per assembly target. The assembler types are optimized for repeated builds of the same file; instantiating a new assembler puts items on the large object heap, which can effect significant performance issues if this induces a collection. Note that the Assembler type is an IDisposable, as it tracks resources in unmanaged memory.
using Assembler assembler = new LoromAssembler("main.asm");
byte[] assembledRom = assembler.Assembler();
if (assembler.HasErrors) {
// abort
}This project is not affiliated with nor endorsed by Nintendo.