XPMCK icon indicating copy to clipboard operation
XPMCK copied to clipboard

Tempo and/or Note Length initialization

Open Xyz39808 opened this issue 8 years ago • 1 comments

The simplest of test mmls will not play sound when exported to most formats. Though no other mml dialect requires it, XPMCK seems to require a default note length OR (inclusive) tempo defined in the channel for it to output sound. The compiler will still make a file with the even the proper tick lengths, but it will be silent. VGMs turn into 0.02sec long files. A v10 o4 cdefg ;nothing plays

I would try to classify this as "they don't have default values if you don't set them" but they kinda still do. If you set a tempo then an undefined l# acts as l4. A t150 v10 o4 cdefg l4 cdefg ;note duration is same as l4 even before an l# is defined If you set a note length then the undefined tempo acts as t125.

A   l4 v10 o4 cdefg
;B  t125 l4 v10 o5 cdefg        ;remove comment and enable channel B to verify that tempi match

So far the only export I've seen that will actually play is -at8 into a .sap file. But it instead just plays the first note indefinitely

#IFNDEF AT8
#ERROR  "Compile only using -at8 flag"
#ENDIF
A   @7 v2 o4 cdefg

And even more of a clusterfuck is this one odd bug I found while testing. Using t125 doesn't count and it's as if you entered no tempo and triggered the behavior. A t125 v10 o4 cdefg ;the previous test used t150 for a reason

Xyz39808 avatar Apr 13 '16 10:04 Xyz39808