Skip to main content

A package to create m68k system emulators

Project description

travis appveyor rtfd coverall

pypi-v wheel pyver status

bare68k allows you to write m68k system emulators in Python 2 or 3. It consists of a CPU emulation for 68000/68020/68EC020 provided by the Musashi engine written in native C. A memory map with RAM, ROM, special function is added and you can start the CPU emulation of your system. You can intercept the running code with a trap mechanism and use powerful diagnose functions,

written by Christian Vogelgsang <chris@vogelgsang.org>

under the GNU Public License V2

Features

  • all emulation code written in C for fast speed

  • runs on Python 2.7 and Python 3.5

  • emulates CPU 68000, 68020, and 68EC020

  • use a 24 or 32 bit memory map

  • define memory regions for RAM and ROM with page granularity (64k)

  • special memory regions that call your code for each read/write operation

  • intercept m68k code by placing ALINE-opcode based traps to call your code

  • event-based CPU emulation frontend does always return to Python first

  • provide Python handlers for all CPU emulation events

    • RESET opcode

    • ALINE trap opcode

    • invalid memory access (e.g. write in ROM region)

    • out of memory bounds (e.g. read above memory map)

    • control interrupt acknowledgement

    • watch and break points

    • custom timers based on CPU cycles

  • extensive diagnose functions

    • instruction trace

    • memory access for both CPU and Python API

    • register dump

    • memory labels to mark memory regions with arbitrary Python data

    • all bare68k components use Python logging

  • rich API to configure memory and CPU state

  • store/restore CPU context

Installation

  • use pip:

    $ pip install bare68k
  • or checkout github repository and install:

    $ python setup.py install
  • use dev setup:

    $ python setup.py develop --user

Documentation

Project details


Download files

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

Source Distribution

bare68k-0.1.2.tar.gz (319.1 kB view details)

Uploaded Source

Built Distributions

bare68k-0.1.2-cp36-cp36m-win_amd64.whl (354.9 kB view details)

Uploaded CPython 3.6m Windows x86-64

bare68k-0.1.2-cp36-cp36m-win32.whl (245.1 kB view details)

Uploaded CPython 3.6m Windows x86

bare68k-0.1.2-cp35-cp35m-win_amd64.whl (354.1 kB view details)

Uploaded CPython 3.5m Windows x86-64

bare68k-0.1.2-cp35-cp35m-win32.whl (244.5 kB view details)

Uploaded CPython 3.5m Windows x86

bare68k-0.1.2-cp34-cp34m-win_amd64.whl (351.3 kB view details)

Uploaded CPython 3.4m Windows x86-64

bare68k-0.1.2-cp34-cp34m-win32.whl (252.8 kB view details)

Uploaded CPython 3.4m Windows x86

bare68k-0.1.2-cp27-cp27m-win_amd64.whl (358.0 kB view details)

Uploaded CPython 2.7m Windows x86-64

bare68k-0.1.2-cp27-cp27m-win32.whl (246.6 kB view details)

Uploaded CPython 2.7m Windows x86

bare68k-0.1.2-cp27-cp27m-macosx_10_12_x86_64.whl (352.6 kB view details)

Uploaded CPython 2.7m macOS 10.12+ x86-64

File details

Details for the file bare68k-0.1.2.tar.gz.

File metadata

  • Download URL: bare68k-0.1.2.tar.gz
  • Upload date:
  • Size: 319.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for bare68k-0.1.2.tar.gz
Algorithm Hash digest
SHA256 d9442f7c8d43c1aceeaab673b09d0e13f019e545de80a8e646749fa4705f8494
MD5 bd5d6cb031bd870416ca75f268a40f31
BLAKE2b-256 63aa6fc8e6ce75ffbc0003a54d3a0ae72c0105aa8ddc5ba61ac0eed8ed378b68

See more details on using hashes here.

File details

Details for the file bare68k-0.1.2-cp36-cp36m-win_amd64.whl.

File metadata

File hashes

Hashes for bare68k-0.1.2-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 74b89138236768e2359704999e59a44046571709fa30c89981a977ed7195fdf1
MD5 ce312122e558954bf2db976b36eb169b
BLAKE2b-256 8f5b38873e1fb4fa08a9827509a276c826bd475239f12cda309e03c71ad6a184

