Robin2, I appreciate the work you've done on your solution. It isn't (I don't think, anyway) related to my problem, however.
Coding Badly, I think we may have a semantic disconnect here, so I'll try and re-word my problem.
I'm developing two sketches that will talk to each other via the I2C protocol and ports on two Arduino variants; one is a Pro Micro, the other a Mega2650, for what difference it makes. Obviously I want to keep two windows up with the two sketches and two boards up at the same time.
I open up an instance of the IDE with sketch A, on board type A, connected via USB serial port A. I build and upload the sketch successfully.
I then open up what I'm referring to as a second instance of the IDE (i.e. a second window) with sketch B, board type B, connected via USB serial port B. I build and upload the sketch successfully.
I now go back to window A, sketch A, board A, port A, only to find out that window A thinks it's talking to a board of type B on port B. Clearly the sketch loaded in the window is sketch A, so I am at a loss as to why the IDE suddenly things it's talking to a board type B through port B.
I am at a lost to see why that could in any way be considered appropriate. Further, while this behavior persists I can only have one serial terminal window open. Efforts to open the serial monitor for the other sketch result in closure of the first monitor window.
Today, I found out that this behavior is also inconsistent: for a while, during development, the two windows kept track of their respective board types and ports, though I have no idea what I did, if anything, to induce this - what I would consider correct - behavior.
I hope this better explains my problem, and that somebody can shed some light on it.