libretro's C API is designed around requiring state to exist in some global variables. This is gross, and prevents multiple instances existing within the same process. The outcome of this task would look like a proof of concept of a multiprocess application with seamless shared memory access via a supervisor process, all in Rust. Likely will be highly specific to the OS it's running on, so the target will be Linux. There must be shared memory locking capability.
libretro's C API is designed around requiring state to exist in some global variables. This is gross, and prevents multiple instances existing within the same process. The outcome of this task would look like a proof of concept of a multiprocess application with seamless shared memory access via a supervisor process, all in Rust. Likely will be highly specific to the OS it's running on, so the target will be Linux. There must be shared memory locking capability.