Bench Testing MAP Sensor - Boost
-
- Posts: 82
- Joined: 2021 Apr 15, 10:56
- Location: Spring Texas
- Vehicle Information: 00 F150 4.6L Extended cab
CVAF1
4R70 3.08
Re: Bench Testing MAP Sensor - Boost
i did not pull those myself. i think those came from eec analyzer site. i will do some more digging.
-
- Posts: 4162
- Joined: 2021 Feb 15, 12:23
- Location: Metairie, LA
- Vehicle Information: Work Truck
'19 F-150 3.3L
Re: Bench Testing MAP Sensor - Boost
svo and turbocoupes were not map they were vam with a bap
-
- Posts: 82
- Joined: 2021 Apr 15, 10:56
- Location: Spring Texas
- Vehicle Information: 00 F150 4.6L Extended cab
CVAF1
4R70 3.08
Re: Bench Testing MAP Sensor - Boost
what about cosworth stuff
-
- Posts: 95
- 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: Bench Testing MAP Sensor - Boost
GHAJ0 is MAF.
-
- Posts: 196
- Joined: 2021 Feb 15, 22:12
- Location: Sacramento CA
- Vehicle Information: 1991 F150 4.9L J1X 80lb Injectors E85
1995 F150 5.8L MOB1
Re: Bench Testing MAP Sensor - Boost
Well based on this I think we can just change some hard coded limits here to allow for more than 162hz. It is literally hard coded to not read anything beyond 162hz (WOT in death valley I guess) This is the A1C MAP Subroutine. I tabbed out the if statements and converted the words to decimal and divided by 256 to get the values. C code only down below. We should be able to determine what R56 and R5c represent and set appropriate values for boost. Seems easy enough unless this is just the tip of the iceberg.
Code: Select all
Sub_38ff:
38ff: c3,e4,a2,58 stw R58,[Re4+a2] [122] = R58;
3903: 89,db,7c,58 cmpw R58,7cdb
3907: db,30 jc 3939 if (R58 < 7cdb) {
3909: 89,5f,64,58 cmpw R58,645f
390d: db,10 jc 391f if (R58 < 645f) {
390f: 89,6c,59,58 cmpw R58,596c
3913: d3,54 jnc 3969 if (R58 < 596c) goto 3969;
3915: a1,bd,6e,56 ldw R56,6ebd R56 = 6ebd;
3919: a1,21,23,5c ldw R5c,2321 R5c = 2321;
391d: 20,64 sjmp 3983 goto 3983; }
391f: 89,5a,71,58 cmpw R58,715a
3923: db,0a jc 392f if (R58 < 715a) {
3925: a1,f1,69,56 ldw R56,69f1 R56 = 69f1;
3929: a1,4a,21,5c ldw R5c,214a R5c = 214a;
392d: 20,54 sjmp 3983 goto 3983; }
392f: a1,88,63,56 ldw R56,6388 R56 = 6388;
3933: a1,7b,1e,5c ldw R5c,1e7b R5c = 1e7b;
3937: 20,4a sjmp 3983 goto 3983; }
3939: 89,72,96,58 cmpw R58,9672
393d: db,1a jc 3959 if (R58 < 9672) {
393f: 89,e0,88,58 cmpw R58,88e0
3943: db,0a jc 394f if (R58 < 88e0) {
3945: a1,c4,5e,56 ldw R56,5ec4 R56 = 5ec4;
3949: a1,2a,1c,5c ldw R5c,1c2a R5c = 1c2a;
394d: 20,34 sjmp 3983 goto 3983; }
394f: a1,10,59,56 ldw R56,5910 R56 = 5910;
3953: a1,19,19,5c ldw R5c,1919 R5c = 1919;
3957: 20,2a sjmp 3983 goto 3983; }
3959: 89,3f,a2,58 cmpw R58,a23f
395d: db,18 jc 3977 if (R58 >= a23f) goto 3977;
395f: a1,7e,53,56 ldw R56,537e R56 = 537e;
3963: a1,d3,15,5c ldw R5c,15d3 R5c = 15d3;
3967: 20,1a sjmp 3983 goto 3983; }
3969: a1,6c,59,58 ldw R58,596c R58 = 596c;
396d: a1,bd,6e,56 ldw R56,6ebd R56 = 6ebd;
3971: a1,21,23,5c ldw R5c,2321 R5c = 2321;
3975: 20,0c sjmp 3983 goto 3983; }
3977: a1,3f,a2,58 ldw R58,a23f R58 = a23f;
397b: a1,7e,53,56 ldw R56,537e R56 = 537e;
397f: a1,d3,15,5c ldw R5c,15d3 R5c = 15d3;
3983: 6c,56,58 ml2w R58,R56 lR58 *= R56;
3986: 68,5c,5a sb2w R5a,R5c R5a -= R5c;
3989: c3,e4,a6,5a stw R5a,[Re4+a6] [126] = R5a;
398d: 91,40,a0 orb Ra0,40 B6_Ra0 = 1;
3990: 91,01,a1 orb Ra1,1 B0_Ra1 = 1;
3993: 38,a7,19 jb B0,Ra7,39af if (B0_Ra7 = 0) {
3996: 71,f7,a6 an2b Ra6,f7 B3_Ra6 = 0;
3999: c3,e4,a4,5a stw R5a,[Re4+a4] [124] = R5a;
399d: 09,03,5a shlw R5a,3 R5a <<= 3;
39a0: b0,5b,ba ldb Rba,R5b Rba = R5b;
39a3: 91,20,52 orb R52,20 B5_R52 = 1;
39a6: c3,e4,a0,00 stw R0,[Re4+a0] [120] = 0;
39aa: c3,e4,a8,00 stw R0,[Re4+a8] [128] = 0;
39ae: f0 ret return; }
Code: Select all
[122] = R58;
if (R58 < 7cdb){ //124hz
if (R58 < 645f){ //100hz
if (R58 < 596c) goto 3969; //89hz
R56 = 6ebd;
R5c = 2321;
goto 3983; }
if (R58 < 715a){ //113hz
R56 = 69f1;
R5c = 214a;
goto 3983; }
R56 = 6388;
R5c = 1e7b;
goto 3983; }
if (R58 < 9672){ //150hz
if (R58 < 88e0){ //136hz
R56 = 5ec4;
R5c = 1c2a;
goto 3983; }
R56 = 5910;
R5c = 1919;
goto 3983; }
if (R58 >= a23f) goto 3977; //162hz
R56 = 537e;
R5c = 15d3;
goto 3983;
3969: R58 = 596c;
R56 = 6ebd;
R5c = 2321;
goto 3983;
3977: R58 = a23f; //162hz
R56 = 537e;
R5c = 15d3;
3983: lR58 *= R56;
R5a -= R5c;
[126] = R5a;
B6_Ra0 = 1;
B0_Ra1 = 1;
if (B0_Ra7 = 0){
B3_Ra6 = 0;
[124] = R5a;
R5a <<= 3;
Rba = R5b;
B5_R52 = 1;
[120] = 0;
[128] = 0;
return; }
-
- Posts: 196
- Joined: 2021 Feb 15, 22:12
- Location: Sacramento CA
- Vehicle Information: 1991 F150 4.9L J1X 80lb Injectors E85
1995 F150 5.8L MOB1
Re: Bench Testing MAP Sensor - Boost
Thinking about removing all of the nested if statements and adding functions to lookup values for r56 and r5c. It should look something like this:
Thoughts?
Thoughts?
-
- Posts: 4162
- Joined: 2021 Feb 15, 12:23
- Location: Metairie, LA
- Vehicle Information: Work Truck
'19 F-150 3.3L
Re: Bench Testing MAP Sensor - Boost
try it out and see
unfortunately I won't be of any help any time soon I'm backed up pretty good
unfortunately I won't be of any help any time soon I'm backed up pretty good
-
- Posts: 196
- Joined: 2021 Feb 15, 22:12
- Location: Sacramento CA
- Vehicle Information: 1991 F150 4.9L J1X 80lb Injectors E85
1995 F150 5.8L MOB1
Re: Bench Testing MAP Sensor - Boost
No worries, I've started writing the code maybe one of you other guys can help me figure out how the argument address location is calculated. It made sense to me in the past, but I can seem to figure out how from address 4b51 in the example below using 0218 the computer addresses the function at a618.
Is it a reference address + 0218?
Code: Select all
4b4e: ef,b8,fb call 4709 UUWFuncLU_4709 (
4b51: 18,02 #arg 1 Func_a618,
4b53: 38,00 #arg 2 38 );
-
- Posts: 4162
- Joined: 2021 Feb 15, 12:23
- Location: Metairie, LA
- Vehicle Information: Work Truck
'19 F-150 3.3L
Re: Bench Testing MAP Sensor - Boost
An argument is based on the calling routine. You have to go to the 4709 routine to see whats its doing to get that.
-
- Posts: 95
- 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: Bench Testing MAP Sensor - Boost
Code: Select all
UUWFuncLU_4709:
4709: cc,36 pop R36 R36 = pop(); # 0x4B51
470b: b2,37,32 ldb R32,[R36++] R32 = [R36++]; # 0x18
470e: b2,37,33 ldb R33,[R36++] R33 = [R36++]; # 0x02
4711: ac,33,34 ldzbw R34,R33 wR34 = yR33; # 0x02
4714: 71,0f,33 an2b R33,f R33 &= f; # 0x02
4717: 08,04,34 shrw R34,4 R34 >>= 4; # 0x00
471a: 67,35,f0,00,32 ad2w R32,[R34+f0] R32 += [R34+f0]; # 0xA618=0x0218+[0x0+0xA400]