diff options
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | python-nes-py.spec | 631 | ||||
| -rw-r--r-- | sources | 1 |
3 files changed, 633 insertions, 0 deletions
@@ -0,0 +1 @@ +/nes_py-8.2.1.tar.gz diff --git a/python-nes-py.spec b/python-nes-py.spec new file mode 100644 index 0000000..520556f --- /dev/null +++ b/python-nes-py.spec @@ -0,0 +1,631 @@ +%global _empty_manifest_terminate_build 0 +Name: python-nes-py +Version: 8.2.1 +Release: 1 +Summary: An NES Emulator and OpenAI Gym interface +License: MIT +URL: https://github.com/Kautenja/nes-py +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/04/6b/51c9efe4fc67a9311b1125a19ec7a6176c8f0b8334e418d7f5bc53aeec56/nes_py-8.2.1.tar.gz +BuildArch: noarch + +Requires: python3-gym +Requires: python3-numpy +Requires: python3-pyglet +Requires: python3-tqdm + +%description +<p align="center"> +<img + src="https://user-images.githubusercontent.com/2184469/42918029-a8364c66-8ad1-11e8-8147-2653091ccd38.png" + width="50%" +/> +</p> + +[![build-status][]][ci-server] +[![PackageVersion][pypi-version]][pypi-home] +[![PythonVersion][python-version]][python-home] +[![Stable][pypi-status]][pypi-home] +[![Format][pypi-format]][pypi-home] +[![License][pypi-license]](LICENSE) + +[build-status]: https://app.travis-ci.com/Kautenja/nes-py.svg?branch=master +[ci-server]: https://app.travis-ci.com/Kautenja/nes-py +[pypi-version]: https://badge.fury.io/py/nes-py.svg +[pypi-license]: https://img.shields.io/pypi/l/nes-py.svg +[pypi-status]: https://img.shields.io/pypi/status/nes-py.svg +[pypi-format]: https://img.shields.io/pypi/format/nes-py.svg +[pypi-home]: https://badge.fury.io/py/nes-py +[python-version]: https://img.shields.io/pypi/pyversions/nes-py.svg +[python-home]: https://python.org + +nes-py is an NES emulator and OpenAI Gym interface for MacOS, Linux, and +Windows based on the [SimpleNES](https://github.com/amhndu/SimpleNES) emulator. + +<table align="center"> + <tr> + <td> + <img + width="256" + alt="Bomberman II" + src="https://user-images.githubusercontent.com/2184469/84821320-8c52e780-afe0-11ea-820a-662d0e54fc90.png" + /> + </td> + <td> + <img + width="256" + alt="Castelvania II" + src="https://user-images.githubusercontent.com/2184469/84821323-8ceb7e00-afe0-11ea-89f1-56d379ae4286.png" + /> + </td> + <td> + <img + width="256" + alt="Excitebike" + src="https://user-images.githubusercontent.com/2184469/84821325-8d841480-afe0-11ea-9ae2-599b83af6f65.png" + /> + </td> + </tr> + <tr> + <td> + <img + width="256" + alt="Super Mario Bros." + src="https://user-images.githubusercontent.com/2184469/84821327-8d841480-afe0-11ea-8172-d564aca35b5e.png" + /> + </td> + <td> + <img + width="256" + alt="The Legend of Zelda" + src="https://user-images.githubusercontent.com/2184469/84821329-8d841480-afe0-11ea-9a57-c9daca04ed3b.png" + /> + </td> + <td> + <img + width="256" + alt="Tetris" + src="https://user-images.githubusercontent.com/2184469/84822244-fc15a200-afe1-11ea-81de-2323845d7537.png" + /> + </td> + </tr> + <tr> + <td> + <img + width="256" + alt="Contra" + src="https://user-images.githubusercontent.com/2184469/84822247-fcae3880-afe1-11ea-901d-1ef5e8378989.png" + /> + </td> + <td> + <img + width="256" + alt="Mega Man II" + src="https://user-images.githubusercontent.com/2184469/84822249-fcae3880-afe1-11ea-8271-9e898933e571.png" + /> + </td> + <td> + <img + width="256" + alt="Bubble Bobble" + src="https://user-images.githubusercontent.com/2184469/84822551-79411700-afe2-11ea-9ed6-947d78f29e8f.png" + /> + </td> + </tr> +</table> + +# Installation + +The preferred installation of `nes-py` is from `pip`: + +```shell +pip install nes-py +``` + +## Debian + +Make sure you have the `clang++` compiler installed: + +```shell +sudo apt-get install clang +``` + +## Windows + +You'll need to install the Visual-Studio 17.0 tools for Windows installation. +The [Visual Studio Community](https://visualstudio.microsoft.com/downloads/) +package provides these tools for free. + +# Usage + +To access the NES emulator from the command line use the following command. + +```shell +nes_py -r <path_to_rom> +``` + +To print out documentation for the command line interface execute: + +```shell +nes_py -h +``` + +## Controls + +| Keyboard Key | NES Joypad | +|:-------------|:--------------| +| W | Up | +| A | Left | +| S | Down | +| D | Right | +| O | A | +| P | B | +| Enter | Start | +| Space | Select | + +## Parallelism Caveats + +both the `threading` and `multiprocessing` packages are supported by +`nes-py` with some caveats related to rendering: + +1. rendering **is not** supported from instances of `threading.Thread` +2. rendering **is** supported from instances of `multiprocessing.Process`, + but `nes-py` must be imported within the process that executes the render + call + +# Development + +To design a custom environment using `nes-py`, introduce new features, or fix +a bug, please refer to the [Wiki](https://github.com/Kautenja/nes-py/wiki). +There you will find instructions for: + +- setting up the development environment +- designing environments based on the `NESEnv` class +- reference material for the `NESEnv` API +- documentation for the `nes_py.wrappers` module + +# Cartridge Mapper Compatibility + +0. NROM +1. MMC1 / SxROM +2. UxROM +3. CNROM + +You can check the compatibility for each ROM in the following +[list](https://github.com/Kautenja/nes-py/blob/master/nesmapper.txt) + +# Disclaimer + +**This project is provided for educational purposes only. It is not +affiliated with and has not been approved by Nintendo.** + + + + +%package -n python3-nes-py +Summary: An NES Emulator and OpenAI Gym interface +Provides: python-nes-py +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-nes-py +<p align="center"> +<img + src="https://user-images.githubusercontent.com/2184469/42918029-a8364c66-8ad1-11e8-8147-2653091ccd38.png" + width="50%" +/> +</p> + +[![build-status][]][ci-server] +[![PackageVersion][pypi-version]][pypi-home] +[![PythonVersion][python-version]][python-home] +[![Stable][pypi-status]][pypi-home] +[![Format][pypi-format]][pypi-home] +[![License][pypi-license]](LICENSE) + +[build-status]: https://app.travis-ci.com/Kautenja/nes-py.svg?branch=master +[ci-server]: https://app.travis-ci.com/Kautenja/nes-py +[pypi-version]: https://badge.fury.io/py/nes-py.svg +[pypi-license]: https://img.shields.io/pypi/l/nes-py.svg +[pypi-status]: https://img.shields.io/pypi/status/nes-py.svg +[pypi-format]: https://img.shields.io/pypi/format/nes-py.svg +[pypi-home]: https://badge.fury.io/py/nes-py +[python-version]: https://img.shields.io/pypi/pyversions/nes-py.svg +[python-home]: https://python.org + +nes-py is an NES emulator and OpenAI Gym interface for MacOS, Linux, and +Windows based on the [SimpleNES](https://github.com/amhndu/SimpleNES) emulator. + +<table align="center"> + <tr> + <td> + <img + width="256" + alt="Bomberman II" + src="https://user-images.githubusercontent.com/2184469/84821320-8c52e780-afe0-11ea-820a-662d0e54fc90.png" + /> + </td> + <td> + <img + width="256" + alt="Castelvania II" + src="https://user-images.githubusercontent.com/2184469/84821323-8ceb7e00-afe0-11ea-89f1-56d379ae4286.png" + /> + </td> + <td> + <img + width="256" + alt="Excitebike" + src="https://user-images.githubusercontent.com/2184469/84821325-8d841480-afe0-11ea-9ae2-599b83af6f65.png" + /> + </td> + </tr> + <tr> + <td> + <img + width="256" + alt="Super Mario Bros." + src="https://user-images.githubusercontent.com/2184469/84821327-8d841480-afe0-11ea-8172-d564aca35b5e.png" + /> + </td> + <td> + <img + width="256" + alt="The Legend of Zelda" + src="https://user-images.githubusercontent.com/2184469/84821329-8d841480-afe0-11ea-9a57-c9daca04ed3b.png" + /> + </td> + <td> + <img + width="256" + alt="Tetris" + src="https://user-images.githubusercontent.com/2184469/84822244-fc15a200-afe1-11ea-81de-2323845d7537.png" + /> + </td> + </tr> + <tr> + <td> + <img + width="256" + alt="Contra" + src="https://user-images.githubusercontent.com/2184469/84822247-fcae3880-afe1-11ea-901d-1ef5e8378989.png" + /> + </td> + <td> + <img + width="256" + alt="Mega Man II" + src="https://user-images.githubusercontent.com/2184469/84822249-fcae3880-afe1-11ea-8271-9e898933e571.png" + /> + </td> + <td> + <img + width="256" + alt="Bubble Bobble" + src="https://user-images.githubusercontent.com/2184469/84822551-79411700-afe2-11ea-9ed6-947d78f29e8f.png" + /> + </td> + </tr> +</table> + +# Installation + +The preferred installation of `nes-py` is from `pip`: + +```shell +pip install nes-py +``` + +## Debian + +Make sure you have the `clang++` compiler installed: + +```shell +sudo apt-get install clang +``` + +## Windows + +You'll need to install the Visual-Studio 17.0 tools for Windows installation. +The [Visual Studio Community](https://visualstudio.microsoft.com/downloads/) +package provides these tools for free. + +# Usage + +To access the NES emulator from the command line use the following command. + +```shell +nes_py -r <path_to_rom> +``` + +To print out documentation for the command line interface execute: + +```shell +nes_py -h +``` + +## Controls + +| Keyboard Key | NES Joypad | +|:-------------|:--------------| +| W | Up | +| A | Left | +| S | Down | +| D | Right | +| O | A | +| P | B | +| Enter | Start | +| Space | Select | + +## Parallelism Caveats + +both the `threading` and `multiprocessing` packages are supported by +`nes-py` with some caveats related to rendering: + +1. rendering **is not** supported from instances of `threading.Thread` +2. rendering **is** supported from instances of `multiprocessing.Process`, + but `nes-py` must be imported within the process that executes the render + call + +# Development + +To design a custom environment using `nes-py`, introduce new features, or fix +a bug, please refer to the [Wiki](https://github.com/Kautenja/nes-py/wiki). +There you will find instructions for: + +- setting up the development environment +- designing environments based on the `NESEnv` class +- reference material for the `NESEnv` API +- documentation for the `nes_py.wrappers` module + +# Cartridge Mapper Compatibility + +0. NROM +1. MMC1 / SxROM +2. UxROM +3. CNROM + +You can check the compatibility for each ROM in the following +[list](https://github.com/Kautenja/nes-py/blob/master/nesmapper.txt) + +# Disclaimer + +**This project is provided for educational purposes only. It is not +affiliated with and has not been approved by Nintendo.** + + + + +%package help +Summary: Development documents and examples for nes-py +Provides: python3-nes-py-doc +%description help +<p align="center"> +<img + src="https://user-images.githubusercontent.com/2184469/42918029-a8364c66-8ad1-11e8-8147-2653091ccd38.png" + width="50%" +/> +</p> + +[![build-status][]][ci-server] +[![PackageVersion][pypi-version]][pypi-home] +[![PythonVersion][python-version]][python-home] +[![Stable][pypi-status]][pypi-home] +[![Format][pypi-format]][pypi-home] +[![License][pypi-license]](LICENSE) + +[build-status]: https://app.travis-ci.com/Kautenja/nes-py.svg?branch=master +[ci-server]: https://app.travis-ci.com/Kautenja/nes-py +[pypi-version]: https://badge.fury.io/py/nes-py.svg +[pypi-license]: https://img.shields.io/pypi/l/nes-py.svg +[pypi-status]: https://img.shields.io/pypi/status/nes-py.svg +[pypi-format]: https://img.shields.io/pypi/format/nes-py.svg +[pypi-home]: https://badge.fury.io/py/nes-py +[python-version]: https://img.shields.io/pypi/pyversions/nes-py.svg +[python-home]: https://python.org + +nes-py is an NES emulator and OpenAI Gym interface for MacOS, Linux, and +Windows based on the [SimpleNES](https://github.com/amhndu/SimpleNES) emulator. + +<table align="center"> + <tr> + <td> + <img + width="256" + alt="Bomberman II" + src="https://user-images.githubusercontent.com/2184469/84821320-8c52e780-afe0-11ea-820a-662d0e54fc90.png" + /> + </td> + <td> + <img + width="256" + alt="Castelvania II" + src="https://user-images.githubusercontent.com/2184469/84821323-8ceb7e00-afe0-11ea-89f1-56d379ae4286.png" + /> + </td> + <td> + <img + width="256" + alt="Excitebike" + src="https://user-images.githubusercontent.com/2184469/84821325-8d841480-afe0-11ea-9ae2-599b83af6f65.png" + /> + </td> + </tr> + <tr> + <td> + <img + width="256" + alt="Super Mario Bros." + src="https://user-images.githubusercontent.com/2184469/84821327-8d841480-afe0-11ea-8172-d564aca35b5e.png" + /> + </td> + <td> + <img + width="256" + alt="The Legend of Zelda" + src="https://user-images.githubusercontent.com/2184469/84821329-8d841480-afe0-11ea-9a57-c9daca04ed3b.png" + /> + </td> + <td> + <img + width="256" + alt="Tetris" + src="https://user-images.githubusercontent.com/2184469/84822244-fc15a200-afe1-11ea-81de-2323845d7537.png" + /> + </td> + </tr> + <tr> + <td> + <img + width="256" + alt="Contra" + src="https://user-images.githubusercontent.com/2184469/84822247-fcae3880-afe1-11ea-901d-1ef5e8378989.png" + /> + </td> + <td> + <img + width="256" + alt="Mega Man II" + src="https://user-images.githubusercontent.com/2184469/84822249-fcae3880-afe1-11ea-8271-9e898933e571.png" + /> + </td> + <td> + <img + width="256" + alt="Bubble Bobble" + src="https://user-images.githubusercontent.com/2184469/84822551-79411700-afe2-11ea-9ed6-947d78f29e8f.png" + /> + </td> + </tr> +</table> + +# Installation + +The preferred installation of `nes-py` is from `pip`: + +```shell +pip install nes-py +``` + +## Debian + +Make sure you have the `clang++` compiler installed: + +```shell +sudo apt-get install clang +``` + +## Windows + +You'll need to install the Visual-Studio 17.0 tools for Windows installation. +The [Visual Studio Community](https://visualstudio.microsoft.com/downloads/) +package provides these tools for free. + +# Usage + +To access the NES emulator from the command line use the following command. + +```shell +nes_py -r <path_to_rom> +``` + +To print out documentation for the command line interface execute: + +```shell +nes_py -h +``` + +## Controls + +| Keyboard Key | NES Joypad | +|:-------------|:--------------| +| W | Up | +| A | Left | +| S | Down | +| D | Right | +| O | A | +| P | B | +| Enter | Start | +| Space | Select | + +## Parallelism Caveats + +both the `threading` and `multiprocessing` packages are supported by +`nes-py` with some caveats related to rendering: + +1. rendering **is not** supported from instances of `threading.Thread` +2. rendering **is** supported from instances of `multiprocessing.Process`, + but `nes-py` must be imported within the process that executes the render + call + +# Development + +To design a custom environment using `nes-py`, introduce new features, or fix +a bug, please refer to the [Wiki](https://github.com/Kautenja/nes-py/wiki). +There you will find instructions for: + +- setting up the development environment +- designing environments based on the `NESEnv` class +- reference material for the `NESEnv` API +- documentation for the `nes_py.wrappers` module + +# Cartridge Mapper Compatibility + +0. NROM +1. MMC1 / SxROM +2. UxROM +3. CNROM + +You can check the compatibility for each ROM in the following +[list](https://github.com/Kautenja/nes-py/blob/master/nesmapper.txt) + +# Disclaimer + +**This project is provided for educational purposes only. It is not +affiliated with and has not been approved by Nintendo.** + + + + +%prep +%autosetup -n nes-py-8.2.1 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-nes-py -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 8.2.1-1 +- Package Spec generated @@ -0,0 +1 @@ +89c2c1c809f82d3cc03714660dcac133 nes_py-8.2.1.tar.gz |
