JSFiddle - React, Tailwind, and code Playground
JavaScript
$.getJSON('https://gbdev.io/gb-opcodes/Opcodes.json', function(data) {
let output = "";
let myCode = ["21", "E4", "DD", "3E", "AA", "77", "23", "77", "3E", "01", "EA", "EA", "DD", "03"];
let pointer = 0;
while(myCode[pointer]){
const id = "0x"+myCode[pointer];
const obj = data.unprefixed[id];
let line = obj.mnemonic;
for(const operand of obj.operands){
if(operand.name == "d8"){
pointer++;
line += ", " + myCode[pointer];
}
else if(operand.name == "d16"){
pointer++;
const last = myCode[pointer]
pointer++;
line += ", " + myCode[pointer]+last;
}
else {
let res = "";
if(!operand.immediate){
res = "(" + operand.name + "),";
}
else {
res = operand.name;
}
line += " " + res;
}
}
console.log(line);
pointer++;
}
console.log(output);
});