Skip to main content

TetaNES-Py - Python bindings for the TetaNES NES emulator with Gymnasium support

Project description

tetanes-py

Python bindings for TetaNES - a NES emulator written in Rust.

Install

pip install tetanes-py

Or from source:

pip install git+https://github.com/alexeiquickcode/tetanes.git#subdirectory=tetanes-python

Usage

Basic emulator usage:

import tetanes_py

# Create emulator
env = tetanes_py.NesEnv(headless=True)

# Load ROM from file
with open("game.nes", "rb") as f:
    rom_data = f.read()
env.load_rom("game.nes", rom_data)

# Step through frames
obs = env.step(0)  # 0 = no button pressed

Gymnasium Environment

Works with OpenAI Gym/Gymnasium for RL:

import gymnasium as gym
import tetanes_py

env = gym.make("ExampleGame-v0", rom_path="game.nes")
obs, info = env.reset()

for _ in range(1000):
    action = env.action_space.sample()
    obs, reward, terminated, truncated, info = env.step(action)
    if terminated or truncated:
        obs, info = env.reset()

Requirements

  • Python 3.9+
  • NumPy
  • Gymnasium (optional, for RL environment)

License

MIT OR Apache-2.0

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.

tetanes_py-0.1.5-cp38-abi3-win_amd64.whl (351.9 kB view details)

Uploaded CPython 3.8+Windows x86-64

tetanes_py-0.1.5-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (482.5 kB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ x86-64

tetanes_py-0.1.5-cp38-abi3-macosx_11_0_arm64.whl (435.3 kB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

File details

Details for the file tetanes_py-0.1.5-cp38-abi3-win_amd64.whl.

File metadata

  • Download URL: tetanes_py-0.1.5-cp38-abi3-win_amd64.whl
  • Upload date:
  • Size: 351.9 kB
  • Tags: CPython 3.8+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for tetanes_py-0.1.5-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 78ecdf39ceb5f095706cee23af48c23bdc03f4444158ffa2fbd03f8e5bed276a
MD5 0f59a1124790ebee62176dc1d7c68faa
BLAKE2b-256 c64168c1ca66d7660505ce37bbb3f377bc10fa7a35667b35d18de7d6c8ddbaaa

See more details on using hashes here.

File details

Details for the file tetanes_py-0.1.5-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for tetanes_py-0.1.5-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 24cc3d2a845ff4650d762e16c0700515b6650e0903d74b35afae16c8f770fcad
MD5 e378b42f81cb7bf60be6307b935ed12e
BLAKE2b-256 86b9089a7d1e19063440399722473d075dbe1a36cc2bfa16e76428160ccb4c92

See more details on using hashes here.

File details

Details for the file tetanes_py-0.1.5-cp38-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tetanes_py-0.1.5-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4db5c0fa776b92210f705f2b175e3b65944253415e05e425add898b6b38d9a96
MD5 b5532a6624f66638e9bb6a13942618b5
BLAKE2b-256 285dab3f569e990749e7f4fc29bb171a329edf809e0cb2948cd4abe2740e4683

See more details on using hashes here.

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