I know you're not too interested in performance here, but replacing DataView with a Uint8Array will probably get you a 10x+ win - DataView is extremely slow and V8 can't optimize calls to Program.getUint8(PC) in the same way that it can optimize Program[PC].