I like the sounds of this, I did look at port manipulation but didn't understand all of it. How would you set the ISR for the eight inputs? Thanks!I'm in a parking lot, but I would use the Arduino pin change interrupt. In the interrupt service routine, I would use the port manipulation commands to save the status of ALL inputs in one statement. Thus, the ISR is totally minimized and you are unlikely to miss a second change.
If this sounds interesting, I can follow up when I'm out of the car and home.