PCMHammer P04

User avatar
Tazzi
Posts: 3476
Joined: Thu May 17, 2012 8:53 pm
cars: VE SS Ute
Location: WA
Contact:

Re: PCMHammer P04

Post by Tazzi »

-
Last edited by Tazzi on Mon Sep 18, 2023 9:31 am, edited 1 time in total.
Your Local Aussie Reverse Engineer
Contact for Software/Hardware development and Reverse Engineering
Site:https://www.envyouscustoms.com
Mob:+61406 140 726
Image
MudDuck514
Posts: 397
Joined: Wed Jul 05, 2017 8:30 am
cars: 2001 Pontiac Grand AM SE
LD9 2.4l I4, 4T40E
2005 Chevrolet Venture
LA1 3400 V6, 4T65E
Location: North TX, USA

Re: PCMHammer P04

Post by MudDuck514 »

So, has all work on the P04 and P08 been abandoned at this time?
Or are some of you still working on them?
I TRULY hope that you can continue, either together or apart, for those of us that can only sit and watch.

Mike
kur4o
Posts: 996
Joined: Sun Apr 10, 2016 9:20 pm

Re: PCMHammer P04

Post by kur4o »

Code: Select all

    bsr.w   ResetWatchdog              | Scratch the dog
    bsr.w   WasteTime                  | Twiddle thumbs
    dbf     %d1, LongWaitLoop | If False Decrement and Branch
I think here is the place where each pcm needs special handling instead of just wait for vpp to get applied.

We can copy gm code for each pcm. Usually it checks if a pcm switch a bit indicating vpp is on, than code can proceed to erase/write.
There is no issue with it and should be pretty straight forward if handled correctly for each pcm type.

I hope all HOW TO DO it arguments are now over and we can finally get this dialed. Actually I have another HOW TO DO it way, as anyone who does some hack and programming. It is totally different and I am sure nobody will like it.The main purpose is not HOW TO DO it, but to get it done at the end, with some general consensus about the main frame.

If not ALL in one is possible at the end, we can always split it by type of VPW registers. There is 3 main types. p01,p04 and blackbox uses another register.
User avatar
antus
Site Admin
Posts: 8388
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: PCMHammer P04

Post by antus »

I have paused, to wait and see if gampy submits his code, or responds. We dont have any updates, and a message is sitting in my outbox asking what he wants to do but it has not been read. If I dont hear back in the next few weeks i'll assume that I will not hear back and pick it up again.

At this stage I think the goal of one codebase for all generations of all vpw hardware might be impossible with what we know about the hardware, or at least a waste of time. I dont think any of us can solve the knife edge issue on early chipset pcms. If we dont here back with a better solution I plan to update the build system to have a sub directory for each supported platform, or at leastcthe early ones then i'll take Kernel.S and copy it to each one and change it until it works seperately so one set of changes doesnt break another. Its not like any of the commercial vendors used the same code for all, we can see theyre all quite different and they probably did what we can do, got it working for each one then froze the code and just stopped at that.

@kur4o its not the vpp timeout, ive made the delay stupid long and we still get crashes. At this stage I think the early generation cpu might actually have obscure cpu bugs in it which we dont understand, and GM may have been able to work with motorolla to work around the trigger for the crash in the compiler or assembler. The next gen cpu came out around about 1998 or 1999 and these problems went away. Without access to the same resources as gm I think we are just wasteing our time trying to solve it in a one code fits all way.
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
kur4o
Posts: 996
Joined: Sun Apr 10, 2016 9:20 pm

Re: PCMHammer P04

Post by kur4o »

You are absolutely right about the cpu bugs, I think they have different generations cpus and use much more different command set is being used. Looking close at dissasemblies of different platform, years, the opcode usage is quite different, using different assemblies for sure. I can also confirm that code that works on later pcm crashes on earlier one or is completely unsupported.
MudDuck514
Posts: 397
Joined: Wed Jul 05, 2017 8:30 am
cars: 2001 Pontiac Grand AM SE
LD9 2.4l I4, 4T40E
2005 Chevrolet Venture
LA1 3400 V6, 4T65E
Location: North TX, USA

