Skip to main content

YM2149 emulator supporting YM files, OSC to JACK, PortAudio, WAV

Project description

pym2149

YM2149 emulator supporting YM files, OSC to JACK, PortAudio, WAV.

Install

These are generic installation instructions.

To use, disposably

Install the current release from PyPI to a virtual environment:

python3 -m venv venvname
venvname/bin/pip install -U pip
venvname/bin/pip install pym2149
. venvname/bin/activate

To use, permanently

# Tested on Linux and Mac:
pip3 install --break-system-packages --user pym2149

See ~/.local/bin for executables.

To develop

First install venvpool to get the motivate command:

pip3 install --break-system-packages --user venvpool

Get codebase and install executables:

git clone git@github.com:combatopera/pym2149.git
motivate pym2149

Requirements will be satisfied just in time, using sibling projects with matching .egg-info if any.

Usage

# Play a tune written in the Lurlene live coding language:
lc2portaudio 'contrib/Jochen Hippel - 7 Gates of Jambala Level 9.py'
lc2jack 'contrib/Jochen Hippel - 7 Gates of Jambala Level 9.py'

# Play a Dosound sound effect:
dosound2jack contrib/sounds.s snd19

Commands

bpmtool

Show a table of speed (updates per tracker line) to BPM.

dosound2jack

Play a Dosound script via JACK.

dosound2txt

Render a Dosound script to logging.

dosound2wav

Render a Dosound script to WAV.

dsd2wav

Render Dosound bytecode to WAV.

lc2jack

Play a Lurlene song via JACK.

lc2portaudio

Play a Lurlene song via PortAudio.

lc2txt

Render a Lurlene song to logging.

lc2wav

Render a Lurlene song to WAV.

mkdsd

Compile Dosound DSL scripts to bytecode for playback on a real Atari.

ym2jack

Play a YM file via JACK.

ym2portaudio

Play a YM file via PortAudio.

ym2txt

Render a YM file to logging.

ym2wav

