Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Note length multiplier via x MML character #168

Open
KungFuFurby opened this issue Jun 11, 2021 · 0 comments
Open

Note length multiplier via x MML character #168

KungFuFurby opened this issue Jun 11, 2021 · 0 comments
Labels
c++-side Involves the AddMusicK program itself in some way.

Comments

@KungFuFurby
Copy link
Owner

The utilization of commas for parameters sounds nice, but for note lengths, there is a conflict with others. Plus, ties are nice for extending note lengths, but when used for default note lengths (#1 is my main citation), they conflict with the actual tie VCMD ($C6) that is used in the sound driver.

Thus, I came up with a solution that turns a note length into a fraction. Why?

MML's note lengths act as a divider. Thus, all note lengths are currently represented as 1/x, where x is the note length. My idea is to use the x character to act as a multiplier for the note length, rather than using ties (because ties conflict with the actual tie command of N-SPC) or commas (because if a length is a parameter, then the multiplier is optional: using commas would force this to be a requirement).

Thus, by using 1x4 as a note length, you're defining a note length of 4/1, or four whole notes.

The x part can also be defined without a preceding note length to simply act as a multiplier of the default note length.

If the default note length is defined with x as the first character, then the preceding default note length divisor is used and

It can also be used to multiply exact tick note lengths... =96x2 would make it 192 ticks total.

@KungFuFurby KungFuFurby added the c++-side Involves the AddMusicK program itself in some way. label Jun 11, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c++-side Involves the AddMusicK program itself in some way.
Projects
None yet
Development

No branches or pull requests

1 participant