Crate armagnac

Source
Expand description

Armagnac is a simple ARM Thumb emulation library written in Rust which can be used to emulate simple embedded systems. The library gives high control on the processor execution, allowing to run instruction by instruction, create hooks, inspect or modify the system state on the fly. Integration of custom peripherals in the memory space is made easy, allowing custom platforms emulation.

Check core::Processor to know how to quickly emulate an ARM binary.

Check memory to see how peripherals can be implemented and mapped into the processor memory space.

Modules§

core
Arm processor emulation main module.
decoder
Instruction decoding module.
harness
Helpers for running methods from an ELF file.
helpers
Helpers for making registers implementation and manipulation easiers.
instructions
ARM instructions implementation module.
memory
Memory peripherals and interfacing.
mpu
Memory Protection Unit peripherals.
registers
Defines ARM processor core registers.
symbols
Utilities for resolving binary symbols during execution.
system_control

Macros§

qualifier_wide_match