grippo wrote: but you want a negative trigger offset with dual spark, ...snip....
Hopefully you don't have an odd fire engine.
OK, now I get a little more, what's nice is I had a diagram too, but didn't know how to express it in the post...another thing to chalk on the board.
This is what I did FWIW, and how I understood things
--T1----------T2----------T3----------T4----------T1-----------T2-----------T3-
-tdc1--------skip--------tdc3--------skip---------tdc4---------skip--------tdc2-
tach4-------------cam--tach1--------------------tach2--------------------tach3
--^---143˙--------^-37˙-^--------180˙----------^-----------180----------^--
My mistake was not understanding the negative offset & delay concept properly (especially as I thought the delay value = 0, 'cos it happened at TDC). Although I knew the cam sync is a reference pulse for all the other tach inputs, I should have started from the tach point after the cam sync...like the manual/help section said.
I wouldn't have got the delay teeth bit without some help, but if I understand better, I have
-------tdc1,4----------------tdc2,3-----------------tdc1,4----------------tdc2,3---------------TDC
-------input1----input1----input1----input1----input1----input1----input1----input1---CRANK
----------^---------^----------^----------^----------^----------^----------^----------^-------CRANK
--input2--------------------------------------------------------------------------------------input2----CAM
---^----------------------------------------------------------------------------------------------^------CAM
---^-delay=1---tach1-----skip------tach2------skip-------tach3------skip------tach4-^-delay=1---COMBINED SENSED SIGNAL
---^-----------------l-----------------------l-----------------------l------------------------l---------------delayed tach output
---^---delay&offset-----l-----------------------l-----------------------l-----------------------l---------delayed tach & offset output
---^------------------OUTPUT1------------OUTPUT2------------OUTPUT1------------OUTPUT2----
and now if I was watching on a scope I would see all the outputs happen after a tach event, and if I altered the offset I could move these outputs incrementally? ignoring any spark advance values.
And if say I altered delay teeth to 2, the OUTPUTS would jump 90 degrees to the next input event, which would be a useful way to get round this problem... you have a spark advance table with the right values in it but you are firing on the wrong cylinder (out of phase), so I could increase the delay teeth as opposed to switching plug caps.
Am I right in thinking (MicroSquirt) that you can use the offset value to tweak when the injection happens (as linked to OUTPUT event) relative to TDC, or am I getting ahead of myself?
Either way, many thanks for your help and patience, but I doubt it will be the last time that I post to the forum.

Hopefully one day when I understand things better I can contribute, and help others.
PS It's not oddfire.