squarewave,
We're not quite sure we understand, but we do have an idea that should satisfy any random I/O needs. The current version does offer an ARRAY command to store mass amounts of numbers, data, strings and so on, but not knowing what version you have we do have a generic idea.
Create two Macros. One to turn off an output relay and another to turn them on.
Call these macro from any routine, anytime. They are public and global through out the whole logic system.
In each of them create a simple list. For example:
[IO LIST ON]
IF \53=1 THEN #22=1
IF \53=2 THEN #23=1
IF \53=3 THEN #24=1
IF \53=4 THEN #25=1
ect...
-Or for OFF-
[IO LIST OFF]
IF \53=1 THEN #22=0
ect...
Whereas variable \53 represents your tool number and # is a fixed I/O relay number.
Hope this helped.
Tech Support
CamSoft Corp.
(951) 674-8100
[email protected]
www.cnccontrols.com
(Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)