Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update magic_data.json with lots of MED,MOD,IT and similar #58

Merged

Conversation

NebularNerd
Copy link
Contributor

@NebularNerd NebularNerd commented Mar 2, 2024

Big MED, MOD, IT and similar tracker format updates:

These old Tracker formats come in many shapes and sizes; this covers a chunk (but by no means all) of them. It's not perfect as some info is not available, also some very old SoundTracker .mods for example have no true fingerprints (the player software has to look at several factors to determine if it is).

There's a couple of compression formats that were used in conjunction with these files as well. This is a bit of a wordy PR, but as some of this info was so hard to find I'm leaving it here for others to make use of.

I also removed a duplicate for MIDI which I can across 🙂

PowerPacker .pp:

Fingerprints:

  • 0x50503131 / PP11 = Rare older format
  • 0x50503230 / PP20 = Common
  • 0x50583230 / PX20 = Encrypted

A commonly used executable and data compression format on the Commodore Amiga computers. Unpacking these will reveal what they really are inside.

Links:

Fred Editor .fred:

Fingerprints:

  • 0x4672656420456469746F7220 / Fred Editor = Fred Song
  • 0x4efa????4efa????4efa????4efa???? / Nú????Nú????Nú????Nú???? = Fred Mod, I'll use a split to capture bytes 0-1 and 12-13, this covers the 'width' of the header

A tracker style music format for the Amiga, almost no information left on the net about it. This one almost lost zip contains info about the two formats used:

Links:

ZXEMUL .ay:

Fingerprints:

  • 0x5a584159454d554c / ZXEMUL

AY tunes from older computers, there are some different versions/variants but the header will always be present.

Links:

Custom Amiga Module .cust:

Fingerprints:

  • 0x70ff4e7544454c495249554d / pÿNuDELIRIUM at either offset 32 or 36

An Amiga song format primarily used in games, there seem to be two file variants but almost no real info about the format, I guess one is older than the other.

Links:

AHX/THX Music Tracker Module .ahx (formally .thx):

Fingerprints:

  • 0x54485800 / THX = AHX0/THX
  • 0x54485801 / THX� = AHX1

Another Amiga music format. Renamed to AHX for legal reasons to do with that bloke who made films about people fighting with glowing swords, then decided to make a popular movie sound standard.

Links:

MYST YM Tracker format .myst (sometimes .ym):

Fingerprints:

  • 0x594D5354 / YMST

Another old computer music format from the Atari ST systems. There are a few .ym formats so I'll follow the modern .myst extension.

Links:

David Whittaker tracker format .dw:

Fingerprints:

  • 0x48e7f1fe6100 / H籾a The string may get partially interpreted as the Japanese character 籾 (rice husks) on some browsers/systems 🤪

Another tracker format created by the game musician himself for Amiga games. There are a couple of versions, however, all files seem to start with the same header

Links:

Brian Postma SoundMon .bp:

Fingerprints:

-0x562E32 / V.2 at offset 26
-0x562E33 / V.3 at offset 26

Another tracker format mainly used in Amiga games, seems to be two versions (I only have one V.3 file in my collection)

Links:

SoundFX module .sfx and .sfx2:

Fingerprints:

  • 0x534F4E47 / SONG at offset 60 for v1.0, v1.8, v1.9
  • 0x534f3331 / SO31 at offset 124 for v2.0

Another Amiga based tracker format, not a lot of info out there.

Links:

PokeyNoise Chiptune .pn:

Fingerprints:

  • 0xffffe002e102 / ÿÿ¡�

Super obscure Atari chiptune music format, almost zero info, can't even find a player for them at present. The more modern .SAP format is the main Atari POKEY song format now.

Links:

Impulse tracker (and clones) and OpenMPT:

Impulse tracker is already in the database, however, loads of trackers hijacked the main 0x494D504D / IMPM fingerprint. As there as so many versions I've left the default entry and added secondary fingerprints for variants we can identify. If we come across other variants, we just need to add them to the multi-part-headers section. Some formats like the early BeRo Tracker have multiple fingerprints per file (and they may not have a fixed position) so we can only match as best as. Due to this there will be duplicates under certain matches.

