* This field was ignored.
* move pad out
* gone
* make trigger configuration a little clearer
* even simpler!
* format
* test fix
* remove duty cycle thing
* Write proper TriggerDecoder tests
* Improve logic around sync loss
* these tests I understand
* these I sort of understand....
* the one error in the noiseless decoder is gone!
* extract isSyncPoint
* test because why not
* check vvt resync nb2
* custom nb decoder
* test only resyncs once!
* good job valgrind, you found a bug!
* s
* poke
* poke again for science
* kick for science
* kick
* kick
* comment kick
* s
* don't try to compare the array decay pointer to 0 (!)
* collateral damage
* adjust miata sync
* reset trigger states correctly on engine stop
* s
* nissan MR too
All it wants is to use the main trigger state, so don't bother copying it. Instead, change
PwmConfig to take a const pointer to a Multi.*Sequence, then make all the users adapt. Worse
fallout is that SimplePwm now has its own Multi.*Sequence, but PwmConfig is downgraded to a
pointer, so that's only a net +4 bytes. And we can make the overhead of Multi.*Sequence much lower
using embedded arrays, which only the caller can do since it knows the maximum size... (for another
day...)
Also remove SimplePwm's 2nd copy of SingleChannelStateSequence. It served no purpose.
Saves 1992 bytes of BSS and 24 bytes of RAM4 (latter probably due to SimplePwm change)
All it wants is to use the main trigger state, so don't bother copying it. Instead, change
PwmConfig to take a const pointer to a Multi.*Sequence, then make all the users adapt. Worse
fallout is that SimplePwm now has its own Multi.*Sequence, but PwmConfig is downgraded to a
pointer, so that's only a net +4 bytes. And we can make the overhead of Multi.*Sequence much lower
using embedded arrays, which only the caller can do since it knows the maximum size... (for another
day...)
Also remove SimplePwm's 2nd copy of SingleChannelStateSequence. It served no purpose.
Saves 1992 bytes of BSS and 24 bytes of RAM4 (latter probably due to SimplePwm change)
Memory seems more valuable than CPU; use the O(lg n) lookup by angle. A side effect is that it
seems to fix trigger lookup for the second phase of TRIGGERTYPE 53 544 TT_TRI _TACH 0.00