An assembler for retro systems. It converts assembly source or an abstract syntax tree (AST) to machine code and ROM files.
- 6502 assembly - Assembles source for NES output
- Library API - Assembles source text or an AST from Go programs
- Configuration files - Uses ca65-style files to define memory and segments
- Macros and conditionals - Processes macros and conditional assembly directives
- Expressions - Evaluates arithmetic and bitwise expressions in assembly source
| System | CPU | Status |
|---|---|---|
| NES | 6502 | Supported |
Download a binary from Releases, or install from source with Go 1.25 or newer:
go install github.com/retroenv/retroasm/cmd/retroasm@latestAssemble a 6502 source file for NES. Use -o to set the output file:
retroasm -o game.nes program.asmUse a ca65-style configuration file to set the memory layout:
retroasm -c memory.cfg -o game.nes program.asmSee the library guide for Go integration. Run
retroasm -h to see all command options.