I have about 18 signals to monitor, would rather receive an interrupt
on a pin and read a register over SPI, if at all possible?
Then I would choose a suitably small (but quick) MCU capable of controlling a multiplexer (to scan the "restored" inputs) so that an analogue signal can be fed to an ADC input on said MCU.
To restore the raw input signal to a positive value you can use two resistors. If Vcc is 5 volts and your lowest negative voltage is 12 volts then use a 5 kΩ resistor and a 12 kΩ in series between Vcc and your input signal. When the input signal is -12 volts, the junction of the two resistors will be at 0 volts. As the input signal rises to -8 volts, the junction will be about +1.18 volts. When the input is -6 volts, the junction will be +1.76 volts.
You might even be able to get a multiplexer that can work with the raw negative inputs and use just one potential divider on the output. You might need to supply a negative supply rail of 12 volts to achieve this of course.
Then scan around all the 18 restored DC voltages (with the multiplexer) looking for a voltage change and generate an interrupt to your main circuit when you detect one.
5 lines control the multiplexer, 1 line for the interrupt and 3 lines for an SPI/IIC interface.