Links:

XPACK file compressor .xpack:

Fingerprints:

  • 0x585041434b/ XPACK

Came across this while trying to unpack/decipher another file in my collection, it was not the one I was looking for, but seeing as I made a test file to compare the header it's not a major effort to add

Links:

Ultimate Soundtracker (aka Soundtracker) and clones .mod:

Fingerprints at offset 1080:

  • 0x4d2e4b2e / M.K. = Soundtracker
  • 0x4f435441 / OCTA = OctaComposer
  • 0x3243484e / 2CHN = Fast Tracker 2 Channel
  • 0x3443484e / 4CHN = Fast Tracker 4 Channel
  • 0x3643484e / 6CHN = Fast Tracker 6 Channel
  • 0x3843484e / 8CHN = Fast Tracker 8 Channel
  • 0x31304348 / 10CH = Fast Tracker 10 Channel
  • 0x31324348 / 12CH = Fast Tracker 12 Channel
  • 0x31344348 / 14CH = Fast Tracker 14 Channel
  • 0x31364348 / 16CH = Fast Tracker 16 Channel
  • 0x31384348 / 18CH = Fast Tracker 18 Channel
  • 0x32304348 / 20CH = Fast Tracker 20 Channel
  • 0x32324348 / 22CH = Fast Tracker 22 Channel
  • 0x32344348 / 24CH = Fast Tracker 24 Channel
  • 0x32364348 / 26CH = Fast Tracker 26 Channel
  • 0x32384348 / 28CH = Fast Tracker 28 Channel
  • 0x33304348 / 30CH = Fast Tracker 30 Channel
  • 0x33324348 / 32CH = Fast Tracker 32 Channel
  • 0x43443831 / CD81 = Falcon 8 channel
  • 0x54445a31 / TDZ1 = TakeTracker 1 channel
  • 0x54445a32 / TDZ2 = TakeTracker 2 channel
  • 0x54445A33 / TDZ3 = TakeTracker 3 channel
  • 0x3543484E / 5CHN = TakeTracker 5 channel
  • 0x3743484E / 7CHN = TakeTracker 7 channel
  • 0x3943484E / 9CHN = TakeTracker 9 channel
  • 0x31314348 / 11CH = TakeTracker 11 channel
  • 0x31334348 / 13CH = TakeTracker 13 channel
  • 0x31354348 / 15CH = TakeTracker 15 channel
  • 0x4D264B21 / M&K! = fleg's module train-er
  • 0x4d214b21 / M!K! = ProTracker 2.3 >64 Patterns
  • 0x4e2e542e / N.T. = NoiseTracker

Fingerprints for SoundTracker 2.6:

  • 0x4d544e / MTN at offset 1464 = SoundTracker 2.6

Fingerprints for StarTrekker:

  • 0x464c5434 / FLT4 at offset 1080 in .mod = StarTrekker 4 Channel
  • 0x464c5438 / FLT8 at offset 1080 in .mod = StarTrekker 8 Channel
  • 0x5354312e / ST1. at offset 0, then 0x4d6f64756c65494e464f / ModuleINFO at offset 6 in .nt = StarTrekker FM Synth Pattern file (we can safely skip the subversion at offset 4)

Fingerprints at offset 0:

  • 0x5041434b / PACK = SoundTracker compressed song data

The Granddaddy of the tracker-based music formats, much like Impulse tracker there are dozens of subversions but they all (mostly) contain a header at offset 1080. These will confidence clash with Compucon-Singer embroidery design file if no song name was stored in the mod.

The StarTrekker stuff is clever/weird, they use an external file to store the FM Synth pattern used, without this some mods will sound off/broken away from a player that understands them. Big thanks to @stefandrissen on cmatsuoka/tracker-history#6 for helping explain that one.

