Search found 427 matches

by tvrfan
Sat Dec 14, 2019 10:38 pm
Forum: EECGeeks
Topic: SAD disassembler progress
Replies: 39
Views: 3200

Re: SAD disassembler progress

OK have pushed update of SAD401 for WIn32 with a 'double' in place of the 'long'. This seems to fix the problem for now.... That was a platform problem................Yes, 8061 is a 16 bit CPU, but its multiply and divide are 32 bit. I used a 64 bit 'long' to capture any overflow in a neat way, but ...
by tvrfan
Sat Dec 14, 2019 9:53 pm
Forum: EECGeeks
Topic: SAD disassembler progress
Replies: 39
Views: 3200

Re: SAD disassembler progress

John, May have the answer. I have a 'long' parameter in 'set_psw' subroutine (to allow for overflows and divides etc) In Linux, long is 64 bits, int is 32 bits In win32, long is 32 bits , int is 32 bits. and in emulate, the psw determines when djnz and other conditional jumps actually jump or not......
by tvrfan
Sat Dec 14, 2019 8:10 pm
Forum: EECGeeks
Topic: SAD disassembler progress
Replies: 39
Views: 3200

Re: SAD disassembler progress

John, Hey, that's really weird - If I run CARD on linux with no DIR file it gives - 3a57: df,11 je 3a6a if ([R76-67] = 0) goto 3a6a; 3a59: ef,fa,09 call 4456 Sub69(f154,da,1); 3a5c: 54,f1,da,01 #args 3a60: 31,2c,1f jnb B1,R2c,3a82 if (B1_R2c = 0) goto 3a82; 3a63: ef,92,06 call 40f8 Sub51(43c); 3a66:...
by tvrfan
Sat Dec 14, 2019 6:14 pm
Forum: EECGeeks
Topic: SAD disassembler progress
Replies: 39
Views: 3200

Re: SAD disassembler progress

From the msg output of a 4.01 cold turkey run on CARD # ------------ Subroutine list (special funcs only) sub 8263c "UTabLU1" sub 82652 "UTabLU2" sub 82654 "UTabLU3" sub 82680 "STabLU1" sub 87768 "SUBFunLU1" sub 8776d "SSBFunLU1" sub 87770 "USBFunLU1" sub 87773 "UUBFunLU1" sub 877db "SUWFunLU1" sub...
by tvrfan
Sat Dec 14, 2019 6:12 pm
Forum: EECGeeks
Topic: SAD disassembler progress
Replies: 39
Views: 3200

Re: SAD disassembler progress

OK - I give in. You are right. A sub command will now IGNORE any additional commands, but will still process the name... Just pushed this out as a quick fix to Github, still as 4.01 e.g. SUB 3456 "Filter" : S Y: S Y:W will get processed as SUB 3456 "Filter" which is exactly the same as SYM 3456 "Fil...
by tvrfan
Sat Dec 14, 2019 5:49 pm
Forum: EECGeeks
Topic: SAD disassembler progress
Replies: 39
Views: 3200

Re: SAD disassembler progress

POSTED version 4.0.1 to github. I did try out the full A9L directives file, but WITHOUT any SUB commands, as they won't work any more (did args and lookups in totally different way). The struct commands still work..........but no guarantees. Try version 4 out with NO .DIR file first, and see how it...
by tvrfan
Sat Dec 14, 2019 5:44 pm
Forum: EECGeeks
Topic: SAD disassembler progress
Replies: 39
Views: 3200

Re: SAD disassembler progress

