#emulation #mame #pinmame #virtual-pinball

pinmame-nvram

Rust library handling PinMAME NVRAM files

17 releases

0.3.11 Feb 1, 2025
0.3.10 Jan 24, 2025
0.3.6 Dec 27, 2024
0.2.2 Dec 9, 2024
0.1.1 Dec 4, 2024

#354 in Game dev

Download history 262/week @ 2024-11-30 561/week @ 2024-12-07 257/week @ 2024-12-14 391/week @ 2024-12-21 130/week @ 2024-12-28 157/week @ 2025-01-04 300/week @ 2025-01-11 92/week @ 2025-01-18 198/week @ 2025-01-25 211/week @ 2025-02-01 53/week @ 2025-02-08

583 downloads per month

MIT license

355KB
2.5K SLoC

pinmame-nvram

Rust library handling PinMAME NVRAM files.

Usage

Add the pinmame-nvram dependency to your project

cargo add pinmame-nvram

Example code for reading scores:

use pinmame_nvram::Nvram;

fn main() {
    let mut nvram = Nvram::open(Path::new("afm_113b.nv")).unwrap().unwrap();
    let scores = nvram.read_highscores().unwrap();

    for score in &scores {
        println!("{} {} {}", score.label.unwrap(), score.initials, score.score);
    }
}

Attributions

This library makes use of the PinMAME NVRAM Maps project. The maps are embedded in the library and are used to look up values in the nvram files.

Dependencies

~8MB
~297K SLoC