Finding payload address

All hardware related, disassembly / programming and code discussions belong here.
csmach1
Posts: 4
Joined: 2021 May 20, 09:02
Location: Detroit, MI
Vehicle Information: 2003 Mustang Mach1
Vortech supercharger
FBGI0

1997 MarkVIII
Turbo running CMAI6

Finding payload address

Unread post by csmach1 »

I am trying to disassemble a bin for the first time, but struggling to follow along with the writeup and I want to check with you guys if I'm even remotely close to doing this correctly.

The goal was to locate payload addresses in order to update the universal ADX for a new strategy. The trouble I'm having is finding the connection between the address from the disassembler to align with a payload name to add in the adx.

e.g. From the disassembly writeup Quick Reference --> Engine speed (N) should be found with 79,04,3c . In my SAD lst, I find:

Code: Select all

0a7e6: 79,04,3c           sb2b  R3c,4            R3c -= 4;
Is this saying that engine speed is stored at address a7e6? I must be missing something in this process, because when I compare to another bin which already has datalogging support, this method doesn't line up. If anyone has an example to point me in the right direction, it would be greatly appreciated.
decipha
Posts: 4952
Joined: 2021 Feb 15, 12:23
Location: Metairie, LA
Vehicle Information: Work Truck
'19 F-150 3.3L

Re: Finding payload address

Unread post by decipha »

no that cheat sheet gives you an area to look around. Somewhere in that area the rpm should be saved.
wwhite
Posts: 313
Joined: 2021 Feb 16, 15:53
Location: Victoria, BC, Canada
Vehicle Information: 1994 Flarside, XLT, 351w E4OD
SD48b, Quarter Horse, Burn2

Re: Finding payload address

Unread post by wwhite »

csmach1 wrote: 2021 May 20, 17:47 e.g. From the disassembly writeup Quick Reference --> Engine speed (N) should be found with 79,04,3c . In my SAD lst, I find:

Code: Select all

0a7e6: 79,04,3c           sb2b  R3c,4            R3c -= 4;
Is this saying that engine speed is stored at address a7e6?
No. 0A7E6 is the hex location(line number) of the actual code.
For an EEC-V cpu, that is saying ROM location 0, address location A7E6 contains the hex code 0x79,0x04,0x3c.
Which translates to SB2B R3c, 4, meaning subtract 4 from the value in R3c, and store it in R3c.

The question is, can code 79,04,3c, be reliable in always finding Engine speed (N)?
If it is, then the register R3c is the location of N.
decipha
Posts: 4952
Joined: 2021 Feb 15, 12:23
Location: Metairie, LA
Vehicle Information: Work Truck
'19 F-150 3.3L

Re: Finding payload address

Unread post by decipha »

The cheat sheet is a block of code often repeated in code in no way does it tell you anything else.

decipher that routine as rpm should be calculated and saved there.
wwhite
Posts: 313
Joined: 2021 Feb 16, 15:53
Location: Victoria, BC, Canada
Vehicle Information: 1994 Flarside, XLT, 351w E4OD
SD48b, Quarter Horse, Burn2

Re: Finding payload address

Unread post by wwhite »

csmach1 wrote: 2021 May 20, 17:47 The goal was to locate payload addresses in order to update the universal ADX for a new strategy. The trouble I'm having is finding the connection between the address from the disassembler to align with a payload name to add in the adx.
Sounds like me 2-3 years ago. It's not super easy when you first start out.
Understanding the disassembly is one thing, and datalogging payloads is another.

To locate payload addresses, you need to understand the disassembly. To understand the disassembly, you need to read, read, read, and more read the strategy documents, CPU instruction set, and understand how RAM and ROM are stored.

I had some very good guidance by someone, (who has now become a very good friend) who helped me learn the whole process.
There are some very good hints, and 'free' information with in the strategy documents.

To understand how the datalogging of payloads are stored, you have to look at the patch code, figure out where addresses are copied(or not), then look at the commands sent, figure out the order that they are returned, then you may see the light.

I ended up removing everything that was data logged, and then included only one single payload. That way I understood the order of how the data logging worked. I am sure some just get it, but took me a while, and a few spread sheets to fully understand what is going on. Still don't fully understand, but I am willing to learn.
Post Reply