Compile your MSX-BASIC programs into ROMs with ease — for use in emulators or real MSX hardware.
Fast, flexible, and open source.
MSXBAS2ROM is a powerful, open-source, cross-platform compiler for MSX-BASIC, developed in C++ within the VSCode IDE.
Designed as a command-line tool (CLI), it offers seamless execution from the terminal and easy integration with any development environment, giving developers full control over compiling their MSX-BASIC programs into ROMs.
On the releases project area you will find binaries and install packages for Linux, Windows (32 and 64 bits) and macOS.
Get a detailed How-To on the Installation project wiki page.
Use command below in a terminal to compile your MSX-BASIC program from plain text code into a ROM file.
msxbas2rom test.basTo test your brand new MSX-BASIC ROM file, use an emulator like WebMSX or OpenMSX:
Run it at command line to get more compiling options:
msxbas2romSee more on the Getting Started project wiki page.
See the current version with command line below:
msxbas2rom -vA Reference Guide can be listed too:
msxbas2rom --docSee the Main project wiki page for more information.
Project specifications, requirements, and architectural decisions are maintained in the openspec/ directory using the OpenSpec format:
openspec/specs/<capability>/spec.md— Capability specifications (lexer, parser, compiler, builder, CLI, ON statements, file handling, sprites handling, architecture, governance, glossary)openspec/changes/— Active and archived changes with proposal, design, and task artifacts
New contributors should start with Architecture and Developer Guide. It explains the layered architecture, the end-to-end compilation pipeline, how the Z80 kernel is built and packed into the ROM, and how to add or change MSX-BASIC statements and functions.
Support us on Patreon, Catarse.me, PayPal or Brazilian PIX, so we can buy AI coding agent token credits and new resources (ex: msx related hardware) to help us to speed up in coding new functionalities and test bug fixes.
See the Support project wiki page for more information.
Follow me on LinkedIn.
- Luciano Cadari (iPlay);
- Mario Cavalcanti (ClubeMSX);
- Pedro de Medeiros;
- Claudio Pinheiro;
- Diogo Patrao;
- Paulo Goncalves;
- Gilberto Taborda;
- Ronaldo Prado;
- Julio Berrincha.
MSXBAS2ROM — Create a ROM file from your old MSX-BASIC code!