Skip to content
This repository has been archived by the owner on Aug 30, 2024. It is now read-only.

Commit

Permalink
doc: update
Browse files Browse the repository at this point in the history
  • Loading branch information
julio4 committed Aug 1, 2024
1 parent 445f6cd commit 20e0391
Showing 1 changed file with 19 additions and 5 deletions.
24 changes: 19 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,30 @@
# minix2-rs

> Highly experimental and incomplete. It was mostly an educational project!
Rust crate for disassembling and interpreting Minix 2 binaries compiled for the 8086 CPU.
It can be used as a virtual machine for Minix 2 binaries.

## Note

This crate is for education purposes only. A partial implementation of the instruction set is provided.

## Features

- Disassembler: read a Minix 2 binary and output the sequence of CPU instructions.
- Interpreter: execute a sequence of CPU instructions and simulate the behavior of the 8086 CPU, including the stack, registers, memory and minix2 system calls.

## Note
## Cli Usage

Compile with `cargo build --release` and run the binary with the path to the minix binary as argument:

This crate is for education pruposes only. A partial implementation of the instruction set is provided.
```sh
./target/release/minix2-rs path-to-binary
```

Alternatively, you can use `cargo run path-to-binary` to run it directly.

## Usage
You can also use the `-m` flag to output the state of the CPU registers and memory after each instruction:

## Library Usage

Read minix binary from file:

Expand Down Expand Up @@ -42,6 +52,10 @@ use minix2_rs::interpreter::Interpretable;
program.interpret();
```

## Documentation

Use `cargo doc --open` to generate and open the documentation in your browser.

## Examples

````sh
Expand Down

0 comments on commit 20e0391

Please sign in to comment.