Skip to main content

Python bindings for BochsCPU.

Project description

logo3

bochscpu-python

Python 3.8+ Downloads Code style: black Licence MIT Builds

Python bindings for @yrp's BochsCPU using FFI to easily and accurately emulate x86 code.

Install

bochscpu-python requires a Python environment of 3.8 or more recent only.

Via PyPI (preferred)

By far the simplest way to get things up and running is using the stable packaged version on PyPI

python -m pip install bochscpu-python

Via the generated builds

Download the latest working artifact from the repository Github Actions tab. Extract the ZIP file, install the .whl file you'll find inside the wheel folder.

python -m pip install wheel/bochscpu-$version-$os-$arch.whl

From the source repository

Fairly straight forward:

python -m pip install .

Or without cloning

python -m pip install git+https://github.com/hugsy/bochscpu-python.git#egg=bochscpu-python

Note that this approach will require you to have all the building tools necessary installed (as described below)

Build

Requirements

  • Python 3.8+ (with development kit)
  • cmake
  • pip
  • a C++20 compatible compiler (tested cl for Windows, clang++ for MacOS and g++ Linux)

Steps

  • Build BochsCPU, BochsCPU-FFI, and BochsCPU-Build following the instructions on their respective pages
  • ... Alternatively BochsCPU-FFI for Windows & Linux libraries object files can be downloaded from the build Github Actions
  • Move the *.lib in bochscpu/lib/<BuildType> (where BuildType can be Debug, Release, RelWithDebInfo, etc.)
  • Install the requirements: python -m pip install -r requirements.txt
  • Build with cmake This will generate the bochscpu pyd file (and its PDB) which you can import from a Python session with import bochscpu.
  • ... Alternatively you can also generate a .whl from the root of the project:
python -m pip wheel .

Usage

Just import the bochscpu module and let the fun begin! Installing the package will also install interface files, allowing modern IDEs (VSCode, PyCharm, etc.) to offer useful completion.

A very crude template can be made as such:

import bochscpu, bochscpu.utils, bochscpu.cpu

sess = bochscpu.Session()
sess.missing_page_handler = bochscpu.utils.callbacks.missing_page_cb
state = bochscpu.State()
bochscpu.cpu.set_real_mode(state)
hook = bochscpu.Hook()
bochscpu.utils.callbacks.install_default_callbacks(hook)
sess.run([hook,])

This will create a bochscpu session, set the CPU state for real mode, and pre-populate hooks with basic callbacks (that only perform a print upon execution). Note that this sample will actually do nothing as we haven't allocated code pages nor correctly set registers to point to it.

A more complete template can be found in the examples/ folder

Some Examples

Emulate a Fibonascii sequence in x64 long mode

https://github.com/hugsy/bochscpu-python/assets/590234/adc5ac5a-a8eb-4982-9537-5ece3f32f8f8

Code

Emulate code from a Windows 11 x64 memory dump

image

Code

Emulate a print("hello world")-like assembly code in 16 bit real mode

https://github.com/hugsy/bochscpu-python/assets/590234/eb06af06-4b10-490e-ae40-a1d0aed333ca

Code

Emulate Linux Glibc's rand() function on x64

https://github.com/hugsy/bochscpu-python/assets/590234/2486adbc-0878-46f5-83ed-3bcf9774fd26

Code

Enjoy 🍻

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

bochscpu_python-0.4.0-cp312-abi3-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.12+Windows x86-64

bochscpu_python-0.4.0-cp312-abi3-manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.12+manylinux: glibc 2.28+ x86-64

bochscpu_python-0.4.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.12+manylinux: glibc 2.17+ ARM64

bochscpu_python-0.4.0-cp312-abi3-macosx_15_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.12+macOS 15.0+ ARM64

bochscpu_python-0.4.0-cp312-abi3-macosx_14_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.12+macOS 14.0+ ARM64

bochscpu_python-0.4.0-cp312-abi3-macosx_13_0_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.12+macOS 13.0+ x86-64

bochscpu_python-0.4.0-cp311-cp311-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.11Windows x86-64

bochscpu_python-0.4.0-cp311-cp311-manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

bochscpu_python-0.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

bochscpu_python-0.4.0-cp311-cp311-macosx_15_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.11macOS 15.0+ ARM64

bochscpu_python-0.4.0-cp311-cp311-macosx_14_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

bochscpu_python-0.4.0-cp311-cp311-macosx_13_0_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

bochscpu_python-0.4.0-cp310-cp310-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.10Windows x86-64

bochscpu_python-0.4.0-cp310-cp310-manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

bochscpu_python-0.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

bochscpu_python-0.4.0-cp310-cp310-macosx_15_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.10macOS 15.0+ ARM64

bochscpu_python-0.4.0-cp310-cp310-macosx_14_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

bochscpu_python-0.4.0-cp310-cp310-macosx_13_0_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

bochscpu_python-0.4.0-cp39-cp39-win_amd64.whl (1.3 MB view details)

Uploaded CPython 3.9Windows x86-64

