cardiograph-computer/assemble.js

22 lines
669 B
JavaScript

// Run: `node assemble.js run assembly.asm`
// Debug: `node assemble.js debug assembly.asm`
const fs = require('fs');
const assembler = require('./assembler.js');
const { logMemory } = require('./print-memory.js');
const mode = process.argv[2];
const filename = process.argv[3];
const inputFile_str = fs.readFileSync(filename, 'utf8');
let machineCode;
if (mode === "debug") {
machineCode = assembler.assemble(inputFile_str, true);
console.group("Machine code output");
logMemory(machineCode);
console.groupEnd('Machine code output');
} else {
machineCode = assembler.assemble(inputFile_str);
console.log(machineCode); // TODO print just the numbers
}