I started one in JavaScript (As an exercise to learn JS beyond DOM manipulation):
https://github.com/tscho/dcpu16-js
I checked your code, fixed a few things. It now works for: 7c01 0030 7de1 1000 0020 7803 1000 https://github.com/fbulens/dcpu16-js
I'll continue tomorrow (Europe here).