#磁盘镜像 #读写 #C64 #扇区 #格式 # BAM #d64

程序+库 dtools

用于操作 Commodore 磁盘镜像的工具集合

2 个版本

新版本 0.1.1 2024 年 8 月 11 日
0.1.0 2024 年 8 月 1 日

#325 in 文件系统

Download history 87/week @ 2024-07-26 34/week @ 2024-08-02 104/week @ 2024-08-09

225 每月下载量

MIT 许可证

30KB
749

dtools

一个基于 Rust 的命令行工具,用于操作 Commodore 64 D64 磁盘镜像,并提供一个用于其他项目的 Rust 库。

功能

  • 创建和格式化 D64 镜像(35 或 40 轨道)
  • 列出、提取和插入文件
  • 读取和写入单个扇区
  • 管理块可用性映射(BAM)
  • PETSCII/ASCII 转换

构建

需要 Rust 1.54 或更高版本。

cargo build --release

二进制文件将在 target/release/dtools 中。

用法

创建新的 D64 镜像

dtools create -f newdisk.d64 -t 35

格式化 D64 镜像

dtools format -f mydisk.d64 -n "MY DISK" -i "01"

列出 D64 镜像上的文件

dtools list -f mydisk.d64

插入文件

dtools insert -f mydisk.d64 -n "MYFILE" -i /path/to/input/file

提取文件

dtools extract -f mydisk.d64 -n "MYFILE" -o /path/to/output/file

读取扇区

dtools read -f mydisk.d64 -t 18 -s 0

写入扇区

dtools write -f mydisk.d64 -t 18 -s 0 -d "0123456789ABCDEF"

显示 BAM

dtools show-bam -f mydisk.d64

查找空闲扇区

dtools find-free-sector -f mydisk.d64

库使用

dtools 也可以在其他的 Rust 项目中作为库使用

use d64lib::{D64, D64Error};

fn main() -> Result {
    let mut d64 = D64::from_file("mydisk.d64")?;
    let files = d64.list_files()?;
    println!("Files on disk: {:?}", files);
    Ok(())
}

贡献

欢迎拉取请求。对于重大更改,请先打开一个问题来讨论您想要更改的内容。

许可证

MIT

依赖

~1.2–1.8MB
~33K SLoC