The PACK header was a killer to understand, I knew they were .mod's of some kind (It turns out they are just the song data, sans samples), but there exists next to nothing aside from the two links below to describe what this was. The header is used for dozens (literally) of formats ranging from fake PowerPacker clones to Quake data files so expect confidence clashes.

Links:

MED/OctaMED, Multitracker, 669, UltraTracker, MO3:

Tidies up existing entries that either lacked versioning info or misreported other formats as .med

Links:

Future Composer (Amiga) .fc:

Fingerprints:

  • 0x534d4f44 / SMOD = v1.0 - v1.3
  • 0x46433134 / FC14 = v1.4

Another Amiga tracker format, shares it name with a C64 music editor but they are not the same. A couple of versions but loads of possible extensions .fc, .fc13, .fc14, .smc, .smod.

Links:

TCB Tracker .mod:

Fingerprints:

  • 0x414E20434F4F4C2E / AN COOL.
  • 0x414E20434F4F4C21 / AN COOL!

An Atari ST Tracker format, commonly used in games. There are two fingerprints, one is newer but not sure which way round they are.

Links:

PowerplayerMusic Cruncher .pmc:

Fingerprints:

  • 0x53464844 / SFHD = v1.0
  • 0x53464344 / SFCD = v2.0

An Amiga file compression format for SoundTracker style files, only PowerPlayer can play these, otherwise you need to unpack them to get the original .mod which will play anywhere.

Links:

Oktalyzer .okt .okta:

Fingerprints:

  • 0x4f4b5441534f4e47 / OKTASONG = IFF Style .okt
  • .okta = Rare memory style, adding as extension only due to lack of sample files

Another 8 Channel Tracker format from the Amiga, very popular in the demo scene. A couple of files types but only one seems to be in use, because the extensions are used willy nilly, trust the confidence 🙂

Links:

Creative Labs AWE Soundbank .sbk:

Fingerprints:

  • 0x52494646 / RIFF at offset 0, then 0x7366626b4c495354 / sfbkLIST at offset 8

These are custom soundbanks to be used with MIDI files, when loaded onto the AWE and used with the matching MIDI file and they supplement the stock instruments with those the artist created. These can be converted to the modern SoundFont .SF2 for use in MIDI software without needing to own an AWE.

#PowerPacker `.pp`:

##Fingerprints:
-`0x50503131` / `PP11` = Rare older format
-`0x50503230` / `PP20` = Common
-`0x50583230` / `PX20` = Encrypted

A commonly used executable and data compression format on the Commodore Amiga computers. Unpacking these will reveal what they really are inside.

