we've stayed away from making IBoxes for specific I/O modules, opting instead for making general purpose ones that can be used by a class of modules (like 4 ch ana input).
You could use ANLGIN to setup the first two parameters (count/format & pointer) and use LD/OUT pairs to do the remaining setup, but that's not much better IMHO.
It's odd the way you word that because there's a "class of modules" that can use the I-box method and another "class of modules" that cannot. I think rather than introduce the anomaly, I just wouldn't have done any of them (or maybe only do analog output modules).
A kind of generic approach occurred to me where you would fill in all the stuff in the present ANLGIN box, then have another couple boxes for "Parameter 1", "Parameter 2", and so on, which would get loaded into consecutive registers corresponding to the slot specified. This could cover a variety of types of modules, where the additional parameters might mean different things to different modules, and would have to be filled in by which register they went to. This could be in addition to or a revision of the present ANLGIN box.
Besides, since I'boxes compile to the old instructions anyway and don't require a processor change, what's the cost of adding another one?