SkillAgentSearch skills...

EmuStudio

Universal emulation platform and framework.

Install / Use

/learn @emustudio/EmuStudio

README

emuStudio logo emuStudio

emuStudio Build License: GPL v3

emuStudio is a modular desktop application for emulating historic and teaching-oriented computers and for writing, loading, and debugging programs for them ("compile, load, emulate" workflow). It is built around a plugin model, so compilers, CPUs, memories, and devices can be combined into complete virtual computers.

emuStudio is used both as a learning tool, but also as a base for emulator development, providing well-documented and rich SDK. Emulated computers are called "virtual computers". Often they are full system, feature-rich and cycle-accurate emulators, capable of running original games or software.

emuStudio is very appropriate for use at schools as teaching tool. For example, emuStudio is used at the Technical University of Košice since 2007.

What is included

  • Desktop application with computer schema editor, source code editor and emulation debugger
  • CLI entry point for launching configured virtual computers and running automation
  • Official compiler, CPU, memory, and device plugins
  • Bundled computer configurations and example files shipped with the distribution

Bundled virtual computers

Bundled configuration files live in application/src/main/files/config.

Getting started

At first, download a packaged release from https://www.emustudio.net/download/.

Prerequisite is to have:

  • Java 11 or newer
  • Linux, Windows or Mac

After unpacking the release package, start emuStudio with:

  • Linux, Mac: ./emuStudio
  • Windows: emuStudio.bat

Useful CLI entry points:

./emuStudio --help
./emuStudio --computers-list
./emuStudio automation --help

Building and contributing

Build the full project:

./gradlew build

Create a distributable archive:

./gradlew :application:distZip
./gradlew :application:distTar

Distribution archives are written to application/build/distributions/.

Related projects

There are several related projects used by emuStudio that contributors should be familiar with:

  • emuLib, shared runtime library (defines plugins API, common data structures, and utilities)
  • Edigen, instruction decoder and disassembler generator (used for CPU plugins)
  • Edigen Gradle plugin
  • CPU testing suite, framework for writing and running CPU instruction tests
  • emuStudio website, source for the project website and user/developer documentation

Documentation

Acknowledgements

emuStudio builds on documentation, research, and emulator work from projects and communities such as:

...and many more! Thanks to all the emulator developers, documenters, and researchers who have shared their work and made projects like emuStudio possible.

Related Skills

View on GitHub
GitHub Stars49
CategoryProduct
Updated13h ago
Forks9

Languages

Java

Security Score

95/100

Audited on Apr 6, 2026

No findings