See more details on using hashes here.

File details

Details for the file bare68k-0.1.2-cp36-cp36m-win32.whl.

File metadata

File hashes

Hashes for bare68k-0.1.2-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 44f8e593a50e51e241ddf503842ede2ba184fcc73c2bec8cdce32678dbb6a192
MD5 00ea37349998153291e006899de7d17d
BLAKE2b-256 fe7657bc8ec38103c7318d64405caaea9f4d1106629f2c8f278d0e3c747879cb

See more details on using hashes here.

File details

Details for the file bare68k-0.1.2-cp35-cp35m-win_amd64.whl.

File metadata

File hashes

Hashes for bare68k-0.1.2-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 ac6f6dc4d80e26556cd440ee7148413b7aea45b1af26a34cfa01fcf3c524cc29
MD5 0538bcb73989f210f609153007f1f09c
BLAKE2b-256 93de3228c9fe764bb8761ab235e300223296739ed9a0ebf0d6f959dc9d76c8bc

See more details on using hashes here.

File details

Details for the file bare68k-0.1.2-cp35-cp35m-win32.whl.

File metadata

File hashes

Hashes for bare68k-0.1.2-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 031362508f3f54e885e36a0972f254fd6080e932f9ace7fc70e151d9bf5129df
MD5 bebb300bbcabfae86121a7d1e1d95265
BLAKE2b-256 9789cc409f01da44af09c415b7c3291f4972a3cd1f3030208801a3500febbedb

See more details on using hashes here.

File details

Details for the file bare68k-0.1.2-cp34-cp34m-win_amd64.whl.

File metadata

File hashes

Hashes for bare68k-0.1.2-cp34-cp34m-win_amd64.whl
Algorithm Hash digest
SHA256 1f0ce149a5e9d2a481e551ccac74e49c4674ce39f80c2adbc55b2559cc44726f
MD5 622d0241974a1b8f46084e0166b4990e
BLAKE2b-256 425336b00d64ed69af74c89e43b886865f1aa08e1e2db3ae43965ff5bb9525cb

See more details on using hashes here.

File details

Details for the file bare68k-0.1.2-cp34-cp34m-win32.whl.

File metadata

File hashes

Hashes for bare68k-0.1.2-cp34-cp34m-win32.whl
Algorithm Hash digest
SHA256 2d9df40ab1d29ceaf22175b10eeaee1ddbf1beefe6c9c57d90bbbe3408cc163f
MD5 7514d4927b0bd9da340740973210f6c6
BLAKE2b-256 e0de12a13aee056faff428adf5f577cefde69cb74e758391a0c487fac428a290

See more details on using hashes here.

File details

Details for the file bare68k-0.1.2-cp27-cp27m-win_amd64.whl.

File metadata

File hashes

Hashes for bare68k-0.1.2-cp27-cp27m-win_amd64.whl
Algorithm Hash digest
SHA256 2d5c158ce7a113e9bee9549608e6131aa9be355481522eb27361566f0d082be9
MD5 45148cf0a91196f8d7f76ed4c894e4a5
BLAKE2b-256 0d43ceed62de7cf20ce95687a60b6f0acdfc9ee3b9b4de8e9b8afd67a5623f1d

See more details on using hashes here.

File details

Details for the file bare68k-0.1.2-cp27-cp27m-win32.whl.

File metadata

File hashes

Hashes for bare68k-0.1.2-cp27-cp27m-win32.whl
Algorithm Hash digest
SHA256 208b7ddd7a391faf25f32cba350c8c1b91a543e7fdae301c5f3ed2e0c3f02601
MD5 31e30835d2e0ad527d182557d45bdf94
BLAKE2b-256 650b42c9ecb1e2c1cf5253b7241a82430b439acb98e3f2a166d0ffeb54787ab7

See more details on using hashes here.

File details

Details for the file bare68k-0.1.2-cp27-cp27m-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for bare68k-0.1.2-cp27-cp27m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 1ab13a29578232f2436497435b41fa94fb97672f164d8d3548a34ad83e01d076
MD5 765529339d566e62febe41d28b662bd7
BLAKE2b-256 a42713ed3e4dfefb11c6b4975f143f9d1ada14efdd4c7e9ec1cd55b7cc5fae7d

See more details on using hashes here.

Supported by

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