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

Uploaded CPython 3.8+Windows x86-64

tetanes_py-0.1.7-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (482.9 kB view details)

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

tetanes_py-0.1.7-cp38-abi3-macosx_11_0_arm64.whl (436.3 kB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: tetanes_py-0.1.7-cp38-abi3-win_amd64.whl
  • Upload date:
  • Size: 352.1 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.7-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 68c07d4a19825e70d7be93dd99f0510cf35e303bb002a9573e132a678b8e09f4
MD5 e29deb70a7654288ce7ab635fb80f38a
BLAKE2b-256 743a5c70175524bc049542a04cb697c98c808842bf6057f8f4661bf3b4590e24

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tetanes_py-0.1.7-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7c28279e9386a31bec0da6e3251c22f7af924ded08fc19a8a68cf4fa053631df
MD5 1950fb0d86e3984bec10753a51732365
BLAKE2b-256 831b85da543aba78264d06d4f339886a5f7cdda4671476a86c275ce973646f18

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tetanes_py-0.1.7-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 26a1ccd26f594588e81954cf4e15559fbda6031eb6521bc177fb503550dd0793
MD5 e3ac86101de3c18d05c767a07ee98f8a
BLAKE2b-256 2f39d2126597fd06007efd60a4519bae2a314341da88e73534f54490eea7ed6d

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