##Links:
-[fileformats.archiveteam: Powerpacker](http://fileformats.archiveteam.org/wiki/PowerPacker)

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#Fred Editor `.fred`:

Fingerprints:
-`0x4672656420456469746F7220` / `Fred Editor ` = Fred Song
-`0x4efa????4efa????4efa????4efa????` / `Nú????Nú????Nú????Nú????` = Fred Mod, I'll use a split to capture bytes 0-1 and 12-13, this covers the 'width' of the header

A tracker style music format for the Amiga, almost no information left on the net about it. This one almost lost zip contains info about the two formats used:

##Links:
-[Wayback/Exotica: fredinfoV2.zip](https://web.archive.org/web/20071010164003/http://www.exotica.org.uk/tunes/formats/fred/fredinfoV2.zip)

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#ZXEMUL `.ay`:

##Fingerprints:
-`0x5a584159454d554c` / `ZXEMUL`

AY tunes from older computers, there are some different versions/variants but the header will always be present. 

##Links:
-[fileformats.archiveteam: AY](http://fileformats.archiveteam.org/wiki/AY)

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#Custom Amiga Module `.cust`:

##Fingerprints:
-`0x70ff4e7544454c495249554d` / `pÿNuDELIRIUM` at either offset 32 or 36

An Amiga song format primarily used in games, there seem to be two file variants but almost no real info about the format, I guess one is older than the other. Using this as a start point:


##Links:
-[fileformats.archiveteam: CUST](http://fileformats.archiveteam.org/wiki/Custom_Amiga_Module)

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#AHX/THX Music Tracker Module `.ahx` (formally `.thx`):

##Fingerprints:
-`0x54485800` / `THX ` = AHX0/THX
-`0x54485801` / `THX�` = AHX1

Another Amiga music format. Renamed to AHX for legal reasons to do with that bloke who made films about people fighting with glowing swords, then decided to make a popular movie sound standard. 

##Links:
-[National Archive: AHX/THX](https://www.nationalarchives.gov.uk/PRONOM/Format/proFormatSearch.aspx?status=detailReport&id=2448&strPageToDisplay=signatures)
-[AHX Format](http://lclevy.free.fr/exotica/ahx/ahxformat.txt)

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#MYST YM Tracker format `.myst` (sometimes `.ym`):

##Fingerprints:
-`0x594D5354` / `YMST`

Another old computer music format from the Atari ST systems. There are a few .ym formats so I'll follow the modern .myst extension.

##Links:
-[fileformats.archiveteam: YM](http://fileformats.archiveteam.org/wiki/YM)

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#David Whittaker tracker format `.dw`:

##Fingerprints:
-`0x48e7f1fe6100` / `H籾a ` The string may get partially interpreted as the Japanese character 籾 (rice husks) on some browsers/systems 🤪


Another tracker format created by the game musician himself for Amiga games. There are a couple of versions, however, all files seem to start with the same header

##Links:
-[Video Game Music Preservation Foundation: DW](https://www.vgmpf.com/Wiki/index.php?title=DW)
-[Exotica: David_Whittaker](https://www.exotica.org.uk/wiki/David_Whittaker_(format))

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#Brian Postma SoundMon `.bp`:

##Fingerprints:
-`0x562E32` / `V.2` at offset 26
-`0x562E33` / `V.3` at offset 26

Another tracker format mainly used in Amiga games, seems to be two versions (I only have one V.3 file in my collection)

##Links:
-[fileformats.archiveteam: BP](http://fileformats.archiveteam.org/wiki/Brian_Postma_SoundMon_v1.x_module)
-[Modland: Brian Postma SoundMon](ftp://ftp.modland.com/pub/documents/format_documentation/Brian%20Postma%20SoundMon%20v1.1%20(.bp).txt) FTP Link may not open on modern browsers

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#SoundFX module `.sfx`/`/sfx2`:

##Fingerprints:
-`0x534F4E47` / `SONG` at offset 60 for v1.0, v1.8, v1.9
-`0x534f3331` / `SO31` at offset 124 for v2.0


Another Amiga based tracker format, not a lot of info out there. 

##Links:
-[fileformats.archiveteam: SoundFX](http://fileformats.archiveteam.org/wiki/SoundFX_module)
-[Exotica: SoundFX](https://www.exotica.org.uk/wiki/SoundFX)
-[Other Amiga MOD Formats](https://github.com/cmatsuoka/tracker-history/blob/master/other-amiga.txt)

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#PokeyNoise Chiptune `.pn`:

##Fingerprints:
-`0xffffe002e102` / `ÿÿ¡�`

Super obscure Atari chiptune music format, almost zero info, can't even find a player for them at present. The more modern `.SAP` format is the main Atari POKEY song format now.

##Links:
-[File Extension Seeker](https://file-extension.net/seeker/file_extension_pn)
-[Detect-It-Easy @ GitHub](https://github.com/horsicq/Detect-It-Easy/blob/39932d7afddb2622c2c92234bed64dcca5e9daa4/db/Binary/audio.1.sg)


###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#Impulse tracker (and clones) and OpenMPT:
Impulse tracker is already in the database, however, loads of trackers hijacked the main `0x494D504D` / `IMPM` fingerprint. As there as so many version I've left the default entry and added secondary fingerprints for variants we can identify. If we come across other variants we just need to add them to the `multi-part-headers` section. Some formats like the early BeRo Tracker have multiple fingerprints per file (and they may not have a fixed position) so we can only match as best as. Due to this there will be duplicates under certain matches.

##Links:
-[OpenMPT: IT](https://wiki.openmpt.org/Development:_Formats/IT)
-[Impulse Tracker Format](http://hackipedia.org/File%20formats/Music/Sample%20based/text/Impulse%20Tracker%202.03%20module%20format.cp437.txt.utf-8.txt)
-[FileFormats Fandom: Impulse Tracker](https://fileformats.fandom.com/wiki/Impulse_tracker)
-[Cheestracker Format](https://aluigi.altervista.org/adv/cheesebof-adv.txt)


###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#XPACK file compressor `.xpack`:

Fingerprints:
-`0x585041434b`/ `XPACK` 

Came across this while trying to unpack/decipher another file in my collection, it was not the one I was looking for, but seeing as I made a test file to compare the header it's not a major effort to add

##Links:
-[XPACK](https://github.com/ebiggers/xpack)

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#Ultimate Soundtracker (aka Soundtracker) and clones `.mod`:

##Fingerprints at offset 1080:
-`0x4d2e4b2e` / `M.K.` = Soundtracker
-`0x4f435441` / `OCTA` = OctaComposer
-`0x3243484e` / `2CHN` = Fast Tracker 2 Channel
-`0x3443484e` / `4CHN` = Fast Tracker 4 Channel
-`0x3643484e` / `6CHN` = Fast Tracker 6 Channel
-`0x3843484e` / `8CHN` = Fast Tracker 8 Channel
-`0x31304348` / `10CH` = Fast Tracker 10 Channel
-`0x31324348` / `12CH` = Fast Tracker 12 Channel
-`0x31344348` / `14CH` = Fast Tracker 14 Channel
-`0x31364348` / `16CH` = Fast Tracker 16 Channel
-`0x31384348` / `18CH` = Fast Tracker 18 Channel
-`0x32304348` / `20CH` = Fast Tracker 20 Channel
-`0x32324348` / `22CH` = Fast Tracker 22 Channel
-`0x32344348` / `24CH` = Fast Tracker 24 Channel
-`0x32364348` / `26CH` = Fast Tracker 26 Channel
-`0x32384348` / `28CH` = Fast Tracker 28 Channel
-`0x33304348` / `30CH` = Fast Tracker 30 Channel
-`0x33324348` / `32CH` = Fast Tracker 32 Channel
-`0x43443831` / `CD81` = Falcon 8 channel
-`0x54445a31` / `TDZ1` = TakeTracker 1 channel
-`0x54445a32` / `TDZ2` = TakeTracker 2 channel
-`0x54445A33` / `TDZ3` = TakeTracker 3 channel
-`0x3543484E` / `5CHN` = TakeTracker 5 channel
-`0x3743484E` / `7CHN` = TakeTracker 7 channel
-`0x3943484E` / `9CHN` = TakeTracker 9 channel
-`0x31314348` / `11CH` = TakeTracker 11 channel
-`0x31334348` / `13CH` = TakeTracker 13 channel
-`0x31354348` / `15CH` = TakeTracker 15 channel
-`0x4D264B21` / `M&K!` = fleg's module train-er
-`0x4d214b21` / `M!K!` = ProTracker 2.3 >64 Patterns 
-`0x4e2e542e` / `N.T.` = NoiseTracker

##Fingerprints for SoundTracker 2.6:
-`0x4d544e` / `MTN` at offset 1464 = SoundTracker 2.6

##Fingerprints for StarTrekker:
-`0x464c5434` / `FLT4` at offset 1080 in `.mod` = StarTrekker 4 Channel
-`0x464c5438` / `FLT8` at offset 1080 in `.mod` = StarTrekker 8 Channel
-`0x5354312e` / `ST1.` at offset 0, then `0x4d6f64756c65494e464f` / `ModuleINFO` at offset 6 in `.nt` = StarTrekker FM Synth Pattern file (we can safely skip the subversion at offset 4)

##Fingerprints at offset 0:
-`0x5041434b` / `PACK` = Soundtracker compressed song data


The Granddaddy of the tracker based music formats, much like Impulse tracker there are dozens of subversions but they all contain a header at offset 1080. These will confidence clash with `Compucon-Singer embroidery design file` if no song name was stored in the mod.

The StarTrekker stuff is clever/weird, they use an external file to store the FM Synth pattern used, without this some mods will sound off/broken away from a player that understands them. Big thanks to @stefandrissen on cmatsuoka/tracker-history#6 for helping explain that one.

The `PACK` header was a killer to understand, I knew they were .mod's of some kind (It turns out they are just the song data, sans samples), but but there exists next to nothing aside from the two links below to describe what this was. The header is used for dozens (literally) of formats ranging from fake PowerPacker clones to Quake data files so expect confidence clashes. 

##Links:
-[Wikipedia: MOD](https://en.wikipedia.org/wiki/MOD_(file_format))
-[MOD Spec](https://eblong.com/zarf/blorb/mod-spec.txt)
-[Amiga-Stuff: Crunchers](https://www.amiga-stuff.com/crunchers-id.html)
-[RockBox](https://www.rockbox.org/tracker/task/8806)
-[fileformats.archiveteam: Amiga Module](http://fileformats.archiveteam.org/wiki/Amiga_Module)
-[Wiki Multimedia: ProTracker Module](https://wiki.multimedia.cx/index.php/Protracker_Module)
-[Ultimate_Soundtracker-format.txt](https://github.com/cmatsuoka/tracker-history/blob/master/reference/amiga/soundtracker/Ultimate_Soundtracker-format.txt)
-[File Extension: StarTrekker](https://file-extension.net/seeker/program_extension_startrekker)
-[fileformats.archiveteam: StarTrekker](http://fileformats.archiveteam.org/wiki/StarTrekker_/_Star_Tracker_module)

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#MED/OctaMED, Multitracker, 669, UltraTracker, MO3:

Tidies up existing entries that either lacked versioning info or misreported other formats as `.med`

Links:
-[Ion player](https://github.com/dv1/ion_player/blob/master/extern/uade-2.13/amigasrc/players/med/MMD_FileFormat.doc)
-[fileformats.archiveteam: OctaMED]](http://fileformats.archiveteam.org/wiki/OctaMED_module_(MED))
-[fileformat.info: MTM](https://www.fileformat.info/format/mtm/corion.htm)
-[loc.gov](https://www.loc.gov/preservation/digital/formats/fdd/fdd000126.shtml)
-[Wayback/Cubic: 669 Format]https://web.archive.org/web/20010124155800/http://ftp.cubic.org/source/archive/fileform/sound/misc/669_form.txt
-[fileformat.info: Ultratracker](https://www.fileformat.info/format/ultratracker/corion.htm)
-[GStreamer](https://github.com/GStreamer/gst-plugins-base/blob/ce937bcb21412d7b3539a2da0509cc96260562f8/gst/typefind/gsttypefindfunctions.c#L3651)
-[Textfiles: UltraTracker Format](http://www.textfiles.com/programming/FORMATS/ultform14.pro)
-[Un4seen: MO3](https://www.un4seen.com/mo3.html)
-[MO3 Format](http://lclevy.free.fr/mo3/)

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#Future Composer (Amiga) `.fc`:

##Fingerprints:
-`0x534d4f44` / `SMOD` = v1.0 - v1.3
-`0x46433134` / `FC14` = v1.4

Another Amiga tracker format, shares it name with a C64 music editor but they are not the same. A couple of versions but loads of possible extensions `.fc`, `.fc13`, `.fc14`, `.smc`, `.smod`.

Links:
-[fileformats.archiveteam: Future Composer](http://fileformats.archiveteam.org/wiki/Future_Composer_v1.x_module)
-[Exotica: Future Composer](https://www.exotica.org.uk/wiki/Future_Composer_(amiga))
-[Wayback/Exotica: Future Composer File Format]https://web.archive.org/web/20071203192522/http://www.exotica.org.uk/tunes/formats/fc/FutureComposer.txt

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

# TCB Tracker `.mod`:

##Fingerprints:
-`0x414E20434F4F4C2E` / `AN COOL.`
-`0x414E20434F4F4C21` / `AN COOL!`

An Atari ST Tracker format, commonly used in games, There are two fingerprints, one is newer but not sure which way round they are.

##Links:
-[Atari Mania: TCB Tracker](https://www.atarimania.com/utility-atari-st-tcb-tracker_31405.html)
-[TCB Tracker Format](https://github.com/libxmp/libxmp/blob/master/docs/formats/tcb-tracker.txt)
-[TCB 2 Pro](https://web.archive.org/web/20040229130722/https://www.tscc.de/ucm24/tcb2pro.html)

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#PowerplayerMusic Cruncher `.pmc`:

##Fingerprints:
-`0x53464844` / `SFHD` = v1.0
-`0x53464344` / `SFCD` = v2.0

An Amiga file compression format for Soundtracker style files, only PowerPlayer can play these, otherwise you need to unpack them to get the original .mod which will play anywhere.

##Links:
-[Amiga-Stuff: Crunchers](https://www.amiga-stuff.com/crunchers-id.html)
-[Amiga-Stuff: Crunchers Download](https://www.amiga-stuff.com/crunchers-download.html)

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#Oktalyzer `.okt` `.okta`:

##Fingerprints:
-`0x4f4b5441534f4e47` / `OKTASONG` = IFF Style .okt
-`.okta` = Rare memory style, adding as extension only due to lack of sample files


Another 8 Channel Tracker format from the Amiga, very popular in the demo scene. A couple of files types but only one seems to be in use, because the extensions are used willy nilly, trust the confidence 🙂

##Links:
-[fileformats.archiveteam: Oktalyzer module](http://fileformats.archiveteam.org/wiki/Oktalyzer_module)
-[Oktalyzer module file format](http://www.textfiles.com/programming/FORMATS/okt-form.txt)

###-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

#Creative Labs AWE Soundbank `.sbk`:

##Fingerprints:
-`0x52494646` / `RIFF` at offset 0, then `0x7366626b4c495354` / `sfbkLIST` at offset 8

These are custom soundbanks to be used with MIDI files, when loaded onto the AWE and used with the matching MIDI file and they supplement the stock instruments with those the artist created. These can be converted to the modern SoundFont .SF2 for use in MIDI software without needing to own an AWE.
@NebularNerd
Copy link
Contributor Author

There were a couple more I left out for now as I would like to see if it's possible to implement #57 first.

It's all very well adding new formats, but I forgot to remove/edit the existing ones for the MED's and MOD's
@xibe
Copy link

xibe commented Mar 5, 2024

Nice job gathering all these, @NebularNerd!

@NebularNerd
Copy link
Contributor Author

@xibe Thanks! 🙂

It took a while but it's much easier to enjoy some of my old Tracker music I had laying around now I can identify or actually play them. Some of the rabbit holes I went down have given me ideas for retro/obscure types to add.

@cdgriffith cdgriffith changed the base branch from master to develop March 6, 2024 15:19
Just noticed I had left a duplicate .ult tracker entries because it had an extra byte which I removed when I updated the original .med entry. 🤦
@cdgriffith
Copy link
Owner

Hi @NebularNerd I merged the other PR first, could you resolve the conflicts of this one and can add it :)

@NebularNerd
Copy link
Contributor Author

Hi @cdgriffith, all fixed. We should be good to go now. I was not sure if that was for me to resolve or not. But I learned another new GitHub thing for the day 🙂

@cdgriffith cdgriffith merged commit bd95308 into cdgriffith:develop Mar 23, 2024
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants