diff --git a/README.md b/README.md index b4132a9..664f703 100644 --- a/README.md +++ b/README.md @@ -1 +1,55 @@ -dont ask me why i didnt use nom, i remembered that it existed halfway through +# minix-8086-rs + +minix-8086-rs is a Rust-based toolchain for analyzing and emulating 16-bit MINIX binaries. It includes: +- 📦 a.out Parser: Parses legacy MINIX executables. +- 🛠 8086 Disassembler: Converts 16-bit instructions into an IR. +- 💻 MINIX Emulator: Interprets and executes 8086 MINIX binaries in a simulated environment. + +## Usage + +To compile and run the tool, use Cargo: +``` +cargo build --release +``` + +Or run it directly: +``` +cargo run -- --help +``` + +CLI Options: +``` +$ cargo run -- --help +Simple prgram to diasm and interpret Minix binaries + +Usage: mimix-8086-rs [OPTIONS] + +Commands: + disasm Disassemble the binary into 8086 instructions + interpret Interpret the binary as 8086 Minix + help Print this message or the help of the given subcommand(s) + +Options: + -p, --path Path of the binary + -h, --help Print help + -V, --version Print version +``` + +## Examples + +Disassemble a binary: + +``` +cargo run -- disasm -p ./a.out +``` + +Interpret a binary: +``` +cargo run -- interpret -p ./a.out +``` + +## Status + +This project is under active development and primarily used by me to explore some Intel disassembly and learn some more Rust. +Expect bugs and some missing features. +