Page 12 of 15

Re: SAD Version 5 (alpha)

Posted: 2024 Feb 20, 22:28
by efloth
Instead of a one size fits all approach, why not have separate code paths (v4) for the bins that mess up your rewrite? Would it be simple enough to determine what nuances to look for and decide which version to run?

Re: SAD Version 5 (alpha)

Posted: 2024 Feb 21, 05:40
by jsa
TVRfan, thank you for the new version and ongoing effort.

Efloth, in simple terms it's the nuances that are causing the trouble.

Re: SAD Version 5 (alpha)

Posted: 2024 Feb 21, 09:56
by BOOSTEDEVERYTHING
PROBLEM -
I have found things which mess up my 'elegant' v5 design, and I think it means some of my v5 rewrite won't ever work right... Damn, Damn, Damn!!! (and 'F' words)
As far as I am concerned, you are doing excellent111 Thank you so much for writing the program and continuing to develop it. You are doing everyone a great service, and without your program most of the stuff out there probably wouldn't have gotten out there to the DIY community. So Thank You Very Much from me in my little corner of the world!!!! Thank You, Thank You, Thank You!!!

Re: SAD Version 5 (alpha)

Posted: 2024 Feb 21, 17:22
by tvrfan
Thanks.

On the plus side v5 has its code design split into modules for easier maintenance, and has new user features (some still being developed).
On the negative side, V5 is a step backwards from v4 for disassembly results, but will be improved.

I don't think SAD will ever be perfect, too many styles of code and logic to deal with in the bins.
Some of the data will always be difficult to decode I reckon.
User commands are already too complex, but have to be to actually do the job.

But I can get it closer than it is now ....

efloth - Trouble is that you end up in a catch-22. Been there several times. One idea works for some bins, but not for others, and changing for another way then doesn't work for original bins, and around and around it goes. I reckon there is no way to do it perfectly. Emulate the whole thing (as some previous posts) seems right, but that doesn't work, as you have to ensure all events happen in the right order at the right time, and there's all the error checks/fault codes, and other things/events that probably only happen in a real environment with a real ICE. Way too hard.

In some ways you have a good point - different SAD for different bins, but how do you know which is right for which ?

Maybe one day from someone who knows how to train an AI system with thousands of rules .... but that isn't me....

Re: SAD Version 5 (alpha)

Posted: 2024 Feb 21, 19:44
by efloth
different SAD for different bins, but how do you know which is right for which
Let the user decide? Maybe a simple option to choose the disassembler version with some guidance.

Re: SAD Version 5 (alpha)

Posted: 2024 Feb 22, 05:20
by jsa
The user can choose any of the current SAD versions now.

Trouble is all SAD versions don't get everything right in any bin.

Even cherry picking the best bits of disassembly from all versions is going to come up short.

Re: SAD Version 5 (alpha)

Posted: 2024 Feb 22, 14:02
by tvrfan
Alternate methods/versions -

I already have a SETOPTS command (and matching CLROPTS) to set 'global' options, so it could easily be expanded for alternate disassembly methods as well as the current list. Current options are mostly layout related. This would be neater than having alternate versions hanging around.

So the mechanism to do this is already there. Maybe it's a good idea to keep in mind. I am open to that.
I would still like to get one version as correct as possible though.

Re: SAD Version 5 (alpha)

Posted: 2024 Feb 22, 14:40
by BOOSTEDEVERYTHING
Would SAD be able to disassemble a larger BIN file? For example..a BIN from a newer vehicle, like a 2016-2018 mustang? Or is that something completely different?

Re: SAD Version 5 (alpha)

Posted: 2024 Feb 22, 18:31
by tvrfan
Boosted - SAD is only for 8061 and 8065 CPUs (EEC-IV and V). These CPUs were made only for Ford, and were based on the Motorola 8096 CPU, with extensions added.

Some Euro builds moved to a different CPU at some point in 2000's,and Ford moved on to using IBM's PowerPC in er.. 2005 ish? . Not sure if this has been pensioned off for something new by now. These are totally different CPU hardware and memory layout, so would need to write a brand new disassembler for them.

PowerPC was not made especially for Ford like 806x were, and PowerPC were used in IBM servers and other things, so it's possible tools for PowerPC may work. I don't know for sure. I think there are several different versions of PowerPC too. (not interchangeable ?)

The main board/hardware design of EEC-V limits max memory to 4 x 64K banks = 256K, although 8065 CPU supports 16 banks (= 1 megabyte) and so does SAD. (= a 20 bit address range, 16 + 4 bank select).

Re: SAD Version 5 (alpha)

Posted: 2024 Feb 23, 13:08
by BOOSTEDEVERYTHING
Ok. That makes a lot of sense. I know there are some high cost options out there for the newer PCMs. But was just curious to see a newer pcm disassembly. Being at a Ford Dealership level unfortunately doesn’t give me any access at all to see anything like that.