xmp-openmpt: An XMPlay input plugin based on OpenMPT

Started by saga,

saga

Quote from: MaxkatsurIt worked by setting priority format "S3M" in OpenMPT plugin settings.
Note that if you only want to use the OpenMPT plugin for S3M files with Adlib instrument, you can also choose the "don't use built-in decoder on Adlib files" in XMPlay's module settings.

Quote from: MaxkatsurHowever, it doesn't support automatic resizing of MOD Pattern Display; the very OpenMPT doesn't really has custom pattern displays that can be resized either manually or automatically.
Do you mean the fact that it does not react to the "Auto-resize to fit contents" option in XMPlay? I am not sure if third-party plugins can react to the same way as XMPlay's built-in pattern vis can; I think this behaviour is new in XMPlay 4.0 and there is no API for it? Maybe Ian can weigh in on this.

Ian @ un4seen

The plugin can tell XMPlay what vis display size is needed by implementing the VisSize function, which XMPlay will call when auto-resize is enabled. That function receives the current size, which it can modify as needed, eg. set the width to fit all channels:

void WINAPI VisSize(HDC dc, SIZE *size)
{
    size->cx = channels * column_width + extra_width;
}

manx

2025-12-14: xmp-openmpt version 0.8.4 released!

 *  PT36: Some MODs with samples larger than 64k inside PT36 containers were not read correctly.
 *  IT: Files are no longer interpreted as ModPlug-made (thus disabling all compatibility settings) just because instrument extensions are found (no such files are currently known to exist in the wild).

 *  mpg123: Update to v1.33.3 (2025-10-05).
 *  minimp3: Update to fork <https://github.com/manxorist/minimp3/releases/tag/openmpt-2025-11-07-v5> commit ec51f21ef59ecf6d87bdcb028fe8f76fe761e0fe (2025-11-07).

See https://lib.openmpt.org/libopenmpt/2025/12/14/releases-0.8.4-0.7.17-0.6.26-0.5.40-0.4.52/

Downloads:
 * xmp-openmpt for Windows 10 2004 (or later) and SSE2-capable CPU, or legacy version for Windows 7 SP1 (or later) and SSE2-capable CPU
 * xmp-openmpt RETRO for Windows XP SP3 (or later) or non-SSE2-capable CPU
 * xmp-openmpt RETRO for Windows 98 SE + KernelEx (or later) (without configuration dialog)