RNIDBG

October 22, 2024 · View on GitHub

An ARM64 emulator written in Rust, based on the secondary development of unidbg.。Join us now!

Build Me

  • Make sure your Rust version is 1.79+, otherwise upgrade!
  • If Linux, make sure that libfmt/boost is available in your environment (dynarmic backend).

DEVELOPER DEBUGGING COMPILE TIME VARIABLES

变量名说明默认值
PRINT_SYSCALL_LOGprint syscall log0
SHOW_INIT_FUNC_CALLprint init_function calls0
SHOW_MODULES_INSERT_LOGprint module loading log0
PRINT_SVC_REGISTERprint service registration log0
PRINT_JNI_CALLSprint jni call log0
DYNARMIC_DEBUGprint dynarmic logs0
EMU_LOGprint emulator logs0
PRINT_MMAP_LOGprint virtual mmap logs0

RUN TIME VARIABLE IN COMPUTING

VARIABLE NAMECLARIFICATIONDEFAULT VALUE
DYNARMIC_JIT_SIZECode Cache Size (MB)64

TODO

  • Add support for debugging
  • Add support for more syscall
  • Beautiful JNI implementation (unsafe block)
  • Implement most system libraries as virtual modules

Thanks