NefMoto

Technical => Flashing and Chipping => Topic started by: prj on January 08, 2015, 07:19:08 AM



Title: OLS Emulator Bridge
Post by: prj on January 08, 2015, 07:19:08 AM
I made this some time ago to be able to use WinOLS with a RoadRunner emulator (and Ostrich if need be).
I thought I'd post it here, a few of you already have it.

Basically it monitors a binary in OLS memory and outputs the changes in real time to a file.
After that you can monitor this file with EmUtility and changes will instantly go from OLS to your emulator.

Usage:
1. Export current file from OLS and select it in the "Binary to monitor" window.
2. Choose an output file. It will be created if it does not exist, overwritten if it does.
3. Choose options - some helpful options like 16bit byteswap, and stacking (29F200 choose 4, 29F400 choose 2 etc).

Press "Start Monitoring". It should find the binary in RAM and monitor it.
It is a good idea to close the tool or stop monitoring before OLS exits, as otherwise your file will be filled with garbage.

12/05/2016
* Removed address selection.
* Modified algorithm to scan all addresses at the same time.


Title: Re: OLS Emulator Bridge
Post by: Lost on January 08, 2015, 08:39:38 AM
Huge thanx master PRJ!!!


Title: Re: OLS Emulator Bridge
Post by: dream3R on January 08, 2015, 09:29:20 AM
Legend!


Title: Re: OLS Emulator Bridge
Post by: nyet on January 08, 2015, 10:38:22 AM
Amazing. Thank you again, prj.

Perfect timing, I just bought a moates.


Title: Re: OLS Emulator Bridge
Post by: technic on January 08, 2015, 01:39:33 PM
Very nice! I assume only one project/version can be open in WinOLS? (Or are you querying/matching the complete binary in RAM?)

I did something similar and always found three copies of the binary present in RAM.


Title: Re: OLS Emulator Bridge
Post by: prj on January 09, 2015, 08:15:38 AM
Does not matter how much you have open.

It makes a best guess initially. If it guesses wrong you can always select the correct address via trial and error.
Just choose another address and flip a few bytes back and forth and see if it picks it up. One of the addresses will be correct.

And yes, it scans the whole process memory, but it uses a few tricks/assumptions to be really fast doing it. Locating the binary matches should not take longer than 4-5 seconds.


Title: Re: OLS Emulator Bridge
Post by: chora on February 12, 2015, 04:24:36 AM
hi, very nice hard work from you prj , thanks advanced, whith this i can viu cursor run inside maps of wionls ? like with ols3000


Title: Re: OLS Emulator Bridge
Post by: daniel2345 on February 12, 2015, 11:24:10 AM
No. That would be tracing. from ecu to ols.

This tool monitors your changes in ols and puts it to ecu.


Title: Re: OLS Emulator Bridge
Post by: MIL_on on February 15, 2015, 04:01:50 AM
(http://i2.kym-cdn.com/entries/icons/original/000/004/029/disgusted-mother-of-god.png)

thanks, this is great!


Title: Re: OLS Emulator Bridge
Post by: NOTORIOUS VR on April 13, 2015, 07:37:33 AM
Amazing!  Thank you :)


Title: Re: OLS Emulator Bridge
Post by: Westfarmracing on May 28, 2015, 09:15:57 AM
Big thanks to you sir!


Title: Re: OLS Emulator Bridge
Post by: sonique on May 28, 2015, 03:58:30 PM
good app.. thanks


Title: Re: OLS Emulator Bridge
Post by: blundar on June 10, 2015, 09:00:28 AM
Thanks for sharing this.  I've linked to this thread from our RR / ME7 info page.  If there is anything else you'd like me to include, please let me know.

http://support.moates.net/roadrunner-and-bosch-me7/


Title: Re: OLS Emulator Bridge
Post by: prj on June 10, 2015, 11:41:37 AM
Thanks for sharing this.  I've linked to this thread from our RR / ME7 info page.  If there is anything else you'd like me to include, please let me know.

http://support.moates.net/roadrunner-and-bosch-me7/

That's nice, thanks. No need to include anything else really.


Title: Re: OLS Emulator Bridge
Post by: RBPE on August 05, 2015, 05:47:30 PM
How'd I miss this?? Thanks Prj


Title: Re: OLS Emulator Bridge
Post by: Libang on October 12, 2015, 11:45:11 AM
Hi, anyone tried it with EDC15 ECU with 29f400?


Title: Re: OLS Emulator Bridge
Post by: prj on October 14, 2015, 11:49:30 AM
Does not matter which ecu or which file. Any you want.
This plugin does not care what type of file you are editing.

If you are asking about RoadRunner, yes it works with 29f400 EDC15.
But if you don't kill checksums the car will stall almost every time you make changes even if OLS recalculates the sums.


Title: Re: OLS Emulator Bridge
Post by: john9357 on November 17, 2015, 01:28:54 PM
Hi prj . I have a small problem with your beautiful soft.
It does not detect the tread ols.exe but i can see the ols.exe tread in ram (I even found the file in ram).
I do not understand!


