-
You can refer to my NES emulator to see how I do it: https://github.com/zer0x64/nestadia/blob/master/nestadia/src/lib.rs
-
InfluxDB
Purpose built for real-time analytics at any scale. InfluxDB Platform is powered by columnar analytics, optimized for cost-efficient storage, and built with open data standards.
-
Although the architecture is a bit different, I did my GBC emulator more recently and solved some of these issues in a cleaner way(which I intend to eventually refactor my NES emulator to change), so it might also be a good reference: https://github.com/zer0x64/gband/blob/master/gband/src/lib.rs
-
moa
An emulator for various m68k and z80 based computers, written in Rust. Currently it has support for the Sega Genesis, TRS-80, and Computie (my own project), with Macintosh support in the works (by transistorfet)
The code is here if you're interested: https://github.com/transistorfet/moa System is the top level component and devices.rs has the traits that System uses to interact with the components. The machines directory has the system definitions that build a specific machine to emulate.