Currently i'm using three things.
1) A simple maximum number of generations reset limit (500). That catches everything.
2) A simple live cell counter. If it's zero then it resets.
3) A pseudo checksum which seem to work quite well.
A word variable to which the address of every populated cell is added, it may overflow many times, and after all 1024 cells have been generated/examined you end up with a number.
It also calculates the checksum for the next generation and if it matches the previous generation then it probably means we have a stuck pattern and resets.
I've been testing this for thousands of patterns and generations now and it works well.
It only falls back on the hard generation limit with huge repeating patterns that cycle over several generations.
It detects small oscillators and stuck patterns etc quite well.
I appreciate it is possible for two patterns to have the same checksum but the odds must be very very small.
Cross post with Richard LOL!! Basically what I'm doing but I'm not quite as clever as the 'Life' experts.
Bookmarks