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

Uploaded CPython 3.8+Windows x86-64

tetanes_py-0.1.9-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (483.3 kB view details)

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

tetanes_py-0.1.9-cp38-abi3-macosx_11_0_arm64.whl (436.8 kB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

File details

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

File metadata

  • Download URL: tetanes_py-0.1.9-cp38-abi3-win_amd64.whl
  • Upload date:
  • Size: 353.3 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.9-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 0c0470386da6e1904980a96d09fc990825c3e722a9164276ebba450b5330ed22
MD5 79f06ee467b22ada9613c1f533a5adb9
BLAKE2b-256 bdf48abcb97560f00f7840dfc52de9af87e595d99562048e5ee0fea5bff242bf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tetanes_py-0.1.9-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 85b6a652b121764f74f359f26a2a29f5a1734b6510dce2f337461de966494c15
MD5 6585164b96463e78a0c4dca2240ce220
BLAKE2b-256 fe999e3b4ad76e987978624a0fe1852e23685a1b0c8a5be9d31692a9789132cc

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for tetanes_py-0.1.9-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 56b560f34e0e2dc1d788ba971e15d190b831b48eb2bc3e7302a72ec0b36fcf00
MD5 d0d4eea62dbf7d7b1cb474830b16fcda
BLAKE2b-256 502d6762dac790dc58c806bf4802a4e4cb29954ea5f2bbc6d8228aff02ce7574

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