Skip to content

About

VGM parser/builder for Rust

Resources

Stars

3 stars

Watchers

0 watching

Forks

Latest commit

 

History

482 Commits

Folders and files

Repository files navigation

chipstream

crates.io docs.rs

chipstream is a toolkit suite for running and working with retro sound chips. This repository is organized as a monorepo containing multiple crates and provides utilities for building and parsing register-write logs such as the VGM (Video Game Music) format.

Crates

Crate Type Description Documentation
chipstream lib Sound engine for games; currently in early development. README
chipstream-cli bin VGM/VGZ, MDX, and MML player using chipstream. README
mmlx lib MML parser and compiler; currently supports MXDRV MML input and MDX output. README
soundlog lib Builds and parses VGM data and supports sound-chip log processing. README
soundlog-cli bin Command-line tools for working with soundlog-supported formats. README
soundlog-gui bin soundlog-inspector GUI for inspecting soundlog-supported audio files. README

Quick Start

Installation

Install the soundlog binary from this repository with Cargo:

Rust 1.97.1 or later is required.

To build the VGM player and play a file:

cargo run --release -p chipstream-cli --bin csplay -- example.vgm

Linux builds require ALSA development headers; see the chipstream-cli README.

cargo install --git https://github.com/h1romas4/chipstream --bin soundlog --locked --force soundlog-cli

Optionally install the GUI inspector:

cargo install --git https://github.com/h1romas4/chipstream --bin soundlog-inspector --locked --force soundlog-gui

soundlog

soundlog --help

Command-line tools for soundlog.

Usage: soundlog <COMMAND>

Commands:
  test         Test a VGM or VGZ file with a parse/build round trip and display its header
  redump       Re-dump a VGM or VGZ file, expanding DAC streams to chip writes
  parse        Parse a VGM or VGZ file and display its commands, offsets, and lengths
  completions  Generate shell completion scripts
  stream       Stream a VGM or VGZ file and display its register writes and detected events
  mdx          MDX file operations
  pdx          PDX file operations
  help         Print this message or the help of the given subcommand(s)

Options:
  -h, --help     Print help
  -V, --version  Print version

For detailed usage instructions, please refer to crates/soundlog-cli.

soundlog-inspector

For GUI usage instructions, please refer to crates/soundlog-gui.

License

Each crate in this repository follows its own LICENSE file or the license field declared in its Cargo.toml.

About

VGM parser/builder for Rust

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages