Add emulation of the FT2 pattern loop bug.

One of the most (in)famous FT2 bugs is the E60 bug: When E60 is used on
a pattern row x, the following pattern also starts from row x instead of
the beginning of the pattern. This can be avoided by placing a D00
pattern break on the last row of the pattern where E60 was used.

Described here: http://www.milkytracker.org/docs/MilkyTracker.html#fxE6x

Test tune: http://api.modarchive.org/downloads.php?moduleid=55647#roadblas.xm
Merge pull request #15 from eltoder/ft2-pattern-loop-bug

Add emulation of the FT2 pattern loop bug.
Update changelog

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
[test] Add module length test for roadblast.xm

This module is a test case for the FT2 loop bug emulation.

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Disable FT2 loop bug for non-XM formats

We use the FT2 replayer to play XM and closely related formats such as
RTM and MDL. Enable the FT2 loop bug emulation only for XMs (and also
disable it for converted modules).

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Disable Milkytracker-specific delay quirk

Milkytracker is likely to change this behavior to match Fasttracker's, so
don't keep it as a quirk. (Also free one quirk slot)

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Remove unnecessary configure macros

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Add missing Android NDK build files

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
[test] Change duration tests to be more strict

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Fix XM portamento target reset on new instrument

According to the OpenMPT Porta-Pickup.xm test case:

"An instrument number should not reset the current portamento target. The
 portamento target is valid until a new target is specified by combining a
 note and a portamento effect."

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
[test] Add OpenMPT Porta-Pickup.xm test case

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Fix XM portamento with offset

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
[test] Add OpenMPT porta-offset.xm test case

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
[test] Update reference data for IT portamento envelope reset

For some reason reference data was not correct if compared to IT2.14v5.
Maybe it was validated by comparing to Schism Tracker?

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Fix IT portamento and fadeout on new note

These had to be fixed after revising IT test cases against IT2.14v5, It
seems that previous test cases were checked against Schism Tracker.

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
[test] Update IT portamento after keyoff reference data

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Fix IT portamento after keyoff

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Fix IT compatible Gxx portamento after keyoff

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
[test] Update portamento tests to check mixer data

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>
Remove workaround to get FT2 previous instrument

Signed-off-by: Claudio Matsuoka <cmatsuoka@gmail.com>