bochscpu_python-0.4.0-cp39-cp39-manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

bochscpu_python-0.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

bochscpu_python-0.4.0-cp39-cp39-macosx_15_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.9macOS 15.0+ ARM64

bochscpu_python-0.4.0-cp39-cp39-macosx_14_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.9macOS 14.0+ ARM64

bochscpu_python-0.4.0-cp39-cp39-macosx_13_0_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.9macOS 13.0+ x86-64

File details

Details for the file bochscpu_python-0.4.0-cp312-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 f7bd4423905b7d3e3976add77e2142229c186eee0e19e274a27902440cc618d9
MD5 e0aebcd5a344320a72a5547f12349c9b
BLAKE2b-256 1242383896c7b5a66a9f1d63a9f112e919f7e207ee34a70720e2be1f529316b0

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp312-abi3-win_amd64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp312-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp312-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b37d30611b7e4ffc00a111fe0a6b5b253a102c233fd6dc083f5cb0918ee2a1ae
MD5 9ef1a39dee2f27a495a06f5acfa92caf
BLAKE2b-256 287499a139944588aca12a1d6c69bf65ead6db588d6483c29ef22d91c9c0f3ab

See more details on using hashes here.

File details

Details for the file bochscpu_python-0.4.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp312-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 92f217e91ac63fe5f0173cf4f3d655be8cc80b89abf8c9d55e14f715b80ed439
MD5 7fedb9a71b012f679f4af3471a786711
BLAKE2b-256 2c85446c58ff461927afe3b48b7e41118c41a7563a7b9c752d68a376dcf3749d

See more details on using hashes here.

File details

Details for the file bochscpu_python-0.4.0-cp312-abi3-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp312-abi3-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 3bf357a5920398ffb38abd8f5ecb1f483cb2ad65d7f10a3937b1d9baaade8cac
MD5 0ae0d6eca342fdbe21aa14ab9d9dfd63
BLAKE2b-256 bf64905146ecfb0cc74c4b3a42b4781c8871b9d890374c4330d2c45846ca157d

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp312-abi3-macosx_15_0_arm64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp312-abi3-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp312-abi3-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 416ff2d8399b6e9975585843e17bfdef30ad56c16edfb7144696466d990c0db7
MD5 d4f6f96d37b7272e846537ffa2ccb82c
BLAKE2b-256 593668af074160fbe4d8f85905f38abf1d6a757d0c22eefaa144bf2e6a8a2c30

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp312-abi3-macosx_14_0_arm64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp312-abi3-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp312-abi3-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 ecd48ca3215eeba510d92c7323e78dd6a4653977bbeae5f0c8fe2acaac49eb1a
MD5 b8544c987a0c4dbc4060621fd817b9de
BLAKE2b-256 4fa88168da765cdbeb6b4ced3c2767bcfe06ce5a1f3d0358dec987bde8161b8a

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp312-abi3-macosx_13_0_x86_64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 bf9f17f0a06670fae3b18a7ed46cd1ec4a5d530b37eb2e6afe62451d8afd2a35
MD5 9df4da2d0bd5b305242f5e2337d145b6
BLAKE2b-256 ff69b85e001bd7582f173ebf1fc7db7124b4418ce9a4909c5c2b948ca781e4ba

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp311-cp311-win_amd64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 08297de4c657fcda712c66745388cf81cd056e01083473c44868b96f6ea020ad
MD5 2890194e5904d8ac36efd687618daaea
BLAKE2b-256 f05e821e03fade475d6311e6ca7dc4838372f7274155d5e196b640accc7fdaba

See more details on using hashes here.

File details

Details for the file bochscpu_python-0.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 71f8accc4dda33b226904227bfd74904aabcc9b6afcdfafd335daf7d4a35a9c0
MD5 ba0b288b7f423edf0dc750c9b635610e
BLAKE2b-256 7eef6359bd679a4e1524168937c5cc0e1f560bdcc2b97dba8ffab8259f887945

See more details on using hashes here.

File details

Details for the file bochscpu_python-0.4.0-cp311-cp311-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp311-cp311-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 89e761ce7f913af09208a5b314bf6fa7084ab5bba48757994c68193a9e11de90
MD5 2fbd3a03e1df11c60f4a15bcf1a1cb20
BLAKE2b-256 ef2a6ae41fc27c241f9a68c88f41c4b8e80e134a5749ddccba1f258fecea5518

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp311-cp311-macosx_15_0_arm64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 0bd512d517b8153850290716ce9a31b8103824e050c4c0e3d7e4a3ab69ec2940
MD5 6b2fff859703c008a70a73917692112c
BLAKE2b-256 149d1219341a20f51dd5548ba513e75908792cffd0b75148a3dda200dc7078e3

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp311-cp311-macosx_14_0_arm64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 a70e8c6901771dc9407a2704519a8df232748a19c303561cd726c06ea589f76c
MD5 38a1f87d997e7bf50d8c5dd83e7e91c9
BLAKE2b-256 308c4afce1c8b6ea1c4a3e74dd7a2d0feb6bde183c1f712b46a0ea9e3ac755fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp311-cp311-macosx_13_0_x86_64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 71743a6c3fb6015fd306d20c583df681fc7462095773752b8632e8506e34210b
MD5 592238e44dfd1114311f13befdb085d4
BLAKE2b-256 d1af8484cb2f5f1b5ff30efc4d13d1a23be6a01a935cbbc46b15abd7cba46b66

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp310-cp310-win_amd64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9f1259e8d6b34f478fe3ed889ad2d810a8f5ec63289c8fba63e3af33fa17d1c8
MD5 7daf0cfb9db2080211f28ac27fcc8cbb
BLAKE2b-256 cde8a5454daf9111a8339e139423323ef5a6f64d9d2376e2760571df11745e82

