# ft2-clone and the deliberate limits of a Fasttracker II reimplementation

> ft2-clone is a C port of the DOS-era Fasttracker II tracker that swaps in a floating-point resampler, wider sample formats and modern import paths while keeping the original XM player. Accuracy was the goal, and the code was written to keep it, not to be extended.

**8bitbubsy/ft2-clone** — Fasttracker 2 clone for Windows/macOS/Linux

- Repository: https://github.com/8bitbubsy/ft2-clone
- Website: https://16-bits.org
- Stars: 1,150 · Forks: 101
- Language: C
- License: BSD-3-Clause
- Published: 2026-10-19 · Updated: 2026-10-19 · Language: en
- Canonical page: https://hysenlabs.com/projects/8bitbubsy-ft2-clone

## A DOS tracker rebuilt around the original player code

ft2-clone is a C implementation of Fasttracker II, the MS-DOS module tracker, released by 8bitbubsy for Windows, macOS and Linux. The stated goal is fidelity rather than improvement: the project aims to be a highly accurate clone of the classic Fasttracker II software, and the XM player itself was ported directly from the original source code rather than reimplemented. That single decision explains most of what the codebase looks like today. A tracker that has to sound and behave like a DOS-era program inherits the original's channel layout, its sample handling and a good share of its rough edges, and any of those inherited details would be expensive to rework.

The people this serves are trackers who already know FT2 and want to keep working in the format on a modern desktop. Someone starting from nothing would be poorly served by it, because the interface assumes vocabulary the original program taught: instrument slots, sample slots, pattern rows, volume columns. The project is also usable as a companion player, since the module format and the original playback behaviour are the point rather than a side effect.

## The channel resampler moved to floating point with optional sinc windows

The clearest technical departure from the DOS original is in the channel resampler and mixer. The project states that this code uses floating-point arithmetic for less errors, and that extra interpolation options are available beyond what the original offered: a 4-point cubic spline, plus 8-point and 16-point windowed-sinc filters. In practice that means the same pattern rendered on ft2-clone is not bit identical to the DOS output, because the arithmetic path is different, and the higher order windowed-sinc settings are the ones that change the character of a sample rather than just its level.

There is a trade-off here worth naming. A clone that reproduces the original's integer rounding exactly would be easier to compare against a real DOS setup, but the author chose the cleaner numeric path and the optional higher quality interpolation. Nothing in the documentation describes a switch for reverting to the original arithmetic, so a musician who wants a perfect match has to reason about the resampler settings by hand rather than flip a documented compatibility mode.

## A sample loader that accepts formats the original never saw

The sample editor gained a waveform generator, resonant filters and a peak based display when zoomed out, so waveforms stay readable at low zoom instead of collapsing into noise. The sample loader is broader still: it supports AIFF, FLAC, OGG, MP3 and BRR (SNES) samples, along with more WAV types than the original FT2 handled. It also attempts to tune a sample on load, adjusting finetune and the relative note so the sample plays back at the frequency it was recorded at. That is a convenience feature, but it also means a sample can be silently retuned, which matters if you are matching a module to a reference recording.

There is a trimming feature too, described as removing unused stuff to potentially make the module smaller. Combined with the text marking option for textboxes, where text can be cut, copied and pasted, and drag and drop for modules and samples, the editor is clearly aimed at practical session work rather than museum reproduction.

## Import paths that are uneven, and one the project tells you to avoid

The import side is where the clone shows its cracks. MOD, STM and S3M import has been slightly improved, but the project is blunt about S3M: the import is still not ideal because it is not compatible with XM, which is the format FT2 writes. That is a structural mismatch, not a missing feature, so no amount of patience will make an S3M file survive the trip.

Impulse Tracker module support is worse, and the project says so directly: support is awful and the advice is not to use it for playback. DIGI Booster (non-Pro) modules can be loaded. Loading is also forgiving of oddities: XMs with stereo samples, an uneven number of channels, more than 32 channels, more than 16 samples per instrument or more than 128 patterns are accepted, and anything unsupported is mixed to mono or truncated. Truncation is a silent data loss, so a module that loads without complaint may still not be what the author intended. None of this is suitable for a round trip workflow where fidelity to the source file is the point.

## Getting a build: packaged binaries first, compilation as a fallback

