It seems you have two options
1) Add inputs to your design.
There are add on boards like the PMDX-108-INPUT (requires PC Parallel Port) and similar products that you can use to add inputs to your system.
Obviously you become the integration engineer on what ever board you choose. I have not done this so I'll leave more detailed advice to others.
2) Combine some of the inputs you already have.
I'm assuming you are using the 6 proximity switches (two per axis) as limit switches for your machine.
If this is NOT the case, this suggestion may not apply.
It's possible to rewire your existing proximity switches to only require 3 of the inputs
(one per axis). Here's a link to a more detailed description
https://github.com/gnea/grbl/wiki/Wiring-Limit-Switches The example in the link above uses limit switches but the principle is the same for proximity switches.
For N.O. proximity switches you would wire them in parallel, and N.C. switches you would wire them in series.
Mach4 doesn't really care which proximity switch is firing (when it's acting as a limit switch), all it knows is that when any proximity switch fires all motion is stopped. It's sometimes useful
for the operator to be told which switch caused the stop but this may be a feature you weigh against your current problem.