See more details on using hashes here.

File details

Details for the file bochscpu_python-0.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 546c17bce89a4c4d33f6b96f4afe36078593cb386462ea5a43aaa7a36f6baaa8
MD5 9a69a12b5c17b1330dfe43ffb957f99c
BLAKE2b-256 01cb9625047ef87b876c91c930ed7d0420426ac93d5fd7bed6cd96288382530b

See more details on using hashes here.

File details

Details for the file bochscpu_python-0.4.0-cp310-cp310-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp310-cp310-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 deaab33b14ebdec2311a12625e0d19d3d517166658bd8325e6ee745375296580
MD5 aa290bdaeca2444cc8d1343be4bfc6bf
BLAKE2b-256 82b153b1e7d9a085744f705f82472ad412979bdd2980f598b0ee78fe6201031c

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp310-cp310-macosx_15_0_arm64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 a9bf952397b684a59cd87b23a255cb54637b3148e307b960d9e43d1b1ba6362a
MD5 4890ff8d5ccde67e1adefa478b8ef03c
BLAKE2b-256 436a90cd6ea6dee3a695ae57db17825bbacb586bfbc21a26bcbf1b84c498f854

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp310-cp310-macosx_14_0_arm64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 e22cafb2a39e3478de9e7380ff2ca117be3d44c92e250b8c823cf6e4206af3ec
MD5 f54c10621355f4cf550c2c2736f51e52
BLAKE2b-256 b8d2d2c5afa0ebe0d26ba5d4094dc7ef106d57ec50478f8f72fdff89eb57d421

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp310-cp310-macosx_13_0_x86_64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 133672afc258a6d27a49a72ec6a857ff83b61d299a0df034e54d5d386eaceb72
MD5 627172e8491b56523f27ae10ebe02c01
BLAKE2b-256 5ec3f91909fecf45cbe15ae39569c6ac571a550c71dea0870325f9736e64d7d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp39-cp39-win_amd64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d83dda74e793cf6bbb93f9e9902bd566107c2c2a96db7fc0ca13b383a1e44572
MD5 5d83d9a0fa1986d1f49faf11758d08db
BLAKE2b-256 6797e5f8a0791bf0890ec11738872ab2ad905b51e0932406827631b9a1714c7f

See more details on using hashes here.

File details

Details for the file bochscpu_python-0.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 cd818060a8d4fe3c8f6e41b7da84a542e02c1ee384102ce4bd7dfe18de733539
MD5 f45b8061607dbaf10cbd7b9723661cd2
BLAKE2b-256 e2817cf99034609623bfdb6a7b671d12b289ba01758fbf0fea1354069abeda7e

See more details on using hashes here.

File details

Details for the file bochscpu_python-0.4.0-cp39-cp39-macosx_15_0_arm64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp39-cp39-macosx_15_0_arm64.whl
Algorithm Hash digest
SHA256 a8f9f5775a1089297d6a5877b1acab7d0a0d411bc8294d87caacbe388920dae1
MD5 20066a0f6b2f77947584d90005cf3a1a
BLAKE2b-256 52f4d59d06144d4ddccc71e5485542a9b554ffb4a530dc4dee081316c1f156be

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp39-cp39-macosx_15_0_arm64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp39-cp39-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp39-cp39-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 060df5983ca0bb1f33f07e031b8e016abdddf2fec64c166eefca7652c37e5a30
MD5 cf652d474abf56f07a56b715f2496898
BLAKE2b-256 bcfcef5efa79f456db1f686a4059ff6fac7f7f3c1b99eaee9d5c68b318d7a4d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp39-cp39-macosx_14_0_arm64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bochscpu_python-0.4.0-cp39-cp39-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for bochscpu_python-0.4.0-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 911a5017706f0bd2c03ba4201a2e730e99af8ccb70b3e91439cba8c0d90d6984
MD5 f20a5da44291f073a71c1d294e31f53d
BLAKE2b-256 09c8b5aff3624584fd1b67a4557a1da7ed0de0d0058db412879909d25447d9ca

See more details on using hashes here.

Provenance

The following attestation bundles were made for bochscpu_python-0.4.0-cp39-cp39-macosx_13_0_x86_64.whl:

Publisher: build.yml on hugsy/bochscpu-python

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page