JArmEmu is a simple, user-friendly simulator that provides basic control and information about a simulated ARMv7 architecture.
JArmEmu is powered by an ARMv7 interpreter built Ex Nihilo for this project, which provides real-time syntax highlighting, intelligent auto-completion, memory, stack and register monitoring...
You can write your program using ARMv7 instructions and commonly used GNU directives, and watch the simulator execute it with details on any step.
Note
The implemented instruction set is available directly in the simulator (Help > See instructions...).
You can compile and run JArmEmu directly from source by cloning this repository. The project requires the JDK 21
and
is built using Maven 3
.
# Clone the repository
git clone https://github.com/Dwight-Studio/JArmEmu
cd JArmEmu
To launch JArmEmu, you juste need to compile
and run the maven goal exec:java
:
mvn compile exec:java
JArmEmu is distributed in a portable archive available from the release page. It requires Java 21 (or newer), which is not included in the archive.
You can download an installer for JArmEmu (or the portable version) from the release page.
Important
The executables aren't signed, and can trigger a warning screen from Windows UAC (which you can simply ignore).
JArmEmu is also available on Chocolatey:
choco install jarmemu
JArmEmu is available on FlatHub.
Tip
You can install it using your Software Manager (Gnome Software, KDE Discover...).
You can install it using FlatPak CLI:
flatpak install flathub fr.dwightstudio.JArmEmu
JArmEmu is available on Fedora Copr:
sudo dnf copr enable dwight-studio/JArmEmu
sudo dnf install jarmemu
JArmEmu is available on AUR. Use your favorite AUR Helper (yay
for
instance):
yay -S jarmemu
JArmEmu is available on the Dwight Studio repository.
Note
The following command will install the Dwight Studio's repository which hosts Debian binaries for all available projects of the collective.
You can install it by running:
sudo wget -O - https://deb.dwightstudio.fr/install-repository.sh | sudo bash
sudo apt update && sudo apt install jarmemu
JArmEmu is available with the Nix package manager through this repository flake. You can build/run it imperatively by running (with flake enabled):
nix build github:Dwight-Studio/jArmEmu
nix run github:Dwight-Studio/jArmEmu
Otherwise, use your preferred way to declaratively install the package jarmemu
from the github:Dwight-Studio/jArmEmu
flake as input.
This project is managed by the Dwight Studio collective, which is not affiliated not endorsed by Arm Limited in any sort.
This project was created by Kévin "FoxYinx" TOLLEMER and Alexandre "Deleranax" LECONTE, students at INSA Rennes (not affiliated). JArmEmu is distributed in open source under GPL3 (refer to the LICENCE file).