TITAN Mega Drive Music Disc Maker

Drop MOD files here (or click to upload)

Songs

None added yet! The buttons below will create a player stub ROM to which you can manually append MOD files at the command line. Or just drag and drop the songs above.


Option defaults (can be changed at runtime)

Advanced options (can't be changed at runtime)


Details

MOD files

MOD files must use the good old 4ch Amiga ProTracker mod file format. Playback is mono at 26 kHz. Tempo can be chosen freely ("CIA" timing).

All effects are supported except set filter (E0x) because the MD's built-in model-specific filters are not configurable.

Invert loop (EFx) is only supported for short samples - this effect is hardly ever used so this shouldn't be a big deal.

Set speed/tempo 0 (F00) is ignored by default but can be configured to stop playback (see belowusing advanced mode).

Patterns are shown similar to ProTracker (current row and 7 past and future rows). Jumping around for visual effects is possible but overdoing it and/or extreme speed/tempo can lead to GUI lags (but song playback will be fine).

Near-silent parts will sound distorted as the MD player truncates mixed audio to 8 bits for output so these parts suffer from lots of quantisation noise.

The player shows song titles in the track selector and song title + sample names as scrolltext during song playback.

VU meters

2 mutually exclusive VU meter options let you choose whether the VU meters will be displayed and what data will be displayed. Show VU meter shows the approximated actual playback volume level, note-on VU meters switches them to note-on VU meters similar to ProTracker that resemble pattern volume levels, not perceived volume levels.

Pattern view

The pattern view shows the next/previous pattern if and only if show adjacent patterns is enabled. Pattern scrolling is soft if use soft-scrolling is enabled and hard otherwise (only scrolling one entire pattern row at a time like ProTracker).

CPU time

Show CPU time shows a CPU time indicator that displays the amount of CPU time spent on playback and updating the GUI. The CPU time indicator flashes red if CPU time exceeds 100%, making the player privilege audio playback over GUI rendering, resulting in a (temporarily) reduced GUI framerate.

Song looping

If loop current song is enabled the player will keep on playing the current song even if it starts looping.

Song length scanning

The player scans songs before starting to play them to determine their length since this information isn't stored in the mod file.

The algorithm iterates over pattern rows just as would happen during normal playback, checking each row for whether it has been played before.

Once no more unplayed rows are found, the player assumes song playback will loop and sets the end point after the last unplayed row.

To avoid problems (just in case) there are a few options you can play with.

Unchecking scan song length completely disables song length scanning which will make all songs loop forever (whether or not loop current song is checked).

maximum song length (minutes) is the maximum song length after which the scanner will stop scanning and use the maximum song length (minutes) instead.

maximum loop length (minutes) is the maximum length of consecutive already played rows after which the scanner will stop scanning and just assume that the song loops as explained above.

Some players end the song when they encounter a F00 command - but most don't. Thus F00 is ignored as some songs inadvertendly contain this command and would end prematurely - unless you check command F00 ends songs which re-enables this feature.

Timing

The ProTracker player uses slightly different timing on PAL and NTSC Amigas which affects the number of samples per song tick. Most songs were made on PAL Amigas and thus PAL timing is used by default, even on NTSC Mega Drives.

Just in case you can check use NTSC timing for songs to use NTSC Amiga playback timing (this information is not stored in mod files so there's no way of auto-detecting this).

In contrast, both PAL and NTSC Mega Drives will always play the same number of samples per song tick, meaning that songs will sound exactly the same despite small pitch/speed differences which we chose not to correct for because they depend on the (undetectable) quartz in your Mega Drive, not on the (easily detectable) region setting.

Scrolltext

Normally, to avoid odd-looking scrolltext, any spaces found in pattern texts are combined, only blank lines create wider gaps. As a special feature needed for the Titan music disc, checking replace .... with spaces will replace sequences of 4 or more dots with spaces without combining them.

Music disc building

If you add some songs and hit "Compile", the tool will create a ROM for you containing your selected songs. It will automatically select the correct memory model and ignore the SSF2 mapper support setting.

Music discs of 4 MB or less will use a native ROM without the SSF2 mapper and will work everywhere (except in old emulators that have other issues); larger music discs will use the SSF2 mapper which raises that limit to whatever maximum size your emulator or flash cartridge supports; 7 MB is supported by most flash cartridges, 8 MB support is less common, > 8 MB is only supported by emulators (128 MB being the absolute maximum). Some older emulators don't even detect SSF2 support correctly and will fail to play such music discs.

Stub building

If you don't add songs, this tool will generate stub ROMs for you. These can be used for creating music discs by concatenating the stub ROM, a bunch of mod files and the terminator using the command line as follows:

Windows: copy /b stub.bin + songs\*.mod + terminator.bin musicdisc.bin

Linux: cat stub.bin songs/*.mod terminator.bin > musicdisc.bin

The terminator ensures that the built-in MOD scanner won't mis-detect leftover garbage as further MOD files or crash in the worst case.

Setting SSF2 mapper support to no limits generated music discs to 4 MB. Setting it to yes raises that limit as explained in the previous section, but will not work correctly with emulators that disable the SSF2 mapper for small ROMs if your music disc ends up not exceeding 4 MB.

The default auto setting means that the player will try to detect SSF2 support at start-up and raise an error only if it does not detect SSF2 support and the included MOD files exceed 4 MB.