modeco80
b31feab847
By localization, I mean making functions have unsafe blocks where they are actually doing unsafe things, rather than a blanket "unsafe fn", or moving safe operations (or functions made safe by localizing their unsafety) out to safe Rust where possible. This also adds opporturnity to annotate unsafe blocks in a better fashion, which is a nice side benefit.
Also, the helper to get a EGL Device platform display can now select any of the first 16 devices reported. For now this functionality is useless since we hardcode it to do the same thing it did before effectively, but later on it might be a good idea to expose it? Not Sure™️
|
||
---|---|---|
crates | ||
.editorconfig | ||
.gitignore | ||
.rustfmt.toml | ||
Cargo.lock | ||
Cargo.toml | ||
LICENSE | ||
README.md |
retrovnc
A fully headless Libretro frontend that exports a VNC server for display and input.
In layman terms, this lets you play games over VNC. Which isn't all that great, but hey.
This is mostly a "fun project" and consists mostly of code I already wrote.
Dependencies
- A C++ toolchain
- A Rust toolchain.
Building
$ cargo b --release
Usage
Make the following directories where you will run retrovnc in:
config
system
save
These folders are used either by retrovnc or cores to store data.
For the most basic usecase:
$ retrovnc --core <CORE> --rom <ROM>
(see retrovnc --help
for more options)
E.g: to use swanstation (assuming you have placed requirements in the system folder):
retrovnc --core cores/swanstation_libretro.so --rom roms/my_game.cue
After launching a core for the first time, a TOML file in config/ is created to allow you to set core options. You may use this file to set any option given by the core.