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-36.tar.gz (827.8 kB view details)

Uploaded Source

Built Distributions

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

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

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

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

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

pym2149-36-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-36-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl (1.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686

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

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

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

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

pym2149-36-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-36-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (2.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

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

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

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

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

pym2149-36-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-36-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (2.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

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

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

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

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

pym2149-36-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-36-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (1.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686

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

Uploaded CPython 3.9manylinux: glibc 2.34+ x86-64

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

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

pym2149-36-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-36-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-36.tar.gz.

File metadata

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

File hashes

Hashes for pym2149-36.tar.gz
Algorithm Hash digest
SHA256 8ab3a83c80ef7a19e9dfea561278173f65945e69b8aa29773c9b8c0f84bbd4d2
MD5 5c83e4b3bc1cc5cf51c0a9155c48c948
BLAKE2b-256 a6e7833215469e4b6cf875523b81ef78ea1a318f057d80292af2039a918467e9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 7f6dcddf1a295381d20b49d6c71ff59323b7fc22f3d9873d6bf2cf96d9ec3b45
MD5 707a1dd1acdc5f783b0eb1f08a471df0
BLAKE2b-256 1ad1cdb3f39b92f05bb147ff3672218fc70d3f220fa069a344197ccd7a73ff64

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 7ae7595ab17418e32b7c957cfd7547a4a2e96ccca45c372cd8527515704c2286
MD5 974467248a520aada70fd49b744208d6
BLAKE2b-256 b4928bb1416cc71b32f53b61ddd55b2f04d76f7783f82589ca1ac79ea6f62228

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2856bde243bdf65667f2dd73f0e169cc1b1f4d8ac2827aa3222527aea067f5f8
MD5 fedda1e161595681d6c0a9c85de088dc
BLAKE2b-256 1f3ec4b60a5b25f0c544083f3439e0cb0be87c84640842389787919d108d7b13

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 f431b201e893994597a295b89360421d2542467c33653086032c838bb63be327
MD5 35fcdf043ab0fc46e2a84b442d769500
BLAKE2b-256 476c2bda1d20c668a580c614cc791b89d990ffb17e2656769b65705ff7238b99

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 27b5b8ee5aef8f6414a3f6d9db4baa339c7a85a9923256db84174f951fafe798
MD5 3c118660ecadfe505dc9d99a61503ba3
BLAKE2b-256 7c8d4b39c81616ddbedc3dbcc9db48f86ff85c5e06845f561f7f7ba6607a230a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4467d5aa25d3923f0edff34c186a63ab455eb68c9785e9e5376bb67d5c4bb44a
MD5 97d26a73c94411b2c78f04e777a52bbd
BLAKE2b-256 a8cb3e650e17eb2f1386a93881de6bdee549464994c17f2eb7bb78cc5019dd21

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0f4265b49374def98a5ba8d64a4fcdb97120771ac283ffec05059457be80a7eb
MD5 0f149b68c04de6e3cf665c50b7efa174
BLAKE2b-256 b516be3253d05097545b8b7b734bd81b85e1b0882ab814a961c73d49648850c3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 26bfe29b7d585356aad9189daea38807b1d6e00b908ebe4646c4a2e2d13ea8b6
MD5 a4914b4ba857154bd608ef42eaa8fb28
BLAKE2b-256 209213088c0c454eaf4b4e3b749ede0e86291f33e473671c597f30f8fb56064e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 5f42e069f46fa3208dd279afbe310b7f650e5ac9ade30b5a01a3f91627084577
MD5 93467a26a2f5fcf987718d75a2f084b2
BLAKE2b-256 a2f6ae80f96f11de08206081dad821b26e45d72935ca95398053a733fb7d0022

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b24361e0208a711d6a7d3221e40e98d2b638e2106b09a20f30e65fe050d9208a
MD5 f77b61e1bb296c94ce5d848a07aadb64
BLAKE2b-256 df46fee795201993e195320564d82d48ddc800fa70faea510ad211ad6b16b991

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a15d6f9999bfeec5479b7ffd24f71a84f2f7e326572b4056d6148c30c5a86690
MD5 7fcbe71353f2341eb7170106e10000b7
BLAKE2b-256 0f35b81984e62914604187a3b12888104781b6afb606ad61613bd35101e58177

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 b8fc649d94e5db0871c8860cf6906a5a9f22379c8e5bf1e49c0c030574e4edf7
MD5 062de3c937ab294381d3fe749dae34d5
BLAKE2b-256 f03958b31b0e48cb139ab2b5d0a3cb9eca90989107f1f1fd890bceba81c50c5f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 dec7bc2e7a0fe8af6e0dd828ab71116144391a9e98373e1e88d9a1bd2fec162f
MD5 21a2976d7b2526b2b8cd81c13ba4983c
BLAKE2b-256 2158d27d33aa75cd16432c8be9b2a5170088971bbdb2ccf32da8c4a822cdd6a5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 51ab2a27197f5806bd87013f0f2b85a0e5a6392fb23ed9bfa002883a1671db1d
MD5 cfbb95c4d567c6fc7da0c85a762bde8b
BLAKE2b-256 7a45daeccaf59ea65252d63a1202c203f902ab9ffed50d272bc98a952710daa1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e58f66c7cc431d780a3ddaa4438fc34d9e6616b3a341a048aae823cb11b7c813
MD5 1907cddb6f9f31cc1178cba8884e8aee
BLAKE2b-256 417a7d229db28707faf65341f5fa3458737c4cad8831966f4a64383be9886f1e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a8728838e0275d4ef4f1d9e848be5b6e3b02077d4e5540c3d9ad872463d4fd3e
MD5 1ff19991869b9c8f116ae7c34e3de2d8
BLAKE2b-256 0491207aecb763b75ec73667b6bdb60f29845a0f98a851db6e88a688a88844c9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pym2149-36-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/5.1.1 CPython/3.10.12

File hashes

Hashes for pym2149-36-cp39-cp39-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 a866db649e1b7c6028c2ed77f8de386fb0c3878a6d0dafce16ed6887b8d6f89d
MD5 654d315683016b32f104ec06d8211904
BLAKE2b-256 7d79bcb9ab322eb53cbedce868b9c35ff6be3070f8718d86150e4afccdc2d5d9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pym2149-36-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/5.1.1 CPython/3.10.12

File hashes

Hashes for pym2149-36-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b7762f4c3a62149cf7c43dad91832af89a702e1899b7467196ec5946e158578f
MD5 49b7d488fcf3fba3e2c7979d9964a616
BLAKE2b-256 afdc85a49e8c1f5a4329f58d7fe124937ce450c058144c9e204c2fa72a7e934e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7313283610a2d580b5e226332f77d132fd53ce54ac88785af9e23993310f8595
MD5 62459e88621f2f8d04be9391fa0b007b
BLAKE2b-256 6b6534b1c239b7574631036403ebc784fe254a4f035edf06969e6bde4e2097ab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-36-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 21697cdf11229babfddaa6e3d9c6825cf78a2a705c8c59bdde7fd129cbd8a2ef
MD5 7b6ecc73f82740bb8db10a19bbae8dd8
BLAKE2b-256 fd57a907a6a00a656266d34da6c2ae1411d6903e92507973684b18254fc3ddd7

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