#music #gameboy #chiptune #lsdj

bin+lib lsdj-tools

一套用于处理 LSDJ 文件的工具

1 个不稳定版本

0.1.0 2022年4月29日

#46 in #gameboy

MIT/Apache

79KB
1.5K SLoC

lsdj-tools

LittleSoundDj,简称 LSDJ,是专为原始 任天堂 Game Boy 开发的流行音乐追踪软件。虽然该手持游戏机最初于 1989 年发布,但 (芯片音乐) 音乐家们仍然使用其硬件来创建和演奏电子音乐。

虽然 LSDJ 内置文件系统来管理曲目,但你需要工具来提取单个文件以进行备份或从导出的曲目构建新的保存文件。这个包提供了一个命令行工具,可以做到这一点。

检查

检查 LSDJ .sav 和 .lsdsng 文件,或甚至检查整个目录的内容

USAGE:
    lsdj-tools inspect [OPTIONS] [PATH]...

ARGS:
    <PATH>...    The path(s) to inspect

OPTIONS:
    -h, --help         Print help information
    -r, --recursive    Search the folder recursively
    -V, --version      Print version information

示例

4ntler@mbp > lsdj-tools inspect bangers.sav
Mem 144/192    [==================      ]
  0 | YOKAI    | v027 | f005
  1 | ASPHALT  | v019 | f005
  2 | NEWSHOES | v014 | f005
  3 | FUNGAL   | v019 | f005
  4 | LOGCBN   | v015 | f005
  5 | NOSTALGA | v031 | f005
  6 | GJITSU   | v026 | f005
  7 | PRISTINE | v016 | f005
  8 | KALEIDO  | v024 | f005
  9 | CACTUAR  | v046 | f005
 10 | DODGBALL | v018 | f005
 11 | DNTSWEAT | v025 | f005
 12 | HONEY    | v031 | f005

导出

从 .sav 文件中导出 .lsdsng

USAGE:
    lsdj-tools export [OPTIONS] <PATH> [INDEX]...

ARGS:
    <PATH>        The path to the save file to export from
    <INDEX>...    Indices of the songs that should be exported. No indices means all songs

OPTIONS:
    -d, --decimal            Use decimal version numbers, instead of hexadecimal
    -h, --help               Print help information
    -o, --output <OUTPUT>    The destination folder to place the songs
    -p, --output-pos         Prepend the song position to the start of the filename
    -v, --output-version     Append the song version to the end of the filename
    -V, --version            Print version information

示例

4ntler@mbp > lsdj-tools export -pv bangers.sav
00. YOKAI    => 00_YOKAI_v1B.lsdsng
01. ASPHALT  => 01_ASPHALT_v13.lsdsng
02. NEWSHOES => 02_NEWSHOES_v0E.lsdsng
03. FUNGAL   => 03_FUNGAL_v13.lsdsng
04. LOGCBN   => 04_LOGCBN_v0F.lsdsng
05. NOSTALGA => 05_NOSTALGA_v1F.lsdsng
06. GJITSU   => 06_GJITSU_v1A.lsdsng
07. PRISTINE => 07_PRISTINE_v10.lsdsng
08. KALEIDO  => 08_KALEIDO_v18.lsdsng
09. CACTUAR  => 09_CACTUAR_v2E.lsdsng
10. DODGBALL => 10_DODGBALL_v12.lsdsng
11. DNTSWEAT => 11_DNTSWEAT_v19.lsdsng
12. HONEY    => 12_HONEY_v1F.lsdsng

导入

将 .lsdsng 导入 .sav 文件

USAGE:
    lsdj-tools import --output <OUTPUT> [SONG]...

ARGS:
    <SONG>...    Paths to the songs that should be imported into a save

OPTIONS:
    -h, --help               Print help information
    -o, --output <OUTPUT>    The output path
    -V, --version            Print version information

示例

4ntler@mbp > lsdj-tools import banger1.lsdsng banger2.lsdsng -o ./test.sav
00 => banger1.lsdsng
01 => banger2.lsdsng
Wrote test.sav

支持

如果你喜欢这个包并想支持我,可以考虑购买一些 我的音乐

依赖项

~5–14MB
~189K SLoC