Universal Patcher XML ????

They go by many names, P01, P10, P12, P59, E38, VPW, '0411 etc.
sparepartsblazer
Posts: 101
Joined: Mon Dec 04, 2023 1:18 am
Location: Missouri

Universal Patcher XML ????

Post by sparepartsblazer »

Starting to work on a bin from a P08. The DTC tables are set where each byte controls 8 DTCs. So how would this work.
kur4o
Posts: 1154
Joined: Sun Apr 10, 2016 11:20 am

Re: Universal Patcher XML ????

Post by kur4o »

there are 4 tables that control DTC encoding, only 3 are used.

Each byte have 8bits, so it is bit encoded. each bit responses to a specific DTC code.

Lots of other stuff is also bit encoded in p08 and p10 so be prepared to use it alot.
kur4o
Posts: 1154
Joined: Sun Apr 10, 2016 11:20 am

Re: Universal Patcher XML ????

Post by kur4o »

Some example how to configure a bit encoded value.


Platform Options 1 VATS 38b02e44-7afe-42a2-91e8-28a172de2013 12575262 Undefined 0001766B 0 0 UBYTE X*1.0 Bitmap 0 1 0 1 8 PlatformOrder False xml Enum: 0:Disabled,1:Enabled 0001766B Not Defined,Not Defined,Not Defined,Not Defined,Not Defined,VATS 1,VATS 2,Electric Fan These bit's are used to select various functions specific to each platform the PCM might be used on. If the value description is shown as "Not Defined" please do not alter the value. VATS 1 = Fuel cutoff Anti-Theft VATS 2 = Starter disable Anti-Theft
sparepartsblazer
Posts: 101
Joined: Mon Dec 04, 2023 1:18 am
Location: Missouri

Re: Universal Patcher XML ????

Post by sparepartsblazer »

kur4o wrote: Wed Dec 03, 2025 6:17 pm there are 4 tables that control DTC encoding, only 3 are used.

Each byte have 8bits, so it is bit encoded. each bit responses to a specific DTC code.

Lots of other stuff is also bit encoded in p08 and p10 so be prepared to use it alot.
So how do we set UP to handle this. In these to sample DTC tables the first byte controls the DTC, but UP shows a different byte for each.
2000 Cavalier 2.2.zip
You do not have the required permissions to view the files attached to this post.
sparepartsblazer
Posts: 101
Joined: Mon Dec 04, 2023 1:18 am
Location: Missouri

Re: Universal Patcher XML ????

Post by sparepartsblazer »

kur4o wrote: Wed Dec 03, 2025 6:30 pm Some example how to configure a bit encoded value.


Platform Options 1 VATS 38b02e44-7afe-42a2-91e8-28a172de2013 12575262 Undefined 0001766B 0 0 UBYTE X*1.0 Bitmap 0 1 0 1 8 PlatformOrder False xml Enum: 0:Disabled,1:Enabled 0001766B Not Defined,Not Defined,Not Defined,Not Defined,Not Defined,VATS 1,VATS 2,Electric Fan These bit's are used to select various functions specific to each platform the PCM might be used on. If the value description is shown as "Not Defined" please do not alter the value. VATS 1 = Fuel cutoff Anti-Theft VATS 2 = Starter disable Anti-Theft
You posted this as I was posting my other ???. That makes sense now. I was thinking bitmap was a picture. :?

Also why does UP load the DTC tables twice if we rename them in the tuner xml.

So it looks like UP and EFILive the bits are flipped. This is what I have as of now.
12221087.zip
You do not have the required permissions to view the files attached to this post.
kur4o
Posts: 1154
Joined: Sun Apr 10, 2016 11:20 am

Re: Universal Patcher XML ????

Post by kur4o »

DTC table have some bugs needs to change all DTC tables to bitmap.

You can configure multitable.

For example you have 3 tables that start with same name DTC for example

If you add . program will open 3 tables as single one.

for example

DTC.1
DTC.2
DTC.3

will be opened as a single table.

You can also configure 3d multitable using . and [] within table name.
example
DTC[X].1
DTC{Y}.2
DTC{Z}.3


in settings->disablemultitable you can switch on/off that functionality.

There is built in search engine for DTC, the search engine always shows DTC results, no matter if xml have it configured or not.

You can see the origin of the table in the origin field, seek/xml.

To edit the DTC search configuration goto patcher->settings->DTC search

for advance use you can aslo configure tableseek configuration per platform/platforms
patcher->settings->tableseek
if you find some known patterns that is same across all bins in platform.

To see how it works you can open an ls1 bin and open tableseek, it have very powerful engine for all kind of patterns data.


Don`t count on the sample data I sent, it is not verified. I think there was some issue with bits counting backwards with efilive.
sparepartsblazer
Posts: 101
Joined: Mon Dec 04, 2023 1:18 am
Location: Missouri

Re: Universal Patcher XML ????

Post by sparepartsblazer »

kur4o wrote: Wed Dec 03, 2025 9:55 pm
For example you have 3 tables that start with same name DTC for example
If you add . program will open 3 tables as single one.
for example
DTC.1
DTC.2
DTC.3
will be opened as a single table.
Don`t count on the sample data I sent, it is not verified. I think there was some issue with bits counting backwards with efilive.
I knew about the . multitables. I just seperated for testing.

Vats 1 and Vats 2 should both be enabled. Both EfiLive and HP tuners show them both as enabled.
sparepartsblazer
Posts: 101
Joined: Mon Dec 04, 2023 1:18 am
Location: Missouri

Re: Universal Patcher XML ????

Post by sparepartsblazer »

kur4o wrote: Wed Dec 03, 2025 9:55 pm
in settings->disablemultitable you can switch on/off that functionality.

There is built in search engine for DTC, the search engine always shows DTC results, no matter if xml have it configured or not.

You can see the origin of the table in the origin field, seek/xml.

To edit the DTC search configuration goto patcher->settings->DTC search

for advance use you can aslo configure tableseek configuration per platform/platforms
patcher->settings->tableseek
if you find some known patterns that is same across all bins in platform.

To see how it works you can open an ls1 bin and open tableseek, it have very powerful engine for all kind of patterns data.
Will play around with the settings. Is there anywhere that explains how all the settings work.
sparepartsblazer
Posts: 101
Joined: Mon Dec 04, 2023 1:18 am
Location: Missouri

Re: Universal Patcher XML ????

Post by sparepartsblazer »

So on the platform options table, the byte is 36(00110110). UP shows deedeedd(d=disabled,e=enabled). Which is reverse.