Skip to main content

Game Boy Advance emulator written in Python

Project description

PyBoy Advance


PyBoy Advance is a Game Boy Advance emulator written in Python.

There are already plenty of fantastic GBA emulators out in the wild, most written in languages far better suited than Python for emulator development. This project is not meant to compete with those emulators nor match their capabilities. In fact, PyBoy Advance is rather crap (and slow!) by comparison. I work on this project purely for fun, with my end goal being to offer a highly readable implementation of a GBA emulator for educational purposes.

Getting started

PyBoy Advance is written in pure Python and technically can be run with the standard CPython interpreter, but performance will be unacceptably slow. Instead, you will need to run PyBoy Advance with PyPy, a fast implementation of Python (see Downloading and Installing PyPy).

Install PyBoy Advance with pip:

$ pypy -m pip install pyboy-advance

You will need to provide a Game Boy Advance BIOS. Normatt's open source BIOS is supported and available here.

Launch PyBoy Advance from the terminal:

$ pyboy_advance --bios /path/to/bios.bin game_rom.gba

Or import and use it in your Python scripts:

from pyboy_advance import PyBoyAdvance

emulator = PyBoyAdvance(rom="game_rom.gba", bios="/path/to/bios.bin")
emulator.run()

Screenshots

Screenshot of PyBoy Advance running Kirby: Nightmare in Dream Land

Acknowledgements

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

pyboy_advance-0.0.1.tar.gz (35.8 kB view details)

Uploaded Source

Built Distribution

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

pyboy_advance-0.0.1-py3-none-any.whl (47.3 kB view details)

Uploaded Python 3

File details

Details for the file pyboy_advance-0.0.1.tar.gz.

File metadata

  • Download URL: pyboy_advance-0.0.1.tar.gz
  • Upload date:
  • Size: 35.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyboy_advance-0.0.1.tar.gz
Algorithm Hash digest
SHA256 3922e549ff4c962dafbcadf56790bfaad0496dc14e77dcc289a6af086f53f2c3
MD5 832a31d7b56b583da8f12a6cc964ef4f
BLAKE2b-256 b117d0b3caf7d7b8e134711c9b125c6998f38ef45837a2863e6883281cf83f42

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyboy_advance-0.0.1.tar.gz:

Publisher: publish-to-pypi.yaml on williamckha/PyBoyAdvance

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

File details

Details for the file pyboy_advance-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: pyboy_advance-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 47.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pyboy_advance-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 96ac4eb4a58d7d45a77067203ec724dac2cb7957d7ee4ea22ed02ee6c573997e
MD5 c0ca8d469bfc7be7715caa0d382c79bc
BLAKE2b-256 0452b041aeda94e07b9af82e98f1eb32b0ce40576803d089692e83f10ae2d530

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyboy_advance-0.0.1-py3-none-any.whl:

Publisher: publish-to-pypi.yaml on williamckha/PyBoyAdvance

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