instead of starting a new topic, i would like to go on here! One more time i am searching something without success
i am trying to find a solution for patching tprot 5-7 in BMW EDC17 of the E-Models EDC17C06, EDC17CP02 to write them via OBD once you unlocked them. Should be managable i thought....but i failed with this assumption.
It seems that it isnt implemented the same way it is in the VAG Ecus.
I decided to compare it with a MED17.5 which should be the best comparison as it has the same Tprot-Stage and the same Processor.
In those VAG Versions theres always a jump to a subroutine zeroed:
2B3Ch - 0000:8000ACD8 j16 loc_8000AD2E ; Jump to TPROT
by writing 2B3C to 0000 you disable the whole jump.
the subroutine which gets blocked this way looks like this:
0000:8000AD2E loc_8000AD2E: ; CODE XREF: sub_8000AC60+78j
0000:8000AD2E movh.a a2, #0xD001
load a2 with 0xD0010000000:8000AD32 mov16 d1, #0
load d1 0x010000:8000AD34 mov32 d0, #0x10
load d0 0x100000:8000AD38 lea a15, [a0]0x19A3
0000:8000AD3C mov16 d2, #1
load d2 0x010000:8000AD3E st16.b [a12], d0
0000:8000AD40 lea a2, [a2]-0x34CE
build effective address: 0xD0010000-0x34CE = 0xD000CB320000:8000AD44 st16.b [a13], d1
0000:8000AD46 st16.b [a15]0, d1
0000:8000AD48 st16.b [a2], d2
put 0x01 to Adresse which is hold in RAM-Cell 0xD000CB320000:8000AD4A j32 loc_8000B076
jump back to retthe call of this subroutine is based on what d2 holds before:
d2=0 --> jump to 8000ACDA
d2=2 --> jump to 8000B076
otherwise jump to the [now blocked] subroutine 8000AD2E. At its end this also just jumps to 8000B076. So by simply preventing to write this 0x01 to the Address which is hold by 0xD000CB32 and 0x0 to the address which is held by a15 the tprot isnt active. I think that this procedure should be quiet similar regardless of the manufacturer?
Comparing Op-Code did lead to a few assumptions of course, but none of them was proven to be correct. I also tried to check if Magic Motorsport Tprot off for VAG Ecus might work in this case, but i guess the jump which got modified is wrong as you can find the same sequence in another part of the VAG File!
I attached the two files i used to compare and also the working tprot off file for VAG and the automatic created (wrong?) tprot off file for the bmw