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 --user pym2149

See ~/.local/bin for executables.

To develop

First install venvpool to get the motivate command:

pip3 install --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-35.tar.gz (827.7 kB view details)

Uploaded Source

Built Distributions

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

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

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

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

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64

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

Uploaded CPython 3.13manylinux: glibc 2.17+ i686

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

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

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

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64

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

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

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

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

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

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64

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

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

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

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

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

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

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

Uploaded CPython 3.10manylinux: glibc 2.17+ i686

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

Uploaded CPython 3.9manylinux: glibc 2.34+ x86-64

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

Uploaded CPython 3.9manylinux: glibc 2.28+ x86-64

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

File metadata

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

File hashes

Hashes for pym2149-35.tar.gz
Algorithm Hash digest
SHA256 367925b25496ae6180379b3b1fd3c6d1752bd4b856c1313f9ee59de565909583
MD5 7940d7b96f4a7f8e88d421fcbcdedd90
BLAKE2b-256 62e3bfd087e72413ae698e0051c283ceb7f737c19be9b209656414166ec31a04

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 0692d41c2f528523b9a7d1a2994a60607b6fbff3addb73a6de521604ce110a83
MD5 776ac179e046bc30ba1495500eb23a0b
BLAKE2b-256 e02c69d6ba3ba082289f9ff469e2abfb0d3959489c8c23fe8598c2e306b4adc4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 4e3439c8d5a3194e4415d6d4f0b8ffcef802b04571a33d9898e54b2323e969c4
MD5 f7b2566bcefc8ffba567806a336fb6e4
BLAKE2b-256 c1ba9c27179948b815e6fd45a9f22c24b1a456280a69ac1eb40dc349d5a15c56

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 72320475f966319a69db44a93861b074ed3425e31ab611562d3817415cbc145a
MD5 50382daa8fb11e18aa942eb996d22d4f
BLAKE2b-256 185b1678cdf98958e55735a63a2aaa365f553212a3500013c3e477a03881d0e1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 44e6656eca0693710a0ddf2b81ef038ce6f8835bf517047f45a91c6835f33d29
MD5 a5f265f06af4c6ad9fac99ccc7a9349a
BLAKE2b-256 30079264d73049f49d8f085636261f6ce6b7a516b21bc85b377deabf194d685b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 f0edffd9c049b5443e660bb000c42c4e3fddbbba6942d9638e7416a5ce67b7ce
MD5 f3413aa6e6abd1143f51f25f08561f12
BLAKE2b-256 2f8d4243e1e0465a15f3dae4f4a7d1e71f8601c9b7608b1756f3fc0718ce3c34

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0318faa9e006fb31a818e0f863ad69e4a3bde131ab5624bdf4afec6ba546c45c
MD5 3b40f2662ffe06b2284e4f49e5cd28ea
BLAKE2b-256 e52871404cfa5b782887f8aec8f0c8073f3cd7cc9a178667ae5eb7c533190dce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ce039a429744746aebd3357c3724c402b92b6d4025fb9b4447ff854e4d600644
MD5 4c27cb2de81a6c9d0b5433a44302765f
BLAKE2b-256 a3480d75965781c09e07eb549efed51f0e5c92698845f12f34179df5f06f346a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 7d715f25d309a47ad0e7cff557b65f2b9cd85a47e8036fd31713c07da92b7af1
MD5 361811ddb6fd29127ba45907295f48d6
BLAKE2b-256 5f6a82c6dd7856fc9054b1e5d075f093d926c67cb570dd53001b6fabcfcf1a51

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 12a3721165c5f4d7b56b6ccb1a7a88b8c575a7cc654b66e7e020d87707f67ee1
MD5 cbdd1dd883a7e2d739faec6732a258ee
BLAKE2b-256 63f7901a44640b7f36828dd8d36ee546d2f0d741c9dc8e5b8a94612f35f06e71

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 b5377bb6df906f9f01bf1e7972a6ae7bfdf5debf605f1494b65bd7cca149f6ab
MD5 ee7906e1ebab46a89585f48a073cf0de
BLAKE2b-256 c7e784e3e894c250878222c81ca8c18e617b5f341c7239982e24dc7ebe7566b5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8910ebe0527735f99580412a88145a9a2b9f812b90d52bf11bf7908f0d1c1953
MD5 1aee7dca4fb4375d9934888119eceefd
BLAKE2b-256 ca55eadedc4f69a8a7006f0d4fc8aa76ae44c5592dd8a5057c852122c2c5d70e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 70edc8ad99018d665c41d54f2da5845996bf4558b416c2482fbe1bdf60e87c12
MD5 688a027b082021c85963285f59cf2a5c
BLAKE2b-256 bdc38c5070ec622af2966ad8e4123bc0687d1062fca025814f25a3f2cd4ca782

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 75fdc94f13d2382301ad904b235a1bdbbcd0dae5fd3356b8a78d784584902bd4
MD5 8bfc3c750adbf23f6028f16cae142056
BLAKE2b-256 0d656244b6889549f77fb9324db06ed1e8542aed8bb5241485da795a07165089

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0839406c972e8c28ba272be61b456cebdf8a6b1c734a9aa6e829ff714ff7c6a1
MD5 3108dc1aad9fea6df9014b660668d054
BLAKE2b-256 8365b2deec2790bba08273cec4e0fbe9262b0ee57e816dca3f4239346272a2df

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 987a2d1ed13bd8af4c3fc0785ebefb2f936278023f5972c20c281d17ad3e4988
MD5 24d3ab9cd1d58bccce15f7afbf3588ea
BLAKE2b-256 6c579f54f0b36d1ea43340cabcba59520fdec48cf9c07d7ac32c723af72296fe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 9f57d570b55c18c84711c8dc6f19fc7099651812236900a01148baea5f76741c
MD5 91d9d8e0ea451e688fbfbf10fbc0ee66
BLAKE2b-256 83667eaa9575721f8cae7f0efebf92973cfefc9dc4bd1ffd2103ee3ee0bb936f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp39-cp39-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 38c3b2dcae188ff7c5380a6ea70ad03e24bd6c630498316819e5e4ab7671a298
MD5 159827254e81cf55f3266f8c3ecdb35b
BLAKE2b-256 915d380e296b2c840efa66d8c791539aaca3a61da4e31713a47949165f8f6a9d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp39-cp39-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 082611d2bb3efaf3e2b9637302d061143262e13b0d9576722f284b87229a4719
MD5 46025d5339d0c2ba096f0e469af3c7b1
BLAKE2b-256 a69e237b59a1022af2efe1fd46821d19d9c47ca539ea5df8fa7db40403b2cf57

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a0f5cad6d5f3d70fc4bf8687d375851a156fd353ebf7b0a249e194c8f648476c
MD5 3b5148972cb06775f77df1fac00f0d23
BLAKE2b-256 f6d6b5ea04dffcda3311b96deaba20d4bbd96dea2b1e30c0c4f428e11cef203f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-35-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 048b676273c912071cd8617bfb82cdf7d2b523ccb7850356ea5ad34dff443448
MD5 ae0be09db7ba3c116f6c0e498362ec92
BLAKE2b-256 e3d892eb5a2e408ddec08a1f3686404a8942b46b6899a5909e3c910128da654a

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