Files
favicon-trap/bindings/pascal
lazymio c10639fd46
Some checks failed
Crate 📦 Distribution / ${{ matrix.config.name }} (map[arch:x32 name:Windows x86 os:windows-latest]) (push) Has been cancelled
Crate 📦 Distribution / ${{ matrix.config.name }} (map[arch:x64 name:Ubuntu x86_64 os:ubuntu-latest]) (push) Has been cancelled
Crate 📦 Distribution / ${{ matrix.config.name }} (map[arch:x64 name:Windows x86_64 os:windows-latest]) (push) Has been cancelled
Crate 📦 Distribution / ${{ matrix.config.name }} (map[arch:x64 name:macOS x86_64 os:macos-latest]) (push) Has been cancelled
PyPI 📦 Distribution / ${{ matrix.config.name }} (map[arch:x32 name:manylinux2014_i686 os:ubuntu-latest python-ver:3.8]) (push) Has been cancelled
PyPI 📦 Distribution / ${{ matrix.config.name }} (map[arch:x32 name:win32 os:windows-latest python-ver:3.8]) (push) Has been cancelled
PyPI 📦 Distribution / ${{ matrix.config.name }} (map[arch:x64 name:macos_x86_64 os:macos-latest python-ver:3.8]) (push) Has been cancelled
PyPI 📦 Distribution / ${{ matrix.config.name }} (map[arch:x64 name:manylinux2014_x86_64 os:ubuntu-latest python-ver:3.8]) (push) Has been cancelled
PyPI 📦 Distribution / ${{ matrix.config.name }} (map[arch:x64 name:sdist os:ubuntu-latest python-ver:3.8]) (push) Has been cancelled
PyPI 📦 Distribution / ${{ matrix.config.name }} (map[arch:x64 name:win_amd64 os:windows-latest python-ver:3.8]) (push) Has been cancelled
Build UC2 / ${{ matrix.config.name }} (gcc, map[arch:x64 archiver:7z a artifact:windows_mingw32.7z build_type:Debug generators:Ninja mingw:MINGW32 mingw-arch:i686 name:windows-x64 MINGW32 os:windows-latest python-arch:x64 python-ver:3.8]) (push) Has been cancelled
Build UC2 / ${{ matrix.config.name }} (gcc, map[arch:x64 archiver:7z a artifact:windows_mingw64.7z build_type:Debug generators:Ninja mingw:MINGW64 mingw-arch:x86_64 name:windows-x64 MINGW64 os:windows-latest python-arch:x64 python-ver:3.8]) (push) Has been cancelled
Build UC2 / ${{ matrix.config.name }} (gcc, map[arch:x64 archiver:7z a artifact:windows_msvc64.7z build_type:Debug generators:Visual Studio 16 2019 msvc-arch:x64 name:windows-x64 MSVC 64bit os:windows-latest python-arch:x64 python-ver:3.8]) (push) Has been cancelled
Build UC2 / ${{ matrix.config.name }} (gcc, map[arch:x86 archiver:7z a artifact:windows_msvc32.7z build_type:Debug generators:Visual Studio 16 2019 msvc-arch:x86 name:windows-x86 MSVC 32bit os:windows-latest python-arch:x86 python-ver:3.8]) (push) Has been cancelled
Build UC2 / ${{ matrix.config.name }} - ${{ matrix.compiler }} (gcc, map[arch:x64 archiver:7za a artifact:macos-cmake-x64.7z build_type:Debug generators:Ninja name:macos-x64 cmake os:macos-latest python-arch:x64 python-ver:3.8]) (push) Has been cancelled
Build UC2 / ${{ matrix.config.name }} - ${{ matrix.compiler }} (gcc, map[arch:x86_64 archiver:7za a artifact:Android-x86_64.7z build_type:Debug generators:Ninja name:android cmake os:macos-11 python-arch:x86_64 python-ver:3.8]) (push) Has been cancelled
Build UC2 / ${{ matrix.config.name }} - ${{ matrix.compiler }} (gcc, map[arch:aarch64 archiver:7z a artifact:ubuntu-cmake-aarch64.7z build_type:Debug distro:ubuntu20.04 generators:Ninja name:ubuntu-aarch64 cmake os:ubuntu-latest python-arch:aarch64 python-ver:3.8]) (push) Has been cancelled
Build UC2 / ${{ matrix.config.name }} - ${{ matrix.compiler }} (gcc, map[arch:ppc64le archiver:7z a artifact:ubuntu-cmake-ppc64le.7z build_type:Debug distro:ubuntu20.04 generators:Ninja name:ubuntu-ppc64le cmake os:ubuntu-latest python-arch:ppc python-ver:3.8]) (push) Has been cancelled
Build UC2 / ${{ matrix.config.name }} - ${{ matrix.compiler }} (gcc, map[arch:x64 archiver:7z a artifact:ubuntu-cmake-x64.7z build_type:Debug generators:Ninja name:ubuntu-x64 cmake os:ubuntu-latest python-arch:x64 python-ver:3.8]) (push) Has been cancelled
Build UC2 / ${{ matrix.config.name }} - ${{ matrix.compiler }} (gcc, map[arch:x86 archiver:7z a artifact:ubuntu-cmake-x86.7z build_type:Debug generators:Ninja name:ubuntu-x86 cmake os:ubuntu-latest python-arch:x86 python-ver:3.8]) (push) Has been cancelled
PyPI 📦 Distribution / publish (push) Has been cancelled
Bump version in bindings
2022-02-13 11:03:57 +01:00
..
2018-08-03 20:33:25 +08:00
2022-02-13 11:03:57 +01:00
2018-08-03 20:33:25 +08:00
2018-08-03 20:33:25 +08:00

unicorn-engine-pascal

Pascal/Delphi language binding for the Unicorn emulator (GitHub).

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

License

GPLv2

Compilers Compatibility

Free Pascal >= v3

  • Mac OS
  • Windows
  • Linux

Delphi

  • Windows

Features

  • Same API as the C core

    • with some workarounds for Pascals case insensitivity:

      uc_mem_write() -> uc_mem_write_(), uc_mem_read() -> uc_mem_read_()

    • and the missing feature passing variable number of arguments to functions (...):

      i solve it by using -> args : Array of Const; you can pass args inside [] like :

      uc_hook_add(uc, trace, UC_HOOK_INSN, @HookIn, nil, 1,0,[UC_X86_INS_IN];
      

      the main loader in Unicorn_dyn.pas , check X86 example for more info .

  • Multiplatform (Mac OS , Windows and Linux are tested)

Examples

  • X86 Emulate 16, 32, 64 Bit x86

Version History

  • 1.1
    • Add Delphi Compatibility [ Windows ]
  • 1.0
    • this is the first version it has all APIs of UNICORN v1.0.1

TODO

  • Add more Examples
  • Add Mac , Linux Support for Delphi