You could try some software and/or hardware solutions.
Thin/Thick-wire Ethernet uses a single cable, and implements CSMA/CD - Collision Sense Multiple Access/Colllision Detect. That's what you need.
1. First thing is, when a node wants to xmit, it makes sure line is free by checking for idle for longer than several bit-periods. This stops a node jumping into the middle of another transmission.
2. Once it decides line is free, it starts transmitting a preamble, making sure what is seen on the line is what it is transmitting. You could implement this by making each station send it's own address (so they're all unique) and the xmitting station can check the line has what it is sending. Need to make sure max length of repeated 1s or 0s in this preamble won't allow another node to think the line is idle and start xmitting.
3. If a xmitting station detects a collision, it backs off for a 'random' time and then starts all over again - so two colliding nodes won't repeatedly collide by trying again at the same time.
4. All transmissions have a CRC, so the rx station can discard the packet if corrupt.
H/w could help with collision detect, in ethernet each transmitting station puts DC current onto the 75-ohm terminated line, as well as the AC signal, so if two nodes transmit at the same time the DC voltage goes up by twice what it would normally, so collision can be detected by comparator.
All-in-all, it would probably be simpler for the master to poll the slaves in some way.
If you've got a spare line to share around, you could get any slave wanting attention to pull it to generate an interrupt at the master, and then get the master to scan around the slaves one by one.
HTH
Barny