Re: PCMHammer P04

Post by MudDuck514 »

Since PCMHammer seems to not need to be "installed" to the PC, but merely have the file "unzipped" I don't see a problem using a different "version" for most PCMs, and one (or more) for the "problem" PCMs.
I HOPE you can make ONE version that, perhaps, uses different kernals (and associated support file changes to point to them), but I for one don't see a problem doing things the other way.

Mike
User avatar
antus
Site Admin
Posts: 8388
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: PCMHammer P04

Post by antus »

No, thats not what I meant. For the asm kernels that the intention is to shift to a single Kernel.S file which we are using for all PCMs (though we can keep using the C kernels for the currently supported PCMs as another option, though the later ones are not the difficult platforms in the first place) You can see the code here:

https://github.com/LegacyNsfw/PcmHacks/ ... d1/Kernels

The build system tells it the target is P04, P08, P10, etc etc and it changes some minor but specific things to make it work on the supported PCMs. We end up with 1 kernel per PCM type which is exactly the same structure and code, just tweaked for the different register addresses now.

The problem is that small changes that should have no effect are breaking things on the early PCMs, and its been a balancing act to get them to work without understanding root cause. It works on some, but not others, we make a tiny change that should not have an effect and it fixes it on one, and breaks it on another. What I want to do, is copy Kernel.S and have one for each PCM target then forget about solving the why and just be happy it works. It doesn't really matter if we have 2 or 3 or 5 copies of Kernels.S so long as the kernels assembled and put in pcmhammerr are stable for their intended targets.

Its worth noteing the currently supported PCMs are not the problem with the asm kernel. Its only the older ones. Currently P04/P08 AMD and Intel. If we decide to add P05/P11 then likely those too. Then P04 we are not really sure is a PCM type, as you have different sizes, look, variations back to the start of this generation. But for now lets just say types of P04 when I think we really mean VPW V6 pcm generations. We probably will end up with several variations of P04 kernel to solve these problems.
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
MudDuck514
Posts: 397
Joined: Wed Jul 05, 2017 8:30 am
cars: 2001 Pontiac Grand AM SE
LD9 2.4l I4, 4T40E
2005 Chevrolet Venture
LA1 3400 V6, 4T65E
Location: North TX, USA

Re: PCMHammer P04

Post by MudDuck514 »

OK, I think I got what you are saying about the "P04" type PCMs.
Similar to the EARLY LS1a and later LS1b (0411).

Any way, whatever it takes to make PCMHammer support the target PCMs is fine with me, and probably others on here.

Mike
User avatar
Gampy
Posts: 2333
Joined: Sat Dec 15, 2018 7:38 am

Re: PCMHammer P04

Post by Gampy »

Sorry suckers, I surely am enjoying ruining your day showing up alive still yet, but not to worry, it may very well be the last time ... I can no longer setup let alone stand up, but I'll make another post about my situation in a bit ... If I can get that far!

Antus,

I surely do appreciate the patience in allowing me to get my last works pushed up, unfortunately I have not been able to resolve the knife edge issue with the P04 (and it does only affect the P04).

Due to the amount of Herion (Morphine) I am on I am to far gone to mentally wrap my mind around the project to be able to continue doing this crap so I'll be pushing up my last works, the code from the beta test I have had out there in the wild and I'll follow that with a WIP I have in progress.

I will do it as soon as possible, it might take a week or two ... If I haven't by the 1st of October, consider me dead and continue on my wayward son ...

I'll be making a public post as to my condition and status as soon as I can, things are not good!

It's been a real pleasure working with some of y'all, others not so much ...

I may pop in now and again until I do finally kick the bucket, but I'll try and stay out of arguments ... NOT!

Anybody jacks up my awesome works and I'll haunt you from the grave!

-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!
User avatar
antus
Site Admin
Posts: 8388
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: PCMHammer P04

Post by antus »

I want to thank you for your contributions to the asm kernel and build system. You help has been greatly appreciated. I'll keep an eye out for your work and pick it up and make sure it gets finished and gets out there in a usable form. Thanks again, I am sure many end up running this code to reflash their PCMs.
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