411 Disassembly and Reassembly

They go by many names, P01, P59, VPW, '0411 etc. Also covering E38 and newer here.
Post Reply
User avatar
durahax
Posts: 34
Joined: Sat May 12, 2012 3:00 am
cars: 03 GMC Sierra 2500HD - LB7 Duramax Diesel
Location: Philadelphia, PA

411 Disassembly and Reassembly

Post by durahax »

Now that I got a dump I'm ready to edit some code. Played around with IDA a bit, but I had some questions :hmm:

1.) So what programs do people on here recommend for 411 code? It can be for any OS.

2.) Is Motorola 68K the processor type?

3.) What should I enter in the RAM section? 0xFF8000 - 0xFFCDFF ?

4.) Do I need to split the binary up into sections?

5.) Anyone ever try the 68k disassembler on usbjtag download section?

6.) Any links to a m68 assembler? No download links on freescale website :(

7.) Should I be following this layout Antus posted in another thread or is that for J1850 only?

8.) Also would these change depending on ECM OS version? Addressing scheme is the same on V6, V8, ect?


512k '0411 PCM

Code: Select all

OS Segments:

vectors:                  000000->0004FF
boot segment:             000500->003FFF
main os:                  020000->07FFFD
ram:                      FF8000->FFCDFF

Calibration Segments:

*The first 2 bytes of the calibration segments are checksums.

engine:                   080000->013FFF
engine diagnostics:       014000->016DFF
transmission:             016E00->01BDFF
transmission diagnostics: 01BE00->01C7FF
fuel:                     01C800->01E51F
system:                   01E520->01EE9F
speedo:                   01EEA0->01EF9F
Image
User avatar
durahax
Posts: 34
Joined: Sat May 12, 2012 3:00 am
cars: 03 GMC Sierra 2500HD - LB7 Duramax Diesel
Location: Philadelphia, PA

Re: 411 Disassembly and Reassembly

Post by durahax »

I think I got it disassembled? Still reading up on all this stuff, my head is about to explode haha. But it looks right, maybe someone can confirm I'm heading in the right direction? Thanks

The ECM is out of a 2001 Chevrolet Silverado 1500 V6, still need to get the vin and osid when I get time.

*Edit - The previous dump I posted was bad, uploaded a good dump and disassembly below :)

Here's the bin I pulled from the 12200411 - Download 12200411.bin

Here's the 12200411 bin disassembled - Download 12200411.asm
User avatar
durahax
Posts: 34
Joined: Sat May 12, 2012 3:00 am
cars: 03 GMC Sierra 2500HD - LB7 Duramax Diesel
Location: Philadelphia, PA

Re: 411 Disassembly and Reassembly

Post by durahax »

Here's what I know just from poking around quickly...

The VIN is located at 4020-4031

Code: Select all

1GCEC14W21Z182203

00 31 47 43 45 43 31 34 57 32 31 5A 31 38 32 32 30 33
The OSID is at 7EF42-7EF49

Code: Select all

12202088

31 32 32 30 32 30 38 38
More info on what vehicle the ECM is from:

Code: Select all

1 - U.S.  Built
G - General Motors
C - Chevy
E - 6001-7000 GVWR - HYD Brakes
C - Full Size Truck 4x2
1 - Silverado 1500 1/2 Ton
4 - 2 Door Cab
W - L35 - 4.3 - V6 - Central Port Injection
1 - Model Year 2001
Z - Fort Wayne, Indiana
beerman
Posts: 12
Joined: Mon Sep 27, 2010 11:14 pm
cars: 1997 Camaro

2004 FLHRCI

2006 GTO
Location: New Jersey

Re: 411 Disassembly and Reassembly

Post by beerman »

VIN: 1GCEC14W21Z182203
Controller: PCM/VCM Powertrain/Vehicle Control Module




Calibration History for: Operating system
Part Number CVN Description
12208322 N/A New calibration removes functionality of A/C variation correction enhancement. Replaces calibration number 12202088.


--------------------------------------------------------------------------------


Calibration History for: Engine
Part Number CVN Description
16263697 00007F90 Engine calibration


--------------------------------------------------------------------------------


Calibration History for: Engine diagnostic
Part Number CVN Description
9362500 00004BC1 Software change to control unwanted idle speed
16263908 0000021F Engine diagnostic calibration


--------------------------------------------------------------------------------


Calibration History for: Transmission
Part Number CVN Description
12214319 00001446 Urban subroutine changed from 90 to 73 KPA
16264158 0000360E Transmission calibration


--------------------------------------------------------------------------------


Calibration History for: Transmission diagnostic
Part Number CVN Description
16264334 0000E269 Transmission diagnostic calibration


--------------------------------------------------------------------------------


Calibration History for: Fuel system
Part Number CVN Description
16264629 000086E5 New calibration to reflect changes in fuel tank stiffness
16264542 0000FC3A Fuel system calibration


--------------------------------------------------------------------------------


Calibration History for: System
Part Number CVN Description
9373587 0000D0D7 New calibration for production vehicles
16264748 0000E1B2 System calibration


--------------------------------------------------------------------------------


Calibration History for: Speedometer
Part Number CVN Description
9359167 00002DE3 Speedometer calibration
jlvaldez
Posts: 155
Joined: Mon Feb 11, 2019 12:48 pm
cars: '01 - Corvette Z06
'20 - Sierra Denali
'03 - Volvo S80 T6
'16 - Accord V6
Location: DFW, Texas

Re: 411 Disassembly and Reassembly

Post by jlvaldez »

Did you ever figure out how to modify the binary and then re assemble? There is a checksum that needs to be updated for the binary (or maybe it's each individual section, I'm not sure.)
User avatar
antus
Site Admin
Posts: 8237
Joined: Sat Feb 28, 2009 8:34 pm
cars: TX Gemini 2L Twincam
TX Gemini SR20 18psi
Datsun 1200 Ute
Subaru Blitzen '06 EZ30 4th gen, 3.0R Spec B
Contact:

Re: 411 Disassembly and Reassembly

Post by antus »

OS checksums are here: viewtopic.php?f=42&t=6198#p91839

Dissasm and reasm is hard, your generally better off patching the existing OS in place. Jump out to unused space and jump back if you need to.
Have you read the FAQ? For lots of information and links to significant threads see here: http://pcmhacking.net/forums/viewtopic.php?f=7&t=1396
Post Reply