EEC V file conversion
-
- Posts: 345
- Joined: 2023 Sep 06, 13:11
- Location: Charlotte NC , USA
- Vehicle Information: 1999 Ford Ranger with 2000 Explorer v8 swap, FLN0
2003 Ford F150 Harley Davidson, Built 5.4L SOHC with 3.4L Whipple and Built 4R100
Re: EEC V file conversion
A few updates added to the DIR file.
Do you know if there may be any documentation on a strategy that uses the 4r100 transmission? I noticed It seems to use more subroutines and or different subs to run the 4r100.
Do you know if there may be any documentation on a strategy that uses the 4r100 transmission? I noticed It seems to use more subroutines and or different subs to run the 4r100.
- Attachments
-
- Stock_EKO2_256k_20240701.zip
- (93.98 KiB) Downloaded 145 times
-
- Posts: 361
- Joined: 2021 Feb 16, 15:46
- Location: Australia
- Vehicle Information: 95 Escort RS Cosworth
2.0 YBP
CARD / QUIK / COSY / ANTI
GHAJ0
SMD-190 / SMD-490 EEC-IV
Binary Editor
ForDiag
Re: EEC V file conversion
I'm not much use with regard to automatics, the limit of my knowledge is removing auto code to make way for other stuff.
Thanks for the EKO2 update.
Thanks for the EKO2 update.
-
- Posts: 345
- Joined: 2023 Sep 06, 13:11
- Location: Charlotte NC , USA
- Vehicle Information: 1999 Ford Ranger with 2000 Explorer v8 swap, FLN0
2003 Ford F150 Harley Davidson, Built 5.4L SOHC with 3.4L Whipple and Built 4R100
Re: EEC V file conversion
I have a question about RBase values.....How can I tell what the value should be in a subroutine? Here is an exampler from eko2...
It looks like R26 should be an Rbase value, but I am lost as to find out what it should be.
Funny enough I think I found another bug in SAD V5, here is the same subroutine from the SAD V5 LST file..
I am sure you can spot it right away...LOL
Code: Select all
Sub_868c5:
868c5: f2 pushp push(PSW);
868c6: b0,83,26 ldb R26,R83 TEMP1L = PDL;
868c9: 99,08,26 cmpb R26,8
868cc: d9,6a jgtu 86938 if (TEMP1L <= 8) {
868ce: 99,06,26 cmpb R26,6
868d1: d3,65 jnc 86938 if (TEMP1L >= 6) {
868d3: 3f,9d,62 jb B7,R9d,86938 if (FLG_SFT_IN = 0) {
868d6: a3,01,08,f1,34 ldw R34,[R0+f108] TMP1L = OSDIAG_1F108;
868db: b0,81,36 ldb R36,R81 TMP2L = GR_CM;
868de: ac,81,38 ldzbw R38,R81 TMP3L = GR_CM;
868e1: 08,01,38 shrw R38,1 TMP3L >>= 1;
868e4: b3,39,d7,06,26 ldb R26,[R38+6d7] TEMP1L = [TMP3L+106d7];
868e9: 99,08,36 cmpb R36,8
868ec: df,34 je 86922 if (TMP2L != 8) {
868ee: d9,48 jgtu 86938 if (TMP2L > 8) goto 86938;
868f0: b3,e2,9e,94 ldb R94,[Re2+9e] FLAGTEMP_BG = FLAGS_R121E;
868f4: 32,94,41 jnb B2,R94,86938 if (B2_FLAGTEMP_BG = 0) goto 86938;
868f7: a3,01,04,f1,3c ldw R3c,[R0+f104] TMP5L = ESDIAG;
868fc: 8b,fd,14,01,3c cmpw R3c,[Rfc+114]
86901: d3,35 jnc 86938 if (TMP5L < [15c5c]) goto 86938;
86903: a0,62,3c ldw R3c,R62 TMP5L = TP_REL;
86906: 8b,fd,16,01,3c cmpw R3c,[Rfc+116]
8690b: d3,2b jnc 86938 if (TMP5L < [15c5e]) goto 86938;
8690d: 8b,ff,80,01,34 cmpw R34,[Rfe+180]
86912: db,1b jc 8692f if (TMP1L >= OSSMIN) goto 8692f;
86914: a3,01,02,f1,34 ldw R34,[R0+f102] TMP1L = VSDIAG;
86919: 8b,fd,22,01,34 cmpw R34,[Rfc+122]
8691e: d9,09 jgtu 86929 if (TMP1L > [15c6a]) goto 86929;
86920: 20,16 sjmp 86938 goto 86938; }
86922: 8b,ff,80,01,34 cmpw R34,[Rfe+180]
86927: d3,06 jnc 8692f if (TMP1L < OSSMIN) goto 8692f; }
86929: 17,26 incb R26 TEMP1L++;
8692b: d3,06 jnc 86933 if (TEMP1L <= ff) goto 86933;
8692d: 20,09 sjmp 86938 goto 86938; } }
8692f: 15,26 decb R26 TEMP1L--;
86931: d3,05 jnc 86938 if (TEMP1L < 0) goto 86938; }
86933: c7,39,d7,06,26 stb R26,[R38+6d7] [TMP3L+106d7] = TEMP1L; } } } } } } } }
86938: f3 popp PSW = pop();
86939: f0 ret return;
Funny enough I think I found another bug in SAD V5, here is the same subroutine from the SAD V5 LST file..
Code: Select all
Sub_868c5:
868c5: f2 pushp push(PSW);
868c6: b0,83,26 ldb R26,R83 TEMP1L = PDL;
868c9: 99,08,26 cmpb R26,8
868cc: d9,6a jgtu 86938 if (TEMP1L <= 8) {
868ce: 99,06,26 cmpb R26,6
868d1: d3,65 jnc 86938 if (TEMP1L >= 6) {
868d3: 3f,9d,62 jb B7,R9d,86938 if (FLG_SFT_IN = 0) {
868d6: a3,01,08,f1,34 ldw R34,[R0+f108] TMP1L = OSDIAG_1F108;
868db: b0,81,36 ldb R36,R81 TMP2L = GR_CM;
868de: ac,81,38 ldzbw R38,R81 TMP3L = GR_CM;
868e1: 08,01,38 shrw R38,1 TMP3L >>= 1;
868e4: b3,39,d7,06,26 ldb R26,[R38+6d7] TEMP1L = [TMP3L+306d7];
868e9: 99,08,36 cmpb R36,8
868ec: df,34 je 86922 if (TMP2L != 8) {
868ee: d9,48 jgtu 86938 if (TMP2L > 8) goto 86938;
868f0: b3,e2,9e,94 ldb R94,[Re2+9e] FLAGTEMP_BG = FLAGS_R121E;
868f4: 32,94,41 jnb B2,R94,86938 if (B2_FLAGTEMP_BG = 0) goto 86938;
868f7: a3,01,04,f1,3c ldw R3c,[R0+f104] TMP5L = ESDIAG;
868fc: 8b,fd,14,01,3c cmpw R3c,[Rfc+114]
86901: d3,35 jnc 86938 if (TMP5L < [15c5c]) goto 86938;
86903: a0,62,3c ldw R3c,R62 TMP5L = TP_REL;
86906: 8b,fd,16,01,3c cmpw R3c,[Rfc+116]
8690b: d3,2b jnc 86938 if (TMP5L < [15c5e]) goto 86938;
8690d: 8b,ff,80,01,34 cmpw R34,[Rfe+180]
86912: db,1b jc 8692f if (TMP1L >= OSSMIN) goto 8692f;
86914: a3,01,02,f1,34 ldw R34,[R0+f102] TMP1L = VSDIAG;
86919: 8b,fd,22,01,34 cmpw R34,[Rfc+122]
8691e: d9,09 jgtu 86929 if (TMP1L > [15c6a]) goto 86929;
86920: 20,16 sjmp 86938 goto 86938; }
86922: 8b,ff,80,01,34 cmpw R34,[Rfe+180]
86927: d3,06 jnc 8692f if (TMP1L < OSSMIN) goto 8692f; }
86929: 17,26 incb R26 TEMP1L++;
8692b: d3,06 jnc 86933 if (TEMP1L <= ff) goto 86933;
8692d: 20,09 sjmp 86938 goto 86938; } }
8692f: 15,26 decb R26 TEMP1L--;
86931: d3,05 jnc 86938 if (TEMP1L < 0) goto 86938; }
86933: c7,39,d7,06,26 stb R26,[R38+6d7] [TMP3L+306d7] = TEMP1L; } } } } } } } }
86938: f3 popp PSW = pop();
86939: f0 ret return;
-
- Posts: 361
- Joined: 2021 Feb 16, 15:46
- Location: Australia
- Vehicle Information: 95 Escort RS Cosworth
2.0 YBP
CARD / QUIK / COSY / ANTI
GHAJ0
SMD-190 / SMD-490 EEC-IV
Binary Editor
ForDiag
Re: EEC V file conversion
I'm not seeing R26 as an rbase in the code sample above.
Yeah right, bank 3, not. Report the bug.
Yeah right, bank 3, not. Report the bug.
-
- Posts: 345
- Joined: 2023 Sep 06, 13:11
- Location: Charlotte NC , USA
- Vehicle Information: 1999 Ford Ranger with 2000 Explorer v8 swap, FLN0
2003 Ford F150 Harley Davidson, Built 5.4L SOHC with 3.4L Whipple and Built 4R100
Re: EEC V file conversion
Oh, that's my mistake then. So it is adding whatever is loaded to R26 to whatever is in the other address together in the above code? So there would be no way of knowing what the actual values are unless the code was running with real values and feedback?I'm not seeing R26 as an rbase in the code sample above.
EDIT: Sorry, RBase value for R38? I screwed that one up, LOL.
Also, should I report the bug in this forum in the SAD V5 thread or is there a better place to report bugs?
-
- Posts: 361
- Joined: 2021 Feb 16, 15:46
- Location: Australia
- Vehicle Information: 95 Escort RS Cosworth
2.0 YBP
CARD / QUIK / COSY / ANTI
GHAJ0
SMD-190 / SMD-490 EEC-IV
Binary Editor
ForDiag
Re: EEC V file conversion
R38 contains the value from GR_CM. How many gears have you got...so not many possibilites...
Divide it by 2.
Becomes
What do the strategy docs say about GR_CM?
Logging GR_CM would confirm the values of the base.
Yes report it in the V5 thread as a heads up for all. TVRfan has an email address on his github page or in the user manuals, so do that too. You could also raise an issue using github which would be visible to users who find SAD but don't use this forum.
Code: Select all
868de: ac,81,38 ldzbw R38,R81 TMP3L = GR_CM;
Code: Select all
868e1: 08,01,38 shrw R38,1 TMP3L >>= 1;
Code: Select all
868e4: b3,39,d7,06,26 ldb R26,[R38+6d7] TEMP1L = [(GR_CM/2)+106d7];
Logging GR_CM would confirm the values of the base.
Yes report it in the V5 thread as a heads up for all. TVRfan has an email address on his github page or in the user manuals, so do that too. You could also raise an issue using github which would be visible to users who find SAD but don't use this forum.
-
- Posts: 345
- Joined: 2023 Sep 06, 13:11
- Location: Charlotte NC , USA
- Vehicle Information: 1999 Ford Ranger with 2000 Explorer v8 swap, FLN0
2003 Ford F150 Harley Davidson, Built 5.4L SOHC with 3.4L Whipple and Built 4R100
Re: EEC V file conversion
Ok. I think I can understand that. So, I would need to log the values in all gears and make note of them, Then divide that value by 2 and then add the 106d7, and that would be the actual value, or would I need to figure out what value the PCM has stored in 106d7 and add that to the value in GR_CM/2?
I guess I am asking if 106d7 is a static/constant value or parameter and if I am trying to define that in a dir file, would I just ignore the value in R38 for this purpose?
I will report the bug in the V5 thread and look up his email address, thanks.
I guess I am asking if 106d7 is a static/constant value or parameter and if I am trying to define that in a dir file, would I just ignore the value in R38 for this purpose?
I will report the bug in the V5 thread and look up his email address, thanks.
-
- Posts: 361
- Joined: 2021 Feb 16, 15:46
- Location: Australia
- Vehicle Information: 95 Escort RS Cosworth
2.0 YBP
CARD / QUIK / COSY / ANTI
GHAJ0
SMD-190 / SMD-490 EEC-IV
Binary Editor
ForDiag
Re: EEC V file conversion
Yes you could log each gear to confirm the value of GR_CM.
Yes if the logged value for 4th gear is 0x8 then that is [0x4+106D7]=0x106DB.
R26 will end up holding the value contained at address 0x106DB.
Does GR_CM ever hold the value 0 for park or neutral??
You could add something like this to your comments file;
They are parameters that can be added to your directive file.
Yes if the logged value for 4th gear is 0x8 then that is [0x4+106D7]=0x106DB.
R26 will end up holding the value contained at address 0x106DB.
Code: Select all
868e4: b3,39,d7,06,26 ldb R26,[R38+6d7] TEMP1L = [106DB]
You could add something like this to your comments file;
Code: Select all
868e4 # [6D7] Gear 0?? \s6D7/n
868e4 # [6D8] Gear 1 \s6D8/n
868e4 # [6D9] Gear 2 \s6D9/n
868e4 # [6DA] Gear 3 \s6DA/n
868e4 # [6DB] Gear 4 \s6DB
-
- Posts: 345
- Joined: 2023 Sep 06, 13:11
- Location: Charlotte NC , USA
- Vehicle Information: 1999 Ford Ranger with 2000 Explorer v8 swap, FLN0
2003 Ford F150 Harley Davidson, Built 5.4L SOHC with 3.4L Whipple and Built 4R100
Re: EEC V file conversion
Not sure about that one. I will have to figure out how to make a DEF file for tunerpro or BE and then the truck is kind of torn apart right now anyways for some body work, so even when I figure out how to build a proper DEF file, it may be a couple more months before the truck is up and running again. I may end up switching back to the READ0 strategy and building that one up some more. That is the truck I am driving now. It's my dad's truck, but he has been letting me borrow it while mine is down. Right now I am using a Core Tuning DEF file in BE, but it is a paid file and it is missing some things and some of the tables for timing look a bit screwy, so I am hesitant to change much. Guess I need to dig into building a file of my own with the DIR file we have been building up. If I understand correctly, it first needs to be transferred to a spreadsheet of some kind?Does GR_CM ever hold the value 0 for park or neutral??
-
- Posts: 361
- Joined: 2021 Feb 16, 15:46
- Location: Australia
- Vehicle Information: 95 Escort RS Cosworth
2.0 YBP
CARD / QUIK / COSY / ANTI
GHAJ0
SMD-190 / SMD-490 EEC-IV
Binary Editor
ForDiag
Re: EEC V file conversion
This is a BE def file, it is a spreadsheet file.
http://eecanalyzer.net/strategies?view= ... fileId=553
You can use an intermediate spreadsheet to do the conversion from dir to def the copy the result to the actual def file.
http://eecanalyzer.net/strategies?view= ... fileId=553
You can use an intermediate spreadsheet to do the conversion from dir to def the copy the result to the actual def file.