I reproduced this bug in FamiTracker 0.4.6 and FamiTracker 0.5 beta 5 (Jul 13 2015). It is fixed in 0CC-FamiTracker 0.3.15.1.
Steps to reproduce
- Open FT and let it create a new file.
- Create a new 2A03 instrument with "volume" set to 8 and "duty" set to 1. This should be instrument 00 with volume sequence 0 and duty sequence 0 checked.
- Place at least one note with instrument 00 in Pulse 1.
- Create a new 2A03 instrument with "volume" set to 12 and "arpeggio" set to 40 36 33, fixed. This should be instrument 01 with volume sequence 1 and arpeggio sequence 0.
- Place at least one note with instrument 01 in Triangle.
- Remembering that volume in Triangle can only be zero or positive, open instrument 01 and uncheck Volume.
- Edit > Cleanup > Remove unused instruments
- Open instrument 01 and look at volume sequence 1.
- File > Export text... and choose a name.
- Open the text export in Notepad.
Result: The '12' stays in volume sequence 1 despite no checked sequence referring to it. Volume sequence 1 (MACRO 0 1) is also present in the export.
Expected: Volume sequence 1 is removed because it is not checked. It shows up in neither the instrument editor nor the exported text.
What's happening is that if a used instrument refers to a particular sequence number, FamiTracker doesn't consider whether it's checked or unchecked before determining whether or not to remove the sequence. So a workaround is to change all unchecked sequences to use either a used Sequence # or a nonexistent one before removing unused instruments.