I did play with the new dtc search and managed to fix and add some new pcms.
I tried to configure e40 pcm for dtc search. It founds the tables but the dtc status is a little different format. It is 2bytes status, first is always 0, something like this
00 06, 00 03, 00 00, 00 01 and so on. If there is a step for mil status will fix it perfectly. Or specify dtc status size 1 byte or 2 byte. It also seems to not recognize the 0-6 format. There is no mil on/off too.
If we can make that configurable I will look for some patterns for e38 too. There migth be something similar.
Can we also add alternative xmlfile field. A search that will work on more than on xmlfile.
Here is the current dtc search.xml I have. I still need to confirm that dtc status and mil on/off offset is correct. It looks like the first byte is always omitted for some reason.
0.15.3
MilTable = "combined", if Status is in format 0-7 / Status & MIL in one table.
Added config for StatusSteps and MilSteps.
Almost untested, I don't have searchstrings for e38, try to search e40 files somewhere
I've been playing with the new configurable search, my brain is melting, but I might have figured out how it works..
Your now looking in the OS code for where the actual address information is stored for the DTC list? Your not looking for the actual dtc list itself now??
ironduke wrote:I've been playing with the new configurable search, my brain is melting, but I might have figured out how it works..
Your now looking in the OS code for where the actual address information is stored for the DTC list? Your not looking for the actual dtc list itself now??
Correct.
Version 0.15.6 have now fallback: If there is no configuration for e38/e67 (or table not found), it uses old harcoded search.
But combined status & MIL is displayed as separate values, like LS1, for compatibility.
ironduke wrote:I've been playing with the new configurable search, my brain is melting, but I might have figured out how it works..
Your now looking in the OS code for where the actual address information is stored for the DTC list? Your not looking for the actual dtc list itself now??
Correct.
Version 0.15.6 have now fallback: If there is no configuration for e38/e67 (or table not found), it uses old harcoded search.
But combined status & MIL is displayed as separate values, like LS1, for compatibility.
Damn!!! That is some good work, I started this with just the idea of getting the E38's done, you and Kur40 have taking it a LOT further than I ever intended, awesome!! Thanks for the fallback, I'll have to try and figure out how to use it..
I tried loading your source into visual studio to help me see how your searching but it crashes with "Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index" so that was a bust, lol..
ironduke wrote:I've been playing with the new configurable search, my brain is melting, but I might have figured out how it works..
Your now looking in the OS code for where the actual address information is stored for the DTC list? Your not looking for the actual dtc list itself now??
Correct.
Version 0.15.6 have now fallback: If there is no configuration for e38/e67 (or table not found), it uses old harcoded search.
But combined status & MIL is displayed as separate values, like LS1, for compatibility.
Damn!!! That is some good work, I started this with just the idea of getting the E38's done, you and Kur40 have taking it a LOT further than I ever intended, awesome!! Thanks for the fallback, I'll have to try and figure out how to use it..
I tried loading your source into visual studio to help me see how your searching but it crashes with "Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index" so that was a bust, lol..
XML files are missing from folder bin\debug\XML\
?
I think there is still bug in decoding status + MIL to separate values, let's see if I can fix it.