There is no way to "force" a player to loop a module. Some players just loop any module, some don't loop at all, others let you choose whether modules should be looped. Some of the latter are also smart about it, i.e. they try to figure out if a loop is intended and if it doesn't seem so, they just stop playback at the end.
Makes sense. My best guess right now would be that players will try to detect a setup where the end of the last pattern is never reached because of the b and c commands you mentioned. If they find such a setup, they'll loop, otherwise they'll just play once. I'll mess around with this.
If there is an instrument number, all instrument properties are reset to their defaults. If it is missing, nothing is reset and the note plays like the previous note. So for example if you changed the volume on a previous note, omitting the instrument number also keeps the next note playing at the same volume, but if you put an instrument number, the instrument will use its default volume again.
Interesting, I'll have to experiment with that. From what you're saying, it sounds like there's no correct way to use the instrument column. You just have to know how it works and do what you will.
As always, if you have any more suggestions on how to make OpenMPT more accessible to blind users, I'd like to hear them. Often there are obstacles that are simply not obvious to sighted persons, but many of them are easy to remove.
Two things that come to mind, one is minor and the other I've been avoiding.
The minor one is the order list. NVDA can read it when you press insert tab, but it is recognized as a single piece of text. So if I want to figure out what the fourth order is, I have to wade through something like "2 1 0 1 2 2 2 3..." and just keep count and remember that the fourth number is 1. Assuming I want to change that, I don't know how to get my cursor there. So I end up changing whichever entry I'm on, then listening to the list again to see which entry has changed. If it's not the right entry, I change it back, and then navigate to the correct entry and adjust as desired. I could probably use goto or other navigation to find the right spot, I haven't tried yet. I don't find it unmanageable but it gets noisy. My initial idea for accessibility is to speak the list index and the pattern number on that index eg. "order 4, pattern 2."
The second thing is an accessible way to view/map samples in the instrument editor. We discussed it briefly a few years ago when you first added accessibility, but I couldn't really contribute to the discussion because I had fairly recently switched to NVDA so was still adjusting to that, plus I was even newer to open MPT. I do remember being satisfied with using sfz files, but have since realized that not only is it cumbersome to rely on sfz for complex instruments, but importing multiple sfz files which use the same sample will duplicate that sample in the module. I'd rather use the instrument editor to map samples if possible, since I can set up everything else with it. It seems like it would be kinda laborious to make it accessible, but I know nothing about coding, so for your sake, I hope it isn't!