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.6-cp38-abi3-win_amd64.whl (351.5 kB view details)

Uploaded CPython 3.8+Windows x86-64

tetanes_py-0.1.6-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (483.0 kB view details)

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

tetanes_py-0.1.6-cp38-abi3-macosx_11_0_arm64.whl (435.5 kB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: tetanes_py-0.1.6-cp38-abi3-win_amd64.whl
  • Upload date:
  • Size: 351.5 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.6-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 362b3ff78ee98b303379042485733d9462c264c00135b02fe0cc98f056c13e4b
MD5 1151c8aa90cc3c5326347c9d79af1d97
BLAKE2b-256 5179d399c62e14bc2f5d43f1dc069018fff2f2b26758649a578105c113a04f3c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tetanes_py-0.1.6-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 34e5cee681d166d463bf48bc678f57898447c1d960ff8c81514ff5b935ce4e12
MD5 9eb789698218b8d4023f87b105da54eb
BLAKE2b-256 ecf4f822054c5d40b354cc0a0b8ff5957ecc12026bb77069056cae0e4d74f393

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tetanes_py-0.1.6-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 35ed62c03b080efbd1c88f8453446c0816300d2d2e4790bba5221c8433e6513b
MD5 bb7b3755634e06577213c3e2154ff3c4
BLAKE2b-256 67d03eec342e574b1f52ff5c67d6514712fbeaac20b67345de239931764c5f51

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