Getting started with PCM hammer

They go by many names, P01, P59, VPW, '0411 etc. Also covering E38 and newer here.
JHSimpson
Posts: 12
Joined: Wed Apr 19, 2023 9:17 am
cars: Currently working on a Vortec 5.7L from a 1999 GMC Yukon. Going into a 1982 Jeep CJ8 Scrambler. I have a 1982 Jeep CJ7 with a 1986 Jeep Cherokee EFI 4.0L engine, GM 700R4 trans, Dana 300 with TerraLow 4:1 gear set. Moab Utah close by!
Location: West Jordan, Utah

Re: Getting started with PCM hammer

Post by JHSimpson »

Assembler is a long way from C#.
JHSimpson
Posts: 12
Joined: Wed Apr 19, 2023 9:17 am
cars: Currently working on a Vortec 5.7L from a 1999 GMC Yukon. Going into a 1982 Jeep CJ8 Scrambler. I have a 1982 Jeep CJ7 with a 1986 Jeep Cherokee EFI 4.0L engine, GM 700R4 trans, Dana 300 with TerraLow 4:1 gear set. Moab Utah close by!
Location: West Jordan, Utah

Re: Getting started with PCM hammer

Post by JHSimpson »

Do you need assembler to solve time critical issues?
User avatar
Gampy
Posts: 2333
Joined: Sat Dec 15, 2018 7:38 am

Re: Getting started with PCM hammer

Post by Gampy »

The PCMHammer Application is written in C# ...

However, how this all works is PCMHammer is the PC side application, then we put a 'Kernel' aboard the PCM that takes over control of the PCM, that 'Kernel' and PCMHammer work together to Read/Write the PCM.

PCMHammer's original Kernel is written in C, it's big, like 7890 bytes, so big it won't fit in RAM of some PCM's so we needed a smaller kernel, and some PCM's only allow a single packet upload to the PCM before we get a Kernel aboard.

So we needed what we are calling a 'Loader' Kernel, a tiny (< 1024 bytes) Kernel that we put aboard the PCM, then use it to receive a larger multi packet Kernel.

Some time back I took some old code that Antus posted and started teaching myself m68k (Motorola 68000 series MCU) assembly, I got it reading PCM's that we previously couldn't read because of the C Kernel size.

This enticed Antus to join my project and he took it to another level, he whipped up the CRC code and the Mode36 code, mode36 is sending data to the PCM to be written to either RAM or Flash and then can Execute that code ...

Now we have the Loader Kernel we've been needing ... And pretty solid m68k assembly Read Only Kernels, they are tiny (Loader=~647 bytes, Kernel=~1171 bytes) compared to the C Kernels as to be expected.

Now we want to grow this assembly Kernel into a full write Kernel.

We are currently taking a short break while the assembly read Kernel and Loader Kernel get some public testing to ensure they are solid.

Then we are going to add write support ...

Antus is light years ahead of me in assembly, I am a green beginner.

If you can lend a helping hand, it would be greatly appreciated by many!

Do you Git ??
(Git, Github, is a distributed version control system)

BTW, PCMHammer source is here: PCM Hacks Repository
If you look in the Kernels directory you will see two .S files, Loader.S, and Kernel.S they are the new m68k assembler Loader and Kernel.

-Enjoy
Intelligence is in the details!

It is easier not to learn bad habits, then it is to break them!

If I was here to win a popularity contest, their would be no point, so I wouldn't be here!
JHSimpson
Posts: 12
Joined: Wed Apr 19, 2023 9:17 am
cars: Currently working on a Vortec 5.7L from a 1999 GMC Yukon. Going into a 1982 Jeep CJ8 Scrambler. I have a 1982 Jeep CJ7 with a 1986 Jeep Cherokee EFI 4.0L engine, GM 700R4 trans, Dana 300 with TerraLow 4:1 gear set. Moab Utah close by!
Location: West Jordan, Utah

Re: Getting started with PCM hammer

Post by JHSimpson »

Oh, I see... I'll take a look at the M68K stuff to see if I can figure out what it is doing... More Later.
Jim
JHSimpson
Posts: 12
Joined: Wed Apr 19, 2023 9:17 am
cars: Currently working on a Vortec 5.7L from a 1999 GMC Yukon. Going into a 1982 Jeep CJ8 Scrambler. I have a 1982 Jeep CJ7 with a 1986 Jeep Cherokee EFI 4.0L engine, GM 700R4 trans, Dana 300 with TerraLow 4:1 gear set. Moab Utah close by!
Location: West Jordan, Utah

Re: Getting started with PCM hammer

Post by JHSimpson »

OH, and yes, I use GitHub.
User avatar
antus
Site Admin
Posts: 8253
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: Getting started with PCM hammer

Post by antus »

develop branch is where all the latest code is, with the actual development happening on our own branches.
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
User avatar
Gampy
Posts: 2333
Joined: Sat Dec 15, 2018 7:38 am

Re: Getting started with PCM hammer

Post by Gampy »

JHSimpson wrote:OH, and yes, I use GitHub.
Welp, create a fork, pull a clone, create a branch and jump in ...

Lots to be done!

Always interested in seeing new views.

-Enjoy
Intelligence is in the details!

It is easier not to learn bad habits, then it is to break them!

If I was here to win a popularity contest, their would be no point, so I wouldn't be here!
JHSimpson
Posts: 12
Joined: Wed Apr 19, 2023 9:17 am
cars: Currently working on a Vortec 5.7L from a 1999 GMC Yukon. Going into a 1982 Jeep CJ8 Scrambler. I have a 1982 Jeep CJ7 with a 1986 Jeep Cherokee EFI 4.0L engine, GM 700R4 trans, Dana 300 with TerraLow 4:1 gear set. Moab Utah close by!
Location: West Jordan, Utah

Re: Getting started with PCM hammer

Post by JHSimpson »

I guess any architecture documents you may have are in Git? What cross-assembler are you using? I need to find a M68K PRM too as I'm not familiar with that processor.
User avatar
antus
Site Admin
Posts: 8253
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: Getting started with PCM hammer

Post by antus »

the assembler is listed in the readme at https://github.com/LegacyNsfw/PcmHacks/ ... op/Kernels and must be installed to the default path on windows. There isnt any architecture documents that im aware of, we just try to follow standard styles, document the code in comments, and learn from our own experimentation and reverse engineering work as we go.
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
JHSimpson
Posts: 12
Joined: Wed Apr 19, 2023 9:17 am
cars: Currently working on a Vortec 5.7L from a 1999 GMC Yukon. Going into a 1982 Jeep CJ8 Scrambler. I have a 1982 Jeep CJ7 with a 1986 Jeep Cherokee EFI 4.0L engine, GM 700R4 trans, Dana 300 with TerraLow 4:1 gear set. Moab Utah close by!
Location: West Jordan, Utah

Re: Getting started with PCM hammer

Post by JHSimpson »

Thanks! Sounds like fun!
Post Reply