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.
The core library is available for use in other .NET projects with the package 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.Assemble();
if (assembler.HasErrors) {
// abort
}This project is not affiliated with nor endorsed by Nintendo.