I have not seen the code, But this was my Idea for the CH RainFire TM ,I think I told you about it.
After intial fire based on the RPM and executed delay from the table,
you can have the code to trigger the SCR one more time before the magnet gets around the sensor.
The CH can spark up to 25000RPM easy.
Now you can create the code that between 1500-4000 to give you 5 (20000/4000=)5 sparks and after that you decrase the # of sparks to 3 ,2 1 ; till
you get the top 10000 and keep 1...
Are couple ways to skin the cat....LOL
get a high performance pic 18fxxx and have all the calculations on the fly;
create an algorithm that even on 12F683 can work, get the code to execute X Sprks equaly spaced on uS right after master spark.