Render a YM file to WAV.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pym2149-38.tar.gz (827.9 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pym2149-38-cp313-cp313-manylinux_2_34_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

pym2149-38-cp313-cp313-manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

pym2149-38-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pym2149-38-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl (1.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686

pym2149-38-cp312-cp312-manylinux_2_34_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

pym2149-38-cp312-cp312-manylinux_2_28_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

pym2149-38-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pym2149-38-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (2.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

pym2149-38-cp311-cp311-manylinux_2_34_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

pym2149-38-cp311-cp311-manylinux_2_28_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

pym2149-38-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pym2149-38-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (2.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

pym2149-38-cp310-cp310-manylinux_2_34_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

pym2149-38-cp310-cp310-manylinux_2_28_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

pym2149-38-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pym2149-38-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (1.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686

pym2149-38-cp39-cp39-manylinux_2_34_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.34+ x86-64

pym2149-38-cp39-cp39-manylinux_2_28_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

pym2149-38-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

pym2149-38-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (1.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ i686

File details

Details for the file pym2149-38.tar.gz.

File metadata

  • Download URL: pym2149-38.tar.gz
  • Upload date:
  • Size: 827.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for pym2149-38.tar.gz
Algorithm Hash digest
SHA256 9f440fd19819733f8b1275cca9d291de825c68c7280aedffb3a5bfda02b0524f
MD5 44fb3d505e4f2ffabcbea0d59c324454
BLAKE2b-256 7a9c07c87378a7ee713e6ab41801990f7dac493487ffdc65490f7eb8a611eb3e

See more details on using hashes here.

File details

Details for the file pym2149-38-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-38-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 1a1dd763407d7d990821c6491771ce4bbf95936cf32db791cfde145d0c92e087
MD5 e7fcbfd6280a04e67c3ae3afdcc5f63b
BLAKE2b-256 313b2f36d45307475d4e1ad1ea57c030f14c46f30bfaab37b807bc92f6b6a7dc

See more details on using hashes here.

File details

Details for the file pym2149-38-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-38-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 37313ab2c6f7157246337ed7dcd3a4367f5b93936e5d6aed35cc7185caecc8b0
MD5 7f187e34c9f8da8372caffc934ab579a
BLAKE2b-256 3c4b569ff291855c1a3b89847c499750f2ac623809280051363d952897c59beb

See more details on using hashes here.

File details

Details for the file pym2149-38-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-38-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fa16f5a017f7ffda5097fbe66d9abbc9a0f8aad31b5700abc9b424bf5e088e94
MD5 b8f5b7fefa14c2e0cdf86c015d00c7fb
BLAKE2b-256 e8df6e15ddfc9fdbfc83b13850fbdb193115aa183261cf567c660590b85cd388

See more details on using hashes here.

File details

Details for the file pym2149-38-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pym2149-38-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 065dc752d179070540b4708983f5ddb8db80307348b31afb3e2decfcbe34c56b
MD5 bbe97e5e3f557381ea46964b9c765130
BLAKE2b-256 099f1cf06e96aae9db7fbc25b71c44fecfa515bb4640116f77f5f22072130911

See more details on using hashes here.

File details

Details for the file pym2149-38-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-38-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 dfb89c7ddf984364e38f82404b111a098018600688b3b269923979e3f9e36824
MD5 7bbde679d3d9d762d953fafd864708a5
BLAKE2b-256 95c86e8717ce834d3819244ecd15703708655fff16f200fcd6a6e45276f17c2c

See more details on using hashes here.

File details

Details for the file pym2149-38-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-38-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 80f616aef84137593309a0b05a82904a4aadfa568c204707973d97213568df6e
MD5 59141de93d4b278479c1de3272928178
BLAKE2b-256 95d4ec3b73223c82efab376a4249df9030bdf76378f0ad3340662bd48b7451d6

See more details on using hashes here.

File details

Details for the file pym2149-38-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-38-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 04efd1f26171c7329d4e97adb8ffe809cc9207f37b081ceb76346454e2110542
MD5 2e5bb93a5cb85d918d60ed96402cd8c0
BLAKE2b-256 5e667c345c7077f1d6124932450138cd80d076974d415f6d5068ec611cc850bd

See more details on using hashes here.

File details

Details for the file pym2149-38-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pym2149-38-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a5708364b6ee40825fbb55fc82ac06c9adf635f39249ced050b1837ba35ca5b8
MD5 17529443ce928f68b029e11c396dc9d2
BLAKE2b-256 8875eb0af79d215033095e3c7ba9918df80c4b6d8b89746893752a9b1e003b8d

See more details on using hashes here.

File details

Details for the file pym2149-38-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-38-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 548cf71613bfb768dc4111e80c2fb0db9fbbfd99cf47d9bf6d4a6e82dec3e2a8
MD5 aa13fb34b52bc7f522bde306312c62a9
BLAKE2b-256 f5b724ede188c8c7867acab1d7def62cb5566314b1c3271422435d8c147e4a2b

See more details on using hashes here.

File details

Details for the file pym2149-38-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-38-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dde2c1bc4a99d1d7a2e4eea9a9339805ad5a069699765cf7bfd61cee6fcf2e25
MD5 76bc67b49115d6c24ab45883b00dd881
BLAKE2b-256 48d475f36249bc2e96425ce0d6fa3986625429cf04d25cbd3832d57398a0df78

See more details on using hashes here.

File details

Details for the file pym2149-38-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-38-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 530272c133fc0baa54305757b2b9755efd2b7290f869f8aa03f0c7588c0919d5
MD5 cf3e51735a87530143f20b48cd0a3e87
BLAKE2b-256 8f6feb0b9af281a0ecf8259413c349301766a86b7d7b6064cdd78d3894af90fc

See more details on using hashes here.

File details

Details for the file pym2149-38-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pym2149-38-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 9dfcaaf1687bdd37a193ccb7db91aef1df647383784596af91b6941140652ee1
MD5 b62257502495619d43328b45536f7eb9
BLAKE2b-256 427e40b69423487275198090d28cb70a1aeae95aed947b383bb8d05621e97493

See more details on using hashes here.

File details

Details for the file pym2149-38-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-38-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 9f25046ea28a672182bb1230aae2099238ba8931c9ecd352348f603c6ab78c3c
MD5 9e330d09703ea22682be8ec530814411
BLAKE2b-256 87ac57df1dccc0736377e9b87eee073ac33d8eeff89cd706de0a4274b8c9cd05

See more details on using hashes here.

File details

Details for the file pym2149-38-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-38-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f8eb94fecce246d1b0068769e3e557ee53718f003721d3b903d7887b6f84e9fe
MD5 9353683bb2eb744c50cd012823833e08
BLAKE2b-256 6b48301da9ab5e38485856e3c81ae5da01f811d9a1ef7e4f98a3b1d69f5899b4

See more details on using hashes here.

File details

Details for the file pym2149-38-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-38-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a66ed6b9d5048f51b671a5709ae5056e7c099f9387847f2129da873f9b4cf68a
MD5 aee994ecb3fbc66b2d17932b74ec1dba
BLAKE2b-256 dd32278ac8e9821d2a52eb858da16479bab59ff27f36c815db0210566885c9b2

See more details on using hashes here.

File details

Details for the file pym2149-38-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pym2149-38-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 96caef9d959165d01adf833d1a68486aeb9418dcc7b8dce2d295158264ac6e65
MD5 40079bd6c861127120294f0741d62a80
BLAKE2b-256 9ead746164cea7210bbf3a0e4d15d6d34a1b7c17f9eafcf2a0c201edbb052408

See more details on using hashes here.

File details

Details for the file pym2149-38-cp39-cp39-manylinux_2_34_x86_64.whl.

File metadata

  • Download URL: pym2149-38-cp39-cp39-manylinux_2_34_x86_64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.9, manylinux: glibc 2.34+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for pym2149-38-cp39-cp39-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 fd8e7ea0651eb807a10525ad11804b7441d5bb638be9b2e2de04fd6d1ac6e36a
MD5 7a9b8b93fb803f99f42b1f72f05ab3d6
BLAKE2b-256 03ce5fba8f5eb5ee836bf6a6c3c796cf8b6a20150ec6e5d180958030e9f66b82

See more details on using hashes here.

File details

Details for the file pym2149-38-cp39-cp39-manylinux_2_28_x86_64.whl.

File metadata

  • Download URL: pym2149-38-cp39-cp39-manylinux_2_28_x86_64.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: CPython 3.9, manylinux: glibc 2.28+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.12

File hashes

Hashes for pym2149-38-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fadd31d17363605efb523bed39612cb72cb19f0618c52b6d6024a54e42c0b9f8
MD5 4c0aded848da7f396749ad2c2980c75d
BLAKE2b-256 d2326e4744c14ed1fc60303984b0a76d839d1f27c7b0adb22e907b0259a38758

See more details on using hashes here.

File details

Details for the file pym2149-38-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-38-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 25a3de5d7bd83aedb79a39df66d45e599db6d5e23afeef61558797d86fd68974
MD5 f3f863050c4a61195c34bbf7b2ee3823
BLAKE2b-256 c93864618c9caa012c224e51b36bffa6bdca57faf17ada179ce84871ac1cb966

See more details on using hashes here.

File details

Details for the file pym2149-38-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for pym2149-38-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 8178ca9d4d69f4d819646df1f6ff4d112ce10a77e9b47cd04f791dd342346add
MD5 819d0b0b0a3b2e4890c978887316e440
BLAKE2b-256 071d1d2ad4206956ad28d7670add9b19c9d9752dc93f41aa6f54861386807282

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