Unicorn CPU emulator framework (ARM, AArch64, M68K, Mips, Sparc, X86)
Go to file
farmdve 726f45b33d Attempting to set some bits in the Unicorn EFLAGS doesn't work.
When attempting to set all flags except trap flag, the EFLAGS value
should be 0x00244ED7, I've tested this on Windows and here
https://ideone.com/WQAvk1 which is presumably Linux.

Unicorn however has the value 0x00000ED7, bits 11-21 are not set. Bit 21
is the ID bit indicating whether or not CPUID is available.
2015-11-10 00:49:01 +02:00
bindings python bindings: use relative paths for imports to support py3 2015-11-02 09:34:58 -05:00
docs docs/README: copy&paste error 2015-10-17 01:27:37 +08:00
include fix compilation with capstone next 2015-11-07 16:55:42 +01:00
qemu x86: check for exit request after every hooked instruction. this should fix issue #232 2015-11-07 01:02:45 +08:00
samples Remove trailing whitespace. 2015-10-30 22:34:35 +01:00
tests Attempting to set some bits in the Unicorn EFLAGS doesn't work. 2015-11-10 00:49:01 +02:00
.gitignore update .gitignore 2015-11-06 22:10:01 +08:00
AUTHORS.TXT import 2015-08-21 15:04:50 +08:00
ChangeLog add ChangeLog 2015-10-15 23:54:39 +08:00
COMPILE.TXT COMPILE.TXT: fix typo 2015-11-01 00:54:54 -04:00
config.mk import 2015-08-21 15:04:50 +08:00
COPYING import 2015-08-21 15:04:50 +08:00
CREDITS.TXT update CREDITS 2015-11-05 21:36:03 +08:00
hook.c fix #165 2015-10-05 23:30:54 -07:00
LEAK_VALGRIND import 2015-08-21 15:04:50 +08:00
make.sh Fixing compile on windows with mingw 2015-08-29 17:04:48 +02:00
Makefile Makefile: overwrite existent library for install target with 'ln -sf' 2015-10-25 09:44:01 +08:00
pkgconfig.mk Remove trailing whitespace. 2015-10-30 22:34:35 +01:00
README.md Little README change 2015-10-17 11:37:53 +02:00
uc.c Fix segfault-on-emu_stop() bug. 2015-11-03 14:34:31 +01:00

Unicorn Engine

Unicorn is a lightweight, multi-platform, multi-architecture CPU emulator framework based on QEMU.

Unicorn offers some unparalleled features:

  • Multi-architecture: ARM, ARM64 (ARMv8), M68K, MIPS, SPARC, and X86 (16, 32, 64-bit)
  • Clean/simple/lightweight/intuitive architecture-neutral API
  • Implemented in pure C language, with bindings for Python, Java, and Go
  • Native support for Windows & *nix (with Mac OSX, Linux, *BSD & Solaris confirmed)
  • High performance via Just-In-Time compilation
  • Support for fine-grained instrumentation at various levels
  • Thread-safety by design
  • Distributed under free software license GPLv2

Further information is available at http://www.unicorn-engine.org

Compilation

See COMPILE.TXT file for how to compile and install Unicorn.

License

This project is released under the GPL license.