Page 3 of 4

Re: Subaru ROM patching for logging

PostPosted: Mon Apr 26, 2010 8:26 am
by cboles
How the patching works depends on the patch. In the case of the Subaru CAN logging patch, the patching code finds and matches an entire function related to logging in a way that is independent of where the function is located as well as all of the RAM variables it uses. If the entire function matches, it is confident it can replace it with the new function I wrote, re-using the same RAM areas. If the patch doesn't show up, no match was made and the patch is not possible. In the un-patchable cases I have seen, the function is radically different and much smaller, so I would need to write a different patch and relocate the patch code somewhere outside of the function.

I am working on a python-based patching language that will be hosted inside of EcuFlash. This will allow other people to contribute patches as well. The quality and accuracy of the patches will only be as good as the author makes them.

mgv101 wrote:So how exactly does the patching work?

Does EcuFlash simply carries a broad set of instructions to study and determine whether the ROM loaded could be patched and build its own patch if it is able to. Or is each patch specific to a list of ROM and if the ROM's ID is not in the pre-specified list where a specific patch had been made available, EcuFlash will not give you a patch option.

I also am unable to see a patch option for my ROM too
JDM Legacy BP5 Type E AT MY08.hex
and is interested in finding out what determines a ROM could be patched or not.

Thank you for all the great work so far!

Re: Subaru ROM patching for logging

PostPosted: Mon Apr 26, 2010 11:49 am
by mgv101
Cool, that means there will be a chance that someone will make a patch for a popular ROM with similar logging function to mine that I could use in the future then.

With little programing skills that I had from back in high school, I doubt I could make a patch myself if it were ROM specific.
And no one would make a patch specifically for a JDM Legacy since there are so few around.

Re: Subaru ROM patching for logging

PostPosted: Mon Apr 26, 2010 12:27 pm
by cboles
There are really several steps to writing a new patch, with most of the work being in developing the new code:

1. Finding, disassembling, and understanding the original code
2. Assessing how many ROMs contain this same or similar code (i.e. how many people can benefit from this patch)
3. Developing, assembling, and testing new code to replace it
4. Make the new code smaller than the original, or determining a region where the new code can reside
5. Writing and testing the patching code that deploys the patch

mgv101 wrote:Cool, that means there will be a chance that someone will make a patch for a popular ROM with similar logging function to mine that I could use in the future then.

With little programing skills that I had from back in high school, I doubt I could make a patch myself if it were ROM specific.
And no one would make a patch specifically for a JDM Legacy since there are so few around.

Re: Subaru ROM patching for logging

PostPosted: Mon May 03, 2010 11:47 pm
by hta68
any progress on the K-line patch?

Re: Subaru ROM patching for logging

PostPosted: Tue May 04, 2010 10:55 pm
by ladams00
hta68 wrote:any progress on the K-line patch?


Slight nudge of a bump :D

Re: Subaru ROM patching for logging

PostPosted: Wed May 05, 2010 1:39 pm
by cboles
I've looked into it. One of the problems is that this code tends to vary from ROM to ROM. What ROM are you using? (anyone else who is interested, please let me know your ROM version too).

hta68 wrote:any progress on the K-line patch?

Re: Subaru ROM patching for logging

PostPosted: Wed May 05, 2010 11:07 pm
by deucex6400
Colby, do you have a completed k-line patch yet? I'm interested in it for A2ZJE11J (USDM 06 STI).

Re: Subaru ROM patching for logging

PostPosted: Thu May 06, 2010 12:25 am
by hta68
cboles wrote:I've looked into it. One of the problems is that this code tends to vary from ROM to ROM. What ROM are you using? (anyone else who is interested, please let me know your ROM version too).

hta68 wrote:any progress on the K-line patch?


2007 WRX USDM, A8DK100X, Thanks!

Re: Subaru ROM patching for logging

PostPosted: Sat May 08, 2010 1:55 am
by ladams00
I am very interested, Colby. 2005 USDM STi -- A2ZJB10J

cboles wrote:I've looked into it. One of the problems is that this code tends to vary from ROM to ROM. What ROM are you using? (anyone else who is interested, please let me know your ROM version too).

hta68 wrote:any progress on the K-line patch?

Re: Subaru ROM patching for logging

PostPosted: Sun May 09, 2010 9:47 am
by BlackStar2.5i
I am interested as well.

2005 USDM STi

A2ZJB10J

Re: Subaru ROM patching for logging

PostPosted: Mon May 10, 2010 5:10 am
by Mart
Same here A2ZJE11J (USDM 06 STI) :)

deucex6400 wrote:Colby, do you have a completed k-line patch yet? I'm interested in it for A2ZJE11J (USDM 06 STI).

Re: Subaru ROM patching for logging

PostPosted: Sat Jun 12, 2010 5:53 pm
by ladams00
Hey Colby, Have you been able to make some progress on the K-Line patches?

Re: Subaru ROM patching for logging

PostPosted: Fri Jul 02, 2010 10:36 am
by Digitalfiend
Colby,

I've been working on my own UI for high speed CAN logging but put it off once I discovered you can't read extended parameters over stock SSM. With this patch applied to my ROM, can I just issue a read memory message over SSM/CAN and the patch will handle the rest and return the value I want? Does this patch change the SSM protocol format at all?

Thanks.

Re: Subaru ROM patching for logging

PostPosted: Sat Jul 10, 2010 11:30 am
by kamakiri
Not getting the option to patch on an 08 Legacy Spec B with ID A2TB001L.

Re: Subaru ROM patching for logging

PostPosted: Mon Jul 26, 2010 7:53 pm
by ladams00
ladams00 wrote:Hey Colby, Have you been able to make some progress on the K-Line patches?


Just checking in. I know you're busy at home, Colby. Hope everything is well. :)