There's no spark calculation going on. Look at the source in isr_est() where I'm picking up spark advance from the EST line negative edge - there's no way it could get any simpler or save cpu time by sniffing the ALDL.
It looks like I missed the most important part.
That`s genious and simple. I never thought of it. I always consider there were some calculations done from dwell and spark on arduino side, but when you get the falling edge you are wright on the spark spot and the delay is negligible.

On the PCM there is some est lag scalar that adds every 1500 rpm 1 spark degree. If you experience any lag problems it can be increased to compensate.