forked from len0rd/rockbox
FS#13539: Resync mikmod plugin with upstream
Brings it up to libmikmod 3.3.12, relased 2024-12-31 Also fix a segfault that only happened on simulators when using non-default samplerates. Change-Id: I2ade2d72a00edab5395328fe76a88a88516aac72
This commit is contained in:
parent
08c32cee7c
commit
af7ed73f31
29 changed files with 1860 additions and 706 deletions
|
@ -182,9 +182,12 @@ void S3MIT_ProcessCmd(UBYTE cmd, UBYTE inf, unsigned int flags)
|
|||
UniEffect(UNI_ITEFFECTG,inf);
|
||||
break;
|
||||
case 8: /* Hxy vibrato */
|
||||
if (flags & S3MIT_OLDSTYLE)
|
||||
UniPTEffect(0x4,inf);
|
||||
else
|
||||
if (flags & S3MIT_OLDSTYLE) {
|
||||
if (flags & S3MIT_IT)
|
||||
UniEffect(UNI_ITEFFECTH_OLD,inf);
|
||||
else
|
||||
UniEffect(UNI_S3MEFFECTH,inf);
|
||||
} else
|
||||
UniEffect(UNI_ITEFFECTH,inf);
|
||||
break;
|
||||
case 9: /* Ixy tremor, ontime x, offtime y */
|
||||
|
@ -197,9 +200,12 @@ void S3MIT_ProcessCmd(UBYTE cmd, UBYTE inf, unsigned int flags)
|
|||
UniPTEffect(0x0,inf);
|
||||
break;
|
||||
case 0xb: /* Kxy Dual command H00 & Dxy */
|
||||
if (flags & S3MIT_OLDSTYLE)
|
||||
UniPTEffect(0x4,0);
|
||||
else
|
||||
if (flags & S3MIT_OLDSTYLE) {
|
||||
if (flags & S3MIT_IT)
|
||||
UniEffect(UNI_ITEFFECTH_OLD,0);
|
||||
else
|
||||
UniEffect(UNI_S3MEFFECTH,0);
|
||||
} else
|
||||
UniEffect(UNI_ITEFFECTH,0);
|
||||
UniEffect(UNI_S3MEFFECTD,inf);
|
||||
break;
|
||||
|
@ -211,7 +217,9 @@ void S3MIT_ProcessCmd(UBYTE cmd, UBYTE inf, unsigned int flags)
|
|||
UniEffect(UNI_S3MEFFECTD,inf);
|
||||
break;
|
||||
case 0xd: /* Mxx Set Channel Volume */
|
||||
UniEffect(UNI_ITEFFECTM,inf);
|
||||
/* Ignore invalid values > 64. */
|
||||
if (inf <= 0x40)
|
||||
UniEffect(UNI_ITEFFECTM,inf);
|
||||
break;
|
||||
case 0xe: /* Nxy Slide Channel Volume */
|
||||
UniEffect(UNI_ITEFFECTN,inf);
|
||||
|
@ -259,9 +267,12 @@ void S3MIT_ProcessCmd(UBYTE cmd, UBYTE inf, unsigned int flags)
|
|||
}
|
||||
break;
|
||||
case 0x15: /* Uxy Fine Vibrato speed x, depth y */
|
||||
if(flags & S3MIT_OLDSTYLE)
|
||||
UniEffect(UNI_S3MEFFECTU,inf);
|
||||
else
|
||||
if(flags & S3MIT_OLDSTYLE) {
|
||||
if (flags & S3MIT_IT)
|
||||
UniEffect(UNI_ITEFFECTU_OLD,inf);
|
||||
else
|
||||
UniEffect(UNI_S3MEFFECTU,inf);
|
||||
} else
|
||||
UniEffect(UNI_ITEFFECTU,inf);
|
||||
break;
|
||||
case 0x16: /* Vxx Set Global Volume */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue