Crates.io | image-rider |
lib.rs | image-rider |
version | 0.7.3 |
source | src |
created_at | 2022-07-11 03:21:21.007128 |
updated_at | 2024-11-06 16:59:55.306797 |
description | Disk image and ROM image parser |
homepage | https://github.com/jgerrish/image-rider |
repository | https://github.com/jgerrish/image-rider |
max_upload_size | |
id | 623522 |
size | 215,228 |
This is a library of parsers built using the nom parsing framework to parse disk images and ROMs.
The following formats are currently detected. Parsing is not fully implemented for any of them yet.
D64: A Commodore 64 D64 Disk Image DSK: Apple ][ DOS Disk Image NIB: Apple ][ Nibble encoded Disk Image STX: An Atari ST STX Disk Image
You can run the example application with the following command:
RUST_LOG=debug cargo run --example parser -- --input FILENAME
To save track or sector image data (for example, the FAT filesystem embedded in a STX image):
RUST_LOG=debug cargo run --example parser -- --input INFILENAME --output OUTFILENAME
There are several sanity checks in the code to panic or exit the parsing process if an image format is found that isn't known about or currently supported. In addition, checksums failures usually cause parsing failures.
To disable checksum checks, pass the --ignore-checksums command line flag to the parser example:
RUST_LOG=debug cargo run --example parser -- --ignore-checksums --input FILENAME
The usual Rust build process and commands are used to build and test this program:
$ cargo build $ cargo test
You can create your own ROM or disk image parser.
Building a parser loading system that uses dynamic loading roadmap. In the meantime, here are the steps to add a new parser called foo: