engine.interpreter.on( 'post-instruction', e => { console.log( [ '[instruction]', formatAddress( e.address, 16 ), formatHexadecimal( e.opcode, 16 ), 'rom:' + formatHexadecimal( engine.environment.mbcRomBank, 8 ), 'ram:' + formatHexadecimal( engine.environment.mbcRamBank, 8 ), 'ime:' + formatHexadecimal( engine.environment.cpuInterruptFeature, 8 ), register( 'af', 16 ), register( 'bc', 16 ), register( 'de', 16 ), register( 'hl', 16 ), register( 'pc', 16 ), register( 'sp', 16 ), memory( 0x9190 ) ].join( ' ' ) ); } );
var memory = ( address ) => formatHexadecimal( address, 16, false ) + ':' + formatHexadecimal( engine.mmu.readUint8( address ), 8 );
var register = ( name, size ) => name + ':' + formatHexadecimal( engine.environment[ name ], size );