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-44.tar.gz (825.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-44-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

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

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

pym2149-44-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

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

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pym2149-44-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

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

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pym2149-44-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

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

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pym2149-44-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64manylinux: glibc 2.5+ x86-64

File details

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

File metadata

  • Download URL: pym2149-44.tar.gz
  • Upload date:
  • Size: 825.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for pym2149-44.tar.gz
Algorithm Hash digest
SHA256 121ef5f62bc4e0311052844859550fc836cf65886545bde8e2f32713e2c55c6d
MD5 84ce1e0b6bb44b85c5cd8b01af23fef8
BLAKE2b-256 9317700559df5816ef0a3dfa4898550f6eb4a125d089102d876e4ed95fa6d495

See more details on using hashes here.

File details

Details for the file pym2149-44-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-44-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 a4e4056cb6c3418b1dcdda8a2dfc60c5cfd503769db387942c2ee9f6101d81eb
MD5 393625f5f6e11050216454eab1d5f994
BLAKE2b-256 9eb71e6650eed8425a9acbc0608ab6b2c3fb16f8c1e252223ac49953730b7b0f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-44-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 55c1daa1ba762dd010e98e6c7f3c55bbf7fcfa63ab0a019a44d67d2e232af407
MD5 1a0ddf0701ad513bee3c700dce81c57e
BLAKE2b-256 aa0c82dd196d857f1411099e637da88e11bc534b20e7d246ff6fa68e51c541cc

See more details on using hashes here.

File details

Details for the file pym2149-44-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-44-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 f052613e1104e1dcd0faac6936365cde435094a99c303dbda3e4449bac58bcf9
MD5 48c2ff21fc87624635d8bb1780f9065b
BLAKE2b-256 089feb1e530504f4c9170a2fd097e0bae8060c6ec68da85e3a01b408671ed6bf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-44-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 77115617672feaa4acab7efad1f7580696529f838e32759cb7964ed31439c035
MD5 c62f9f3b7a607df4020a49a03cf72659
BLAKE2b-256 c578de520f760e1d90e01bf46223404934b9701e595bc89062b8af0839da556a

See more details on using hashes here.

File details

Details for the file pym2149-44-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-44-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 c5070f629962dfb28dd9d8fe4ae20121acbf4c8da403372c96451350ef7e3ff9
MD5 fd09e08567558d8f2bc091dcf13f3610
BLAKE2b-256 391537a9922d017397d74176dbedb77f1e01ec3d10c215a03766ff74deabdee8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-44-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 8c953d177225e469de8113a1304bf6c5a3a1f2118f36a769242a5b2f6f312b07
MD5 c64cbeadb8d76477ac807eacc03564c2
BLAKE2b-256 b0b71d35f123fd21cc1a4f7962ed0cc2883140b9a4649c0c0628ad1b02a17e1f

See more details on using hashes here.

File details

Details for the file pym2149-44-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-44-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 4fd76ec657a6905a77b27ca71749bba00fd7a8b4b4f94309374e7a1ec7c84185
MD5 77de5823cabfb8bab529046cfa7feaed
BLAKE2b-256 b2b43343662b12c3c6d121a3cc312e6933bae3c8349907f25f373ec32c6a8c29

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pym2149-44-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 c42be371e6b44fb6b81b866f9627b10bfda785667c4211b67838fbb9c05df01e
MD5 9eed28de7fd44a5322ec2c85ec33eac5
BLAKE2b-256 3c4978e36e7ec0038e4554b739b3ba3a186aaf056d51b723c8c081552b55e265

See more details on using hashes here.

File details

Details for the file pym2149-44-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.

File metadata

File hashes

Hashes for pym2149-44-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Algorithm Hash digest
SHA256 9dd9e28c4c1f9144ee425dad5b61e24e07a3d5d7d3272594040bf0406537f30a
MD5 72888e3f33e03aa3251bc76bbfa59844
BLAKE2b-256 1dfcbb0580e4af9fd8d68d53e8765af08f472c1753c84340589760433be8b564

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