1.7 KiB
1.7 KiB
possible new Furnace instrument format
the main issue with Furnace instrument files is that they are too big, even if the instrument is nothing more than the FM setup...
the aim of this new format is to greatly reduce the size of a resulting instrument.
header
size | description
-----|------------------------------------
4 | "FINS" format magic
2 | format version
2 | instrument type
??? | features...
a feature uses the following format:
size | description
-----|------------------------------------
2 | feature code
2 | length of block
??? | data...
the following feature codes are recognized:
FM: FM ins dataMA: macro data64: C64 ins dataGB: Game Boy ins dataSM: sample ins dataO1: operator 1 macrosO2: operator 2 macrosO3: operator 3 macrosO4: operator 4 macrosLD: OPL drums mode dataSN: SNES ins dataN1: Namco 163 ins dataFD: FDS ins dataWS: wavetable synth dataSL: list of samplesWL: list of wavetablesMP: MultiPCM ins dataSU: Sound Unit ins dataES: ES5506 ins data
FM data (FM)
size | description
-----|------------------------------------
1 | operator count
-----|------------------------------------
| **base data**
| /7 6 5 4 3 2 1 0|
1 | |x| ALG |x| FB |
1 | |FMS2 |AMS| FMS |
1 | |AM2|4| LLPatch |
1 | |KV4|KV3|KV2|KV1|
-----|------------------------------------
| **operator data × opCount**
| /7 6 5 4 3 2 1 0|
1 | |r| D T | MULT |
| \- KSR
1 | |s| T L |
| \- SUS
1 | |R S|v| A R |
| \- VIB
1 | |A|KSL| D R |
| \- AM
1 | |e|x| D2R |
| \- EGT
1 | | S L | R R |
1 | | DVB | SSG |
1 | | DAM | W S |