Jump to content

[WIP] Attempt to Enable Coin Dirty Drivin


jhonipin
 Share

Recommended Posts

 

Hello everyone

I'm creating this topic to share what I discovered

and try to solve the problem that I can't solve.

 

 

Why do I want to compile Openparrot first?

 

I wanted to put coin in DirtyDrivin, I analyzed 
the exe from the first dump and the exe from Jconfig 
and noticed that the one from jconfig ignores the modifications 
of the .ini configuration file in the RuntimeData folder so it 
has a path applied to it that bypasses the verification of 
the exe teknoparrot dump applies this path when loading the game.

 

So here's a step by step of what I did

 

I downloaded the openparrot source code

mpf5u2ocmfoeuq1zg.jpg 

 

unzipped and ran premake.bat for vs2019 (Visual Studio 2019)

7uxrbqww5y40te5zg.jpg

 

open openparrot.sln with Visual Studio 2019

eh41jzxltff3riizg.jpg

I opened openparrot

n47khgy13b83nb5zg.jpg

 

then src/Functions/Games/Other

e47crvywkuhrqjizg.jpg

and now DirtyDrivin.cpp

yqqfaiawzuimke0zg.jpg

 

in the code I identified where the paths are applied in the

configurations, ignoring the .ini file of the RuntimeData folder

and

these are

hri6jjutpulmblpzg.jpg

 

I commented all of them

 

p9w1p8mt1fzudthzg.jpg

now I have it compiled in release mode and Win32

lglgnhnbtju9ytozg.jpg

 

after finishing compiling a folder called build is created

ncy0em8paxba9d8zg.jpg


I follow this path build \ bin \ release \ output
and copy all the content

b1i5zmonfdwl5emzg.jpg

 

and paste it into

teknoparrot OpenParrotWin32 folder

u72n26tv0fxchrjzg.jpg

 

ok in theory it was just that i thought that when sending

teknoparrot to run the game he would not do the verification

paths and i could find out the memory address of the coin

but i get it when i send it

bsxbrg2s6lm7rvezg.jpg

 

this error means that openparrot checks the CRC

executable (Cyclic Redundancy Checksum) and that for some reason

 I don't know yet, it changed when compiling the new openparrot

 

and that the new CRC generated is 5F4E17C3

 

 

I reopened OpenParrot.sln with Visual Studio 2019

eh41jzxltff3riizg.jpg

I vaculated the code and found GameDetect.cpp

h6qdiodmw283cbpzg.jpg

I found where it links the CRC with the

game id and replaced the old CRC with the new one

 

0majlivzbfde2onzg.jpg

I thought I had resolved more now by sending teknoparrot

to run the game it doesn't show the error anymore it also doesn't open the game

 

 

now that i don't know what i can do anymore if someone knows what i

did wrong and can compile openparrot with the Dirty Drivin modification share it here

 

 

I appreciate everyone's attention and I think that if we help each other

and share our experiences we can evolve and make the dumps as perfect as possible

Edited by 7zxkv
title balise
Link to comment
Share on other sites

 
 

Amazing progress, Do you know where openParrot crashes? Maybe adding some log using log4net can tell you something. I don't know if you can run dll using debug mode.

Link to comment
Share on other sites

 
il y a 50 minutes, gasabbath a dit :

Amazing progress, Do you know where openParrot crashes? Maybe adding some log using log4net can tell you something. I don't know if you can run dll using debug mode.

 

so far I haven't been able to debug, but I'm trying

Link to comment
Share on other sites

 
hace 5 horas, jhonipin dijo:

 

so far I haven't been able to debug, but I'm trying

That is great. I am a programmer but I don't have any knowledge about emulation stuff.

Are you from Brazil?

Link to comment
Share on other sites

 
il y a 41 minutes, gasabbath a dit :

That is great. I am a programmer but I don't have any knowledge about emulation stuff.

Are you from Brazil?

 

Yes I am from Brazil I am from the city of Curitiba, State of Paraná

 

 

let's exchange information I work with arcade machine maintenance and I'm learning programming

Link to comment
Share on other sites

 
 
hace 27 minutos, jhonipin dijo:

 

Yes I am from Brazil I am from the city of Curitiba, State of Paraná

 

 

let's exchange information I work with arcade machine maintenance and I'm learning programming

I have no problem in exchange info. I dónt know anything about emulation or working directly with memory addresses but if I can help you in anything that would be great. I have no problem in learning new things.
But I am not smart as you are haha.

We are neighbors, I am from Uruguay :)

Link to comment
Share on other sites

 
 
I just found out that what I did above is all right the fact that the game 
didn't open was a bug that I solved just by opening the GAME SETINGS and changing anything inside
 it and saving and the game opened more, it didn't do the I / O bypass so there is any of the paths I commented 
on does the I / O bypass
Link to comment
Share on other sites

 

 

update

as you can see in the video my compilation worked it means that the source code works. now the game enters coin mode but still ignores some settings in the RunTimeData folder so I still have work to do kkkk

 

 

 

 

I have to find out the credit address now

 

this is the openparrot compiled by me

http://www.mediafire.com/file/uv0wbyjlm434q24/OpenParrotWin32.rar/file

 

Link to comment
Share on other sites

 
hace 1 hora, jhonipin dijo:

 

update

as you can see in the video my compilation worked it means that the source code works. now the game enters coin mode but still ignores some settings in the RunTimeData folder so I still have work to do kkkk

 

 

 

 

I have to find out the credit address now

 

this is the openparrot compiled by me

http://www.mediafire.com/file/uv0wbyjlm434q24/OpenParrotWin32.rar/file

 

Great! Could you explain a little bit how do you do for analize the game.exe and figured out what memory address match with coin buttons? I mean, I have no idea how to do that and I would like to know.

Link to comment
Share on other sites

 
il y a 29 minutes, gasabbath a dit :

Great! Could you explain a little bit how do you do for analize the game.exe and figured out what memory address match with coin buttons? I mean, I have no idea how to do that and I would like to know.

of course I explain how I am doing in this game, I will explain here, for example, he is still
 applying some configuration paths like the 4 coins for 1 credit so I have to solve this first

we are learning together
Link to comment
Share on other sites

 
  • 1 month later...
 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
  • Create New...