The project does not publish install commands in its README, so there is nothing here to copy into a terminal. Instead, the project points at where builds live. Windows and macOS binary releases are always available from 16-bits.org, at the ft2.php page, and Linux binaries are listed on repology under the fasttracker2 project. If those Linux packages do not work for you, the instruction is that you will have to compile the code manually.

For a manual build, the repository holds a HOW-TO-COMPILE.txt file with the build instructions, a CMakeLists.txt, platform shell scripts named make-linux.sh, make-linux-nomidi.sh, make-linux-appimage.sh, make-linux-appimage-nomidi.sh and make-macos.sh, a release directory, a src directory and a vs2026_project directory for Visual Studio. The presence of a separate non-midi script set suggests a build variant without MIDI support, and the AppImage scripts point at a self-contained Linux package, but the documentation does not spell out the exact steps, so the details belong in HOW-TO-COMPILE.txt.

The build is not guaranteed. The project warns that the program may fail to compile on Linux depending on the distribution and GCC version, and suggests using the Linux packages linked from 16-bits.org instead of fighting the compiler locally. On a Mac or on Windows, the packaged binary is the sane route, since Visual Studio support is provided by the included project directory.

## Hardcoded source, frequent releases, and a permissive licence

Maintenance is active. The last push was on 2026-10-16, and the release history shows v2.26 shipping the day before, v2.25 on 2026-10-02 and v2.24 on 2026-09-17, so updates arrive roughly every one to two weeks rather than on a long cycle.

The code itself is not structured for modification. The author describes the source as quite hackish and hardcoded, and explains why: the first priority is an accurate clone rather than flexible, easily modifiable code. Big parts outside the GUI are direct ports of the original FT2 source, used with permission under a BSD 3-Clause licence, and the project also ships a LICENSES.txt alongside the LICENSE file. The practical consequence is that upgrading means taking the new release rather than merging upstream changes into a local fork, because a fork would mean fighting a codebase that was never written to be extended.

For engineers, the interesting boundary is that this is a portability project with a hardware-like fidelity constraint, not a reusable tracker library. There is no public API to embed, and the export surface is the module file and the released binary.

## Conclusion

ft2-clone is worth adopting if you compose XM modules on a current operating system and want a tracker that stays faithful to the DOS original, and you will not get a cleaner codebase or a general purpose tracker engine. Musicians who need reliable S3M or Impulse Tracker round trips should look elsewhere, since the project states both paths are incomplete. Before you commit, check whether the prepackaged Linux build from repology matches your distribution, since the project warns that compilation can fail depending on distribution and GCC version.

## FAQ

### Is ft2-clone a full replacement for DOS Fasttracker II?

The project describes ft2-clone as aiming to be a highly accurate clone of Fasttracker II for MS-DOS, with the XM player ported directly from the original source code. It adds sample editor features, extra interpolation options and wider sample format support on top of that, but the documentation does not claim full parity with every DOS-era behaviour.

### Which file formats can ft2-clone open?

The sample loader handles AIFF, FLAC, OGG, MP3, BRR (SNES) and more WAV types than the original FT2. Module import covers MOD, STM and S3M, DIGI Booster (non-Pro) modules and Impulse Tracker modules, though S3M import is not XM compatible and Impulse Tracker support is described as awful and unsuitable for playback.

### How do I get ft2-clone on Linux?

Linux binaries are listed on repology under the fasttracker2 project, and Windows and macOS releases are always available from 16-bits.org. If the Linux packages do not work, you have to compile the code manually using the instructions in HOW-TO-COMPILE.txt, and the project warns that the program may fail to compile on Linux depending on your distribution and GCC version.

### What licence does ft2-clone use?

The project is released under BSD-3-Clause. Big parts of the code outside the GUI are directly ported from the original FT2 source with permission to use that licence, and the repository includes both a LICENSE file and a LICENSES.txt for the third party parts.

## Sources

- [8bitbubsy/ft2-clone on GitHub](https://github.com/8bitbubsy/ft2-clone)
- [License: BSD-3-Clause](https://github.com/8bitbubsy/ft2-clone/blob/master/LICENSE)
- [Project website](https://16-bits.org)
- [README](https://github.com/8bitbubsy/ft2-clone/blob/master/README.md)
- [Releases](https://github.com/8bitbubsy/ft2-clone/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/8bitbubsy-ft2-clone
