OneCrudeDude wrote:
Allegedly Famitracker is a highly inefficient way of making NES music, although the results are much better than something written in hex. I might be wrong though, since apparently Shiru made a tool for FT music, and thefox made MUSEtracker, which is said to be oriented more towards game development.
There's nothing inherently inefficient about using it to make your NES music. The efficiency comes from:
1. Careful composition with redundancy/repetition.
2. Exporting the data into an efficient form.
3. Diagnostic information about the export to inspect the size of data.
4. Lightweight driver implementing only the features you need.
The NSF files produced by Famitracker are not the most efficient. It's feature-packed music driver is about 5k of NES code, for example, but there is nothing stopping you from writing an alternative driver, and an alternative export. Shiru did it with Famitone. I did it with my own project. The efficiency of the data depends on your custom export, it can be written to recognize and diagnose other kinds of redundancy. For example, you could write an exporter that automatically recognizes arpeggio patterns instead of building instruments for each. You could make a custom percussion instrument that interrupts triangle briefly while playing noise, so that in the output data it's only 1 "note" for each drum hit, even though in the Famitracker data it would be 2 notes across 2 channels. Etc.
Famitracker gives you nearly complete control of all aspects of the NES APU, and immediate feedback with it. It's really not lacking at all as a way to produce efficient, game-shippable NES music.