A Javascript based Gameboy ASM compiler
First, import into your module:
let js2gb = require('js2gb');
The js2gb class will compile the ROM.
let rom = new js2gb({ inputs });
The inputs are a <dict> with specific attributes, and is detailed at Inputs.md
The output contained the binary ROM information, as well as a Symbol map.
Based on certain input parameters, it can also write both of those to specific ROM and SYM files
- Data Types - The specific data types and classes utilized by js2gb
- js2gb Inputs - The input arguments for the js2gb constructor
- Header Inputs - The input arguments for the js2gb Header
- Source Context - The global context members acessible to the Source code
- Class Members - The class members details for all js2gb classes
I tried to keep the code as clean and straightforward as possible, undoubtedly at the cost of efficiency.
Once some projects start being build around this, efficiency will become a higher priority
There are no unit tests at this time.
Since it is being built alongside my pokeredjs decompilation, that is used for testing and can be used for code reference