Title: Re: OLS Emulator Bridge
Post by: prj on November 27, 2015, 06:22:19 PM
No genuine versions of WinOLS are called "ols.exe".
In fact, it is not called that for a very long time...


Title: Re: OLS Emulator Bridge
Post by: dream3R on December 01, 2015, 04:27:43 PM
Easy fix for the man with the source, assuming the OLS version is right. :)

Never used it but it's a cracker!



Title: Re: OLS Emulator Bridge
Post by: john9357 on December 16, 2015, 02:18:47 PM
Easy fix with my non official version.


Title: Re: OLS Emulator Bridge
Post by: vwaudiguy on December 16, 2015, 02:29:32 PM
What. Was. The. Fix?  ::)


Title: Re: OLS Emulator Bridge
Post by: prj on December 16, 2015, 04:38:08 PM
Either renaming the ols exe file or editing the strings in the binary.
Either of those is simple to do.

Regardless, that is an ancient version. Even the cracked versions had different filename last I checked. Granted that was a long time ago, since I have official OLS.


Title: Re: OLS Emulator Bridge
Post by: vwaudiguy on December 16, 2015, 04:47:31 PM
Either renaming the ols exe file or editing the strings in the binary.
Either of those is simple to do.

Regardless, that is an ancient version. Even the cracked versions had different filename last I checked. Granted that was a long time ago, since I have official OLS.

Thanks for your answer, prj. I have legit OLS too, but was busting his chops for the ol' "I fixed it, look"  and not telling what he did.


Title: Re: OLS Emulator Bridge
Post by: john9357 on December 17, 2015, 12:36:03 AM
Yes i change the string in the binaries.
Several people have asked me mp how to change.


Title: Re: OLS Emulator Bridge
Post by: dream3R on December 21, 2015, 12:37:38 AM
Yes i change the string in the binaries.
Several people have asked me mp how to change.

Just those strings?  Nice solution.


Title: Re: OLS Emulator Bridge
Post by: prj on December 21, 2015, 01:50:16 AM
Sure, because the .exe is not protected in any way, and was never intended to.
If you want to (for some reason) use an ols.exe with a different name, you can change what it looks for without me having to do anything.


Title: Re: OLS Emulator Bridge
Post by: dream3R on December 21, 2015, 02:01:28 AM
I just wondered if it was in more than one place that all mate


Title: Re: OLS Emulator Bridge
Post by: prj on December 27, 2015, 05:53:23 PM
I just wondered if it was in more than one place that all mate

There is a list of strings it looks for. Change any one of them.


Title: Re: OLS Emulator Bridge
Post by: dream3R on December 27, 2015, 10:30:33 PM
There is a list of strings it looks for. Change any one of them.


Very useless post for a very useful bit of freeware software Dmitry, it was a serious question :)

Here's something else useless (joking btw)
(http://cdn.meme.li/instances/300x300/36381796.jpg)


Title: Re: OLS Emulator Bridge
Post by: prj on January 04, 2016, 05:43:27 PM
Your question would have been unnecessary had you bothered to open the .exe with a hex editor.
Do it, at least once and you will see what my answer refers to.


Title: Re: OLS Emulator Bridge
Post by: dream3R on January 04, 2016, 06:12:57 PM
Your question would have been unnecessary had you bothered to open the .exe with a hex editor.
Do it, at least once and you will see what my answer refers to.


It was a simple question in order to provide a bigger picture and since you wrote it then why guess at acsii or at all :)

I'll open it and take a look tomorrow.



Title: Re: OLS Emulator Bridge
Post by: prj on May 12, 2016, 04:59:23 AM
Due to modifications in the way OLS keeps track of changes in the new versions a different algorithm was needed to keep track of changes.
It has multiple mirrors in memory and it sometimes updates some, then others and there are delays.

To prevent this annoyance I made an algorithm that monitors all addresses at once and copies the delta changes to the output binary.
Basically it works as it did before now, it is just a bit smarter and does not have issues with newer OLS revisions.


Title: Re: OLS Emulator Bridge
Post by: dream3R on May 12, 2016, 06:10:05 AM
Due to modifications in the way OLS keeps track of changes in the new versions a different algorithm was needed to keep track of changes.
It has multiple mirrors in memory and it sometimes updates some, then others and there are delays.

To prevent this annoyance I made an algorithm that monitors all addresses at once and copies the delta changes to the output binary.
Basically it works as it did before now, it is just a bit smarter and does not have issues with newer OLS revisions.

Good job, it looks like they are deploying counter  measures lol.


Title: Re: OLS Emulator Bridge
Post by: nyet on May 12, 2016, 09:16:51 AM
Good job, it looks like they are deploying counter  measures lol.

Assholes. Anything to prevent people from doing stuff on their own.


Title: Re: OLS Emulator Bridge
Post by: vwaudiguy on May 12, 2016, 09:22:13 AM
Thanks for sharing the update, prj.


Title: Re: OLS Emulator Bridge
Post by: hodysystem on May 14, 2016, 12:07:02 PM
Thanks for sharing this! Amazing


Title: Re: OLS Emulator Bridge
Post by: dream3R on May 17, 2016, 03:26:48 PM
Assholes. Anything to prevent people from doing stuff on their own.

