Skip to content
LGB Z edited this page Mar 18, 2015 · 2 revisions

The S3M format

S3M is the module format of the famous DOS based tracker Stream Tracker 3 from Future Crew. From now, S3M will mean only the features/files use AdLib instruments!

Details

In general S3M is mostly known as a format like MOD or XM (using digital audio samples) but now my focus is on a not-so-widely known feature: it allowed to use AdLib "instruments" too instead of digital samples. It's a nice idea: formats like DRO and IMF are just "raw dump" of the register events you must write into the YM3812 registers. Yes that is simply but in general it's much longer than using some advanced file formats which defines instruments and does not work only at register level.

This also means that creating a good S3M player is hard, it's more magnitude complex than DRO and IMF player which is (in its heart) just a "load next byte, write to YM3128 register, wait specified time, loop". The final goal of mine to create an S3M player which can be called as "quite good". Then the next target: write an S3M tracker software so you can create/modify S3Ms with AdLib instruments :) About in 1995 I wrote an AdLib S3M player (on PC, in assembly) so I have to hope that I can write a usable player sooner or later again ...

However this is only a plan currently.

File format

Various random resources:

However, I was not so successfull to find descriptions which are rather S3M (and module, in general) specific: descriptions of the "commands" used in patterns, the meaning of exact commands, and their representations (it's OK to say that command "S", but what does it mean, what hex value is used to represent that? Even that's a problem, though I was lazy to check out some open source player's source to find an answer, to be honest).

S3M files

ftp://modland.ziphoid.com/pub/modules/Ad%20Lib/Screamtracker%203/

Clone this wiki locally