Thanks for all the work on the new version. [WARNING] I have a sub entry for _every_ single subroutine in my CARD dir. It will be very interesting to see how SAD 4.0.1 goes from a cold start. [/WARNING] OK - change the SUB to a SYM to get your names back. Just please drop off any additional stuff (...
by tvrfan
Sat Dec 14, 2019 3:26 pm
Forum: EECGeeks
Topic: SAD disassembler progress
Replies: 39
Views: 3200

Re: SAD disassembler progress

POSTED version 4.0.1 to github. I did try out the full A9L directives file, but WITHOUT any SUB commands, as they won't work any more (did args and lookups in totally different way). The struct commands still work..........but no guarantees. Try version 4 out with NO .DIR file first, and see how it ...
by tvrfan
Tue Dec 10, 2019 3:36 pm
Forum: EECGeeks
Topic: SAD disassembler progress
Replies: 39
Views: 3200

Re: SAD disassembler progress

So reverse scan is different to stepping back through the code? Yeah in my head anyway. I originally kept a 'pile' of previous opcodes for conditional jumps, and stepped back through them, but now I've changed the code so that it can simply feed in ANY (valid) opcode start address and get it decode...
by tvrfan
Tue Dec 10, 2019 3:18 pm
Forum: EECGeeks
Topic: SAD disassembler progress
Replies: 39
Views: 3200

Re: SAD disassembler progress

OK, sorry about further delay, I ran into a tricky bug... Anyway, I've now got SAD v4 to work correctly for variable arguments, and it also is able to size and decode those arguments. (decode is where the argument has a value like 0xd040 which equates to address [0xfa] + 40 ). I've found FOUR versio...
by tvrfan
Wed Oct 30, 2019 10:53 pm
Forum: EECGeeks
Topic: SAD disassembler progress
Replies: 39
Views: 3200

Re: SAD disassembler progress

Ah Yes, a good reminder.

I couldn't get that to work either !!

In the end I added a special extra emulate pass/block, flagged/created from the push, which executes before the 'final' return (this is where the args are)
so that gets more args if required.

and it seems to work !!
by tvrfan
Wed Oct 30, 2019 4:54 pm
Forum: EECGeeks
Topic: SAD disassembler progress
Replies: 39
Views: 3200

Re: SAD disassembler progress

More - Problem with loops was for tabs and funcs (2D and 1D lookups). SAD did originally rescan those blocks to get the parameters (address and size) out (from the call tree), but that caused loops when trying to link it with emulate (complicated by the fact that the function lookup code has JUMPS i...
by tvrfan
Wed Oct 30, 2019 1:45 pm
Forum: EECGeeks
Topic: SAD disassembler progress
Replies: 39
Views: 3200

Re: SAD disassembler progress

the code now has 2 distinct 'phases'. It scans the binary as a 'tree' (i.e. jumps and calls create a new 'branch' as a block to be scanned), but keeps a fake stack of 'callers' up to date. and if it finds a POP or LDX [STACK+n] command, it flags that scan branch as an argument getter, and then flags...
by tvrfan
Tue Oct 29, 2019 1:48 pm
Forum: EECGeeks
Topic: SAD disassembler progress
Replies: 39
Views: 3200

New SAD version soon

Update after being far too long getting next version ready, here's my announcement Where I am up to - I have FINALLY got a method which seems to work for all my 'test binaries' collection, including variable argument decodes. The variable arg analysis proved HUGELY harder than I expected, and I agai...
by tvrfan
Sat Oct 19, 2019 4:02 am
Forum: Hardware Discussions
Topic: I/O count of modern EECs
Replies: 6
Views: 517

Re: I/O count of modern EECs

Ah right - sorry. My 'standard' stuff' was the HEGOs and emission stuff, base sensors, basically what's on all engines. I don't know if VVT sensor replaces the 'standard' cam sensor or not, I think probably not as it's a 'cyl 1' marker Yes ?? I really DO mean Lotus. The Evora uses the 2GR-FE engine ...
by tvrfan
Fri Oct 18, 2019 7:33 pm
Forum: EECGeeks
Topic: Why auto disassembly is tough
Replies: 310
Views: 71920

Re: Why auto disassembly is tough

Right - Yep, some complex addressing there indeed ............

OK. I never expected more than one offset (or special attribute etc.) per argument, so it was coded that way.

Hmmm..... I need to see if I can work out what it's doing.
have you cracked it ?? Any help appreciated !

Andy.
by tvrfan
Fri Oct 18, 2019 2:50 pm
Forum: EECGeeks
Topic: Why auto disassembly is tough
Replies: 310
Views: 71920

Re: Why auto disassembly is tough

No.

It seems a bit weird to me, in fact. Where is the code ? I'll have a look.

Andy.
by tvrfan
Fri Oct 18, 2019 2:13 pm
Forum: Hardware Discussions
Topic: I/O count of modern EECs
Replies: 6
Views: 517

Re: I/O count of modern EECs

Just spotted this.......... NB. 1. whether or not the I/O is direct or via a bus, the EEC still has to receive/generate it, so all those events still have to happen in the code. 2. CAN bus as I understand was its own acronym Cheap, Adequate, Nasty, and was really because it's now cheaper to have a c...
by tvrfan
Mon Aug 19, 2019 3:23 pm
Forum: Lounge
Topic: Spamming with Private VPNs
Replies: 14
Views: 945

Re: Spamming with Private VPNs

It's a catch-22, like much of the internet. me - I don't have a fixed IP on my account, and don't use a VPN for this site. As default, I use Firefox with NoScript to switch off most/all of the JavaScript to stop ads,popups,trackers, which it does well, but it does stop some things working on many si...
by tvrfan
Tue Jul 02, 2019 5:43 pm
Forum: EECGeeks
Topic: Proposed GUFB patch tweak
Replies: 33
Views: 1958

Re: Attn: CGrey8 - proposed GUFB patch tweak

On reading this thread, an idea occurs to me... If you have an engine that can climb up the revs really fast (as you stated), then could it also be that the 'rolling average' calculations need to change? have you already thought of that ? Why - On the A9L bins, (GUFB) the rolling average calcs actua...
by tvrfan
Sun Jun 30, 2019 7:23 pm
Forum: EECGeeks
Topic: Meaning of disassembly underscore.
Replies: 4
Views: 378

Re: Meaning of disassembly underscore.

From me, the SAD author... I had to come up with some kind of default name, so I chose Bx_Ry, meaning "Bit x of Register y". In a typical binary there are many,many 'flag' states (i.e. ON or OFF), used for all sorts of things, and the CPU has the opcodes JB JNB (jump if bit set/not set) to support f...
by tvrfan
Mon Jun 24, 2019 3:28 pm
Forum: EECGeeks
Topic: Added useful docs into openEEC in github
Replies: 12
Views: 1087

Re: Added useful docs into openEEC in github

In that case I hereby claim ALL THE KUDOS for writing good clean 'C' code, which isn't easy !!! (Joking !! - - for some weird reason, smilies don't seem to work for me in this BB. Linux/Firefox issue ? Hmmm....No, smilies not disabled.) Seriously, I'm truly glad it DID compile and run, as it does he...
by tvrfan
Sat Jun 22, 2019 10:04 pm
Forum: EECGeeks
Topic: Added useful docs into openEEC in github
Replies: 12
Views: 1087

Re: Added useful docs into openEEC in github

Another just in case - please don't think I'm 'knocking' anything there - I just want to help stop any misunderstandings and confusion. It's already hard enough to look at low level machine code, especially some of the multibank tricks. (ooh - an unintended pun there...) I'm lucky as I've done this ...
by tvrfan
Sat Jun 22, 2019 4:36 pm
Forum: EECGeeks
Topic: Added useful docs into openEEC in github
Replies: 12
Views: 1087

Re: Added useful docs into openEEC in github

Just a note here - I had a look too, some of those docs are now superceded, and the bank swop one (written by me) is WRONG at the detail level (but the analysis of how the code works is still correct). This was before I saw the Ford Handbook, which gives the true answer. For Techies/Advanced/IT geek...
by tvrfan
Wed Jun 12, 2019 2:49 pm
Forum: EECGeeks
Topic: Why auto disassembly is tough
Replies: 310
Views: 71920

Re: Why auto disassembly is tough

Guys, Just for completeness, it's worth a quick review of the PSW on 8065 CPUs and bank operation. Whilst the 8065 PSW lower byte contains the various status flags for conditional jumps (zero, negative, etc), the upper byte contains current program bank (which I take to mean 'code bank'), the curren...
by tvrfan
Tue Jun 11, 2019 7:07 pm
Forum: EECGeeks
Topic: Why auto disassembly is tough
Replies: 310
Views: 71920

Re: Why auto disassembly is tough

John, Just discovered a bug in the way code blocks are queued for scanning, which may also explain some of the undecoded sections in CARD. Effectively this bug means some block scan combos are lost entirely. Found it when working on the multibank argument emulate/decode. So I'll fix that first and r...
by tvrfan
Thu Jun 06, 2019 2:24 pm
Forum: EECGeeks
Topic: Why auto disassembly is tough
Replies: 310
Views: 71920

Re: Why auto disassembly is tough

Thanks John, Methods 1) already thought about possible endless loop, so emulation has an 'opcodes executed' maximum, currently at 1000 (may change this) 2) Interesting idea. I admit I had not thought that way at all. I already have a 'called by' chain, which is necessary for subroutines (and argumen...
by tvrfan
Wed Jun 05, 2019 10:18 pm
Forum: EECGeeks
Topic: Why auto disassembly is tough
Replies: 310
Views: 71920

Re: Why auto disassembly is tough

<code snipped> Load a word, push it later and return is a common theme for overlooked code. Maybe scan any for code any time a load push return sequence is encountered. Yes, A9L does that, and I've been stuck on how to handle it properly. The problem is that a register is loaded with an address in ...
by tvrfan
Wed Jun 05, 2019 4:16 pm
Forum: EECGeeks
Topic: Why auto disassembly is tough
Replies: 310
Views: 71920

Re: Why auto disassembly is tough

Thanks. I have mentioned previously how all the blocks of code are overlooked and how fixing one detail snowballed a pile of code. I will try to find it. The start of many structues are found. Good that it finds the start points at least !! I have been playing with the idea of some kind of 'data pa...
by tvrfan
Wed Jun 05, 2019 3:23 pm
Forum: EECGeeks
Topic: Why auto disassembly is tough
Replies: 310
Views: 71920

Re: Why auto disassembly is tough

John, I found the bug with the 4456 and 4459 args. I think that's all working right now. Here is a new listing in case it's any use to you. Code should be right (I hope!), but data isn't ! I see there are still some blocks which look like code but are not decoded, along with some obvious all-data st...