Never seen it in the release notes lol


Title: Re: OLS Emulator Bridge
Post by: prj on May 18, 2016, 03:47:15 AM
They just changed the way OLS works, they are not actively preventing anyone from using this.

In fact I talked to them recently and they will be implementing this functionality in the program according to my request, which means you won't even need this tool in the future.


Title: Re: OLS Emulator Bridge
Post by: aef on May 18, 2016, 04:20:21 AM
time to buy ols  :o


Title: Re: OLS Emulator Bridge
Post by: dream3R on May 18, 2016, 04:40:12 AM
Nice one


Title: Re: OLS Emulator Bridge
Post by: nyet on May 18, 2016, 11:03:18 AM
They just changed the way OLS works, they are not actively preventing anyone from using this.

In fact I talked to them recently and they will be implementing this functionality in the program according to my request, which means you won't even need this tool in the future.

Damn that is great news. Thank you for your efforts, prj.

Now, how about getting mappack format published :)


Title: Re: OLS Emulator Bridge
Post by: prj on August 27, 2016, 08:08:16 PM
The newest OLS version now has support for on the fly binary export to use with external emulators.

Sometimes it just helps to ask nicely.


Title: Re: OLS Emulator Bridge
Post by: vwaudiguy on August 27, 2016, 08:14:04 PM
Awesome. Looks pricey for a function we can do for free already, though.


Title: Re: OLS Emulator Bridge
Post by: prj on August 28, 2016, 03:26:42 PM
Did not realize it needs 3 CS points. Will talk to them.


Title: Re: OLS Emulator Bridge
Post by: dream3R on August 30, 2016, 04:20:21 PM
I was excited until 3 CS points lol


Title: Re: OLS Emulator Bridge
Post by: yxx499 on October 26, 2016, 12:35:53 PM
Great tool and great work, amazing PRJ.

Also, Guts kit is now available again on moates site.

also i think is prj contribution there.


Title: Re: OLS Emulator Bridge
Post by: kojac1983 on January 14, 2017, 02:05:45 PM
thanks a lot chief


Title: Re: OLS Emulator Bridge
Post by: aef on February 09, 2017, 12:13:25 PM
Did not realize it needs 3 CS points. Will talk to them.


its still 3cs or 450€  >:(
Will your tool work with Ols 3.76.00?


Title: Re: OLS Emulator Bridge
Post by: prj on February 11, 2017, 02:23:05 PM
Test it... The way it works is quite generic/smart.
Unless they change something really majorly I don't see it stopping working soon.


Title: Re: OLS Emulator Bridge
Post by: hurricanetdm on July 30, 2017, 01:25:46 AM
Huge thanx master PRJ!!!

very good job m8....thank you


Title: Re: OLS Emulator Bridge
Post by: FritzP on June 27, 2019, 01:24:54 PM
Nice tool. Will it also support tracing in OLS, like Ostrich do in Tunerpro RT


Title: Re: OLS Emulator Bridge
Post by: prj on June 28, 2019, 06:51:18 AM
Nice tool. Will it also support tracing in OLS, like Ostrich do in Tunerpro RT
If you want tracing in OLS buy OLS300.


Title: Re: OLS Emulator Bridge
Post by: prj on June 28, 2019, 06:55:47 AM
Source code dump, since I never plan on working on this again.
Maybe something changes or it needs some mods... I just use export plugin since they gave it to me for free.

Needs some understanding of winapi system programming.


Title: Re: OLS Emulator Bridge
Post by: FritzP on June 28, 2019, 08:15:14 AM
Source code dump, since I never plan on working on this again.
Maybe something changes or it needs some mods... I just use export plugin since they gave it to me for free.


With the export plugin OLS1007, will it then be possible to trace with Ostrich, or will this only work with OLS300.


Title: Re: OLS Emulator Bridge
Post by: sd16 on March 03, 2022, 09:44:38 AM
Hello

Can the Ostrich 2 also be operated with this software?


Title: Re: OLS Emulator Bridge
Post by: prj on March 03, 2022, 12:47:16 PM
I mean the software doesn't care what emulator you are using. So why not.
I have no clue if it still works or not.

I could probably github the source code though. Though I am not sure if it is a good idea, as it details an attack vector on OLS.


Title: Re: OLS Emulator Bridge
Post by: d3irb on March 03, 2022, 01:56:34 PM
I could probably github the source code though. Though I am not sure if it is a good idea, as it details an attack vector on OLS.

My experience with open source so far is that both reading source code and especially using Github are so alien to the usual thieves and bottom feeders that they won't even figure out what's going on.

Anyone smart enough to know how to use ReadProcessMemory was probably able to figure this and more out already, and anyone who isn't smart enough to figure out how to use ReadProcessMemory isn't going to be helped by this code, I guess is what I'm saying.


Title: Re: OLS Emulator Bridge
Post by: prj on March 03, 2022, 02:50:41 PM
There are only two tricks worth anything in the code:
1) How to scan the entire process memory very quickly for the copies of the binary file, if you try the naive approach it will take you half an hour.
2) The algorithm to detect changes, as there are is way more than one copy of the binary in the memory at all times.