Thanks guys for the replys.
I have SOME of it sorted. I only really know a little VB so the thought of getting involved in a plug-in is a little worrying (I am but a humble machinist).
I have been playing around with the macropump, and I have a lot of the functions working. I have up to six channels of 10bit analog working, at the moment this is only doing x & y jogging, feedrate override, spindle override, and rapid override - I have one channel up my sleave (mmmm, now what can I use that for). I have 32 buttons working, but am having trouble with 2 mpg inputs and duplex toggle switch inputs, but this is more of a API problem I think. I am using the winmm.dll and I think it is having trouble with more than 32 buttons - can anyone shed some light on this?

?
What I am having trouble with is push buttons for jogging the axis. I am calling an OEMButton 311 (for z axis), but I need to have a button up event to stop the jogging when my shaking finger leaves the button. Can anyone shed light on this???
Regards
Andrew