 
   // open_rom("./missile-command.gb");
   // open_rom("./tetris.gb");
-  // open_rom("./dr-mario.gb");
+  // open_rom("./opus5.gb");
+  open_rom("./dr-mario.gb");
   // open_rom("./boxxle.gb");
   // open_rom("./super-mario-land.gb");
 


def cpu_step(): uint8 {
  // IF HALT; just return 4 (cycles)
  if HALT {
    return 4;
  }

  // Get next opcode
  let opcode = mmu_next8();

  // Check if valid/known instruction
  if *((optable as *int64) + opcode) == 0 {

    return;
  }

  // GPU Register
  if (address & 0xF0) >= 0x40 and (address & 0xF0) <= 0x70 {
    gpu_write(address, value);
    return;
  }

  // Sound Register
  if (
    (address >= 0xFF10 and address <= 0xFF14) or
