Alright, I've done my research. Here are the links to the 8 tables I can personally view the raw .bin files for (I've used SCtuner for the screen shots, since it's the only one that I can use to display non-X2J settings).
http://www.shonutperformance.com/B9B_Base_Spark.gif
http://www.shonutperformance.com/B9B1_Base_Spark.gif
http://www.shonutperformance.com/L0S_Base_Spark.gif
http://www.shonutperformance.com/X2J_Base_Spark.gif
http://www.shonutperformance.com/B9B_Altitude_Spark.gif
http://www.shonutperformance.com/B9B1_Altitude_Spark.gif
http://www.shonutperformance.com/L0S_Altitude_Spark.gif
http://www.shonutperformance.com/X2J_Altitude_Spark.gif
Here is Ransom's B9B file, which differs from what I've found
http://www.ejhayes.fcps.net/Documents/Junk/SparkTables.xls
Here's what I found - there are 4 unique spark tables in the MTX cars. The tables that I feel are 'real' base tables are the first 2, and the second 2 are the ones I feel are 'real' altitude tables.
#1 is the X2J/Josh B9B BASE, and B9B1/LOS Altitude SPARK (Except Josh B9B Base/B9B1 Altitude for 850/90 is 2)
#2 is Ransom's B9B base spark. I've asked for his .bin, but don't have it yet, so I can't post a screen shot.
http://www.ejhayes.fcps.net/Documents/Junk/SparkTables.xls
#3 is Ransom B9B and Josh B9B ALTITUDE SPARK
#4 is Josh B9B1/TD LOS Base and X2J Altitude SPARK
The above are summarized here:
http://www.shonutperformance.com/MTX_Spark_Table_Comparison.xls
As you can see, some cars swap the altitude and the base spark tables. I believe this is an error, i.e. it should be the same base table for all cars, and the same altitude table for all cars. The exceptions here are Ransom's B9B base table, and Ransom's B9B altitude table (Same as my B9B1 Altitude table) and I don't know why they are different. I'm 99% sure I tested the X2J base by setting all values to 10, and noted that the car ran at 10 for PT, proving that is the correct base table for X2J. I'm not going to bother installing an SCtuner on my B9B1 to do the same, as the point is moot, X2J is the one to start with.
My summary .xls file also includes the maximum value for each cell, which is probably safe to try.
Which is best? I don't know - remember that more spark is not always better.
Enjoy!