├── .github └── workflows │ ├── embedded-builds.yml │ ├── fmt.yml │ └── host-builds.yaml ├── .gitignore ├── CHANGELOG.md ├── LICENSE-APACHE ├── LICENSE-MIT ├── README.md ├── RELEASE.md ├── assets └── diagram-002.jpg ├── common └── phm-icd │ ├── .gitignore │ ├── Cargo.toml │ └── src │ └── lib.rs ├── examples └── feature-demos │ ├── Cargo.lock │ ├── Cargo.toml │ ├── README.md │ └── src │ └── bin │ ├── i2c-oled.rs │ ├── i2c.rs │ ├── spi.rs │ └── uart.rs ├── firmware ├── blackpill-phm │ ├── .cargo │ │ └── config.toml │ ├── .gitignore │ ├── .vscode │ │ └── settings.json │ ├── Cargo.lock │ ├── Cargo.toml │ ├── README.md │ ├── memory.x │ ├── src │ │ ├── lib.rs │ │ └── main.rs │ └── tests │ │ └── integration.rs ├── nrf52-phm │ ├── .cargo │ │ └── config.toml │ ├── .gitignore │ ├── .vscode │ │ └── settings.json │ ├── Cargo.toml │ ├── README.md │ ├── src │ │ ├── lib.rs │ │ ├── main.rs │ │ ├── monotonic.rs │ │ └── uart.rs │ └── tests │ │ └── integration.rs ├── phm-worker │ ├── Cargo.lock │ ├── Cargo.toml │ └── src │ │ └── lib.rs └── rp2040-phm │ ├── .cargo │ └── config.toml │ ├── .gitignore │ ├── .vscode │ └── settings.json │ ├── Cargo.lock │ ├── Cargo.toml │ ├── README.md │ ├── build.rs │ ├── memory.x │ ├── src │ ├── lib.rs │ └── main.rs │ └── tests │ └── integration.rs └── host ├── phm-cli ├── Cargo.lock ├── Cargo.toml ├── README.md └── src │ ├── cli.rs │ └── main.rs └── phm ├── Cargo.lock ├── Cargo.toml └── src └── lib.rs /.github/workflows/embedded-builds.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/.github/workflows/embedded-builds.yml -------------------------------------------------------------------------------- /.github/workflows/fmt.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/.github/workflows/fmt.yml -------------------------------------------------------------------------------- /.github/workflows/host-builds.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/.github/workflows/host-builds.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | **/target/* 2 | 3 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /LICENSE-APACHE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/LICENSE-APACHE -------------------------------------------------------------------------------- /LICENSE-MIT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/LICENSE-MIT -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/README.md -------------------------------------------------------------------------------- /RELEASE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/RELEASE.md -------------------------------------------------------------------------------- /assets/diagram-002.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/assets/diagram-002.jpg -------------------------------------------------------------------------------- /common/phm-icd/.gitignore: -------------------------------------------------------------------------------- 1 | Cargo.lock 2 | 3 | -------------------------------------------------------------------------------- /common/phm-icd/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/common/phm-icd/Cargo.toml -------------------------------------------------------------------------------- /common/phm-icd/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/common/phm-icd/src/lib.rs -------------------------------------------------------------------------------- /examples/feature-demos/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/examples/feature-demos/Cargo.lock -------------------------------------------------------------------------------- /examples/feature-demos/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/examples/feature-demos/Cargo.toml -------------------------------------------------------------------------------- /examples/feature-demos/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/examples/feature-demos/README.md -------------------------------------------------------------------------------- /examples/feature-demos/src/bin/i2c-oled.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/examples/feature-demos/src/bin/i2c-oled.rs -------------------------------------------------------------------------------- /examples/feature-demos/src/bin/i2c.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/examples/feature-demos/src/bin/i2c.rs -------------------------------------------------------------------------------- /examples/feature-demos/src/bin/spi.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/examples/feature-demos/src/bin/spi.rs -------------------------------------------------------------------------------- /examples/feature-demos/src/bin/uart.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/examples/feature-demos/src/bin/uart.rs -------------------------------------------------------------------------------- /firmware/blackpill-phm/.cargo/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/blackpill-phm/.cargo/config.toml -------------------------------------------------------------------------------- /firmware/blackpill-phm/.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | Cargo.lock 3 | -------------------------------------------------------------------------------- /firmware/blackpill-phm/.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/blackpill-phm/.vscode/settings.json -------------------------------------------------------------------------------- /firmware/blackpill-phm/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/blackpill-phm/Cargo.lock -------------------------------------------------------------------------------- /firmware/blackpill-phm/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/blackpill-phm/Cargo.toml -------------------------------------------------------------------------------- /firmware/blackpill-phm/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/blackpill-phm/README.md -------------------------------------------------------------------------------- /firmware/blackpill-phm/memory.x: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/blackpill-phm/memory.x -------------------------------------------------------------------------------- /firmware/blackpill-phm/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/blackpill-phm/src/lib.rs -------------------------------------------------------------------------------- /firmware/blackpill-phm/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/blackpill-phm/src/main.rs -------------------------------------------------------------------------------- /firmware/blackpill-phm/tests/integration.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/blackpill-phm/tests/integration.rs -------------------------------------------------------------------------------- /firmware/nrf52-phm/.cargo/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/nrf52-phm/.cargo/config.toml -------------------------------------------------------------------------------- /firmware/nrf52-phm/.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | Cargo.lock 3 | -------------------------------------------------------------------------------- /firmware/nrf52-phm/.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/nrf52-phm/.vscode/settings.json -------------------------------------------------------------------------------- /firmware/nrf52-phm/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/nrf52-phm/Cargo.toml -------------------------------------------------------------------------------- /firmware/nrf52-phm/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/nrf52-phm/README.md -------------------------------------------------------------------------------- /firmware/nrf52-phm/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/nrf52-phm/src/lib.rs -------------------------------------------------------------------------------- /firmware/nrf52-phm/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/nrf52-phm/src/main.rs -------------------------------------------------------------------------------- /firmware/nrf52-phm/src/monotonic.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/nrf52-phm/src/monotonic.rs -------------------------------------------------------------------------------- /firmware/nrf52-phm/src/uart.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/nrf52-phm/src/uart.rs -------------------------------------------------------------------------------- /firmware/nrf52-phm/tests/integration.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/nrf52-phm/tests/integration.rs -------------------------------------------------------------------------------- /firmware/phm-worker/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/phm-worker/Cargo.lock -------------------------------------------------------------------------------- /firmware/phm-worker/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/phm-worker/Cargo.toml -------------------------------------------------------------------------------- /firmware/phm-worker/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/phm-worker/src/lib.rs -------------------------------------------------------------------------------- /firmware/rp2040-phm/.cargo/config.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/rp2040-phm/.cargo/config.toml -------------------------------------------------------------------------------- /firmware/rp2040-phm/.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | Cargo.lock 3 | -------------------------------------------------------------------------------- /firmware/rp2040-phm/.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/rp2040-phm/.vscode/settings.json -------------------------------------------------------------------------------- /firmware/rp2040-phm/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/rp2040-phm/Cargo.lock -------------------------------------------------------------------------------- /firmware/rp2040-phm/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/rp2040-phm/Cargo.toml -------------------------------------------------------------------------------- /firmware/rp2040-phm/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/rp2040-phm/README.md -------------------------------------------------------------------------------- /firmware/rp2040-phm/build.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/rp2040-phm/build.rs -------------------------------------------------------------------------------- /firmware/rp2040-phm/memory.x: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/rp2040-phm/memory.x -------------------------------------------------------------------------------- /firmware/rp2040-phm/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/rp2040-phm/src/lib.rs -------------------------------------------------------------------------------- /firmware/rp2040-phm/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/rp2040-phm/src/main.rs -------------------------------------------------------------------------------- /firmware/rp2040-phm/tests/integration.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/firmware/rp2040-phm/tests/integration.rs -------------------------------------------------------------------------------- /host/phm-cli/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/host/phm-cli/Cargo.lock -------------------------------------------------------------------------------- /host/phm-cli/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/host/phm-cli/Cargo.toml -------------------------------------------------------------------------------- /host/phm-cli/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/host/phm-cli/README.md -------------------------------------------------------------------------------- /host/phm-cli/src/cli.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/host/phm-cli/src/cli.rs -------------------------------------------------------------------------------- /host/phm-cli/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/host/phm-cli/src/main.rs -------------------------------------------------------------------------------- /host/phm/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/host/phm/Cargo.lock -------------------------------------------------------------------------------- /host/phm/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/host/phm/Cargo.toml -------------------------------------------------------------------------------- /host/phm/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jamesmunns/pretty-hal-machine/HEAD/host/phm/src/lib.rs --------------------------------------------------------------------------------