It does not have Input (if someone is daring enough to add it - manipulating the registers, I think is the key) or Beeps, and it requires that you install the canvas package for Node JS.
This package requires the following libs
This is to enable out-of-browser canvas's
I use the canvas package inside the Render Video and Pixel Buffer nodes
I also use node-red-contrib-image-tools to display the video
Load the invaders ROM (public domain) - there are a few on the web for CHIP8
The CPU executes various writes to the pixel buffer, and I wait for 80ms after the last write before rendering a frame - this seems to be a good middle ground for smooth video.
I print out the current executing Opcode and Args for that operation (just to feel like a real nerd )
Anyway this was fun - so enjoy
I'm sure some optimisations/improvements can be had
Click the title (this is to allow audio to be played - most browsers require interaction for audio to be allowed) - the video panel should go black
Go back to the flow editor, Inject your chosen ROM (I have included 2)
There are some CPU instructions that I need to fix - but mostly its playable.
To load a new ROM - you have to redo the above steps (you might need to disable/enable the flow - Hey it's a Console being emulated in Node RED, give me a break
Keys for Space Invaders as example.
W - Start new Game / Fire Q - Move Left E - Move Right