Most emus i found are in C. Writing it in Rust is a good way to learn the lang too i guess, it's become quite a popular lang lately, unexpectedly for me.
It took me around 4 weeks to build the initial emulation code for the DMG Game Boy. Since then I've been working from time to time on improving the structure of the emulator and the Web interface.
You can take a look at the code here https://github.com/joamag/boytacean
We really wanted to create a pure non blocking async IO network library in pure Python without any dependencies. On top of that we also wanted to prove that it's possible to archive 200K HTTP req/s in Python using PyPy with JIT.