Crates.io | xmrs |
lib.rs | xmrs |
version | 0.8.5 |
source | src |
created_at | 2023-03-12 16:14:42.698424 |
updated_at | 2024-10-20 21:57:34.981586 |
description | A library to edit SoundTracker data with pleasure |
homepage | |
repository | https://codeberg.org/sbechet/xmrs |
max_upload_size | |
id | 808145 |
size | 312,665 |
A no_std library to edit Sound Tracker data with pleasure.
Because "Representation is the Essence of Programming".
For now MOD Amiga Modules, S3M Scream Tracker III and XM FastTracker II files are supported.
Rob Hubbard C64 SID import is a WIP.
Useful struct parts:
To edit data, use Module
struct.
You can serialize Module
using serde bincode (see std
feature).
Use import_mod
feature
AmigaModule
struct using AmigaModule::load(&amiga)
Module
using .to_module()
Use import_s3m
feature
S3mModule
struct using S3mModule::load(&s3m)
Module
using .to_module()
Use import_xm
feature
XmModule
struct using XmModule::load(&XM)
Module
using .to_module()
Module
to XmModule
: XmModule::from_module(&module)
XmModule
save()
fnNote: You can only save InstrDefault
in XM fileformat.
micromath is used by default in no_std. If you prefer libm, use cargo build --no-default-features --features=libm --release
.
if you want to use std feature use cargo build --no-default-features --features=std --release
if you want to test examples use cargo build --no-default-features --features=std,demo --release