I'm a little new to this but my understanding and experience leads me to:
A macro m61-m67 created that also has the spindle position and gets tool offset.
Do you call a tool change for the spindle used?
After all everything is just a variable and is calculated at runtime.
What are the red buttons?
Are those air driven spindles? I assume you have a macro that turns on a valve for the spindle you need, and then turns the others off?
Cool idea just seems a little expensive and a loss of axis travel. ( not sure how soft limits would handle this, but it should )
Tool change time is almost instant.
Out of the box thinking, and Using what one has is always smart.