I don't know, I didn't write the comments in the hacs, I was just going off of what I saw. different PCMs with different PU resistors, may have a different scale from VDC(Analog) to counts(digital).
?
I don't know, I didn't write the comments in the hacs, I was just going off of what I saw. different PCMs with different PU resistors, may have a different scale from VDC(Analog) to counts(digital).
?
1978 Camaro Type LT, 383, Dual TBI, '7427, 4L80E
1981 Camaro Z-28 Clone, T-Tops, 350/TH350
1981 Camaro Berlinetta, V-6, 3spd
1974 Chevy/GMC Truck, '90 TBI 350, '7427, TH350, NP203, 6" lift, 35s
Mark, I'm not sure where we are trying to go here, but if you look at ASDU LD1B3 as A/D counts, then 132 = 59 C. which is EGR enable temp right? That is using the .750000*X-40.00000 formula. Not sure if 59 C. makes sense as EGR enable, but if that's what's used, then at least I understand how it got from 132 to 59 C. I should problably edit some of these comments as we figure out what is going on to clear up confusion down the road. Let me know what you want changed in the comments and I will make those changes in all copies.
I made this change in my ASDU1.asm file. Does it make sense to you?
LD1B3 FCB 132 ; A/D counts (.750000 * X - 40.0000) 59c COOL FOR EGR ENABLE (1K PU) TBL 3
looking at the original 42 hack it has 48C, not sure which one is correct.
Last edited by jim_in_dorris; 03-17-2013 at 06:41 AM.
Square body stepsides forever!!!
Ok, I think I have figured out the TBL3 reference. It should read "Real Time Service Routine 3" which is where the egr parameters are referenced.
Square body stepsides forever!!!
I understand your going off what you saw, then it was a little different then what I saw, then almost close to the math! Then I found a completely different Inverse table?
The explanation of different PU resistors and scales seems most logical. I can't believe how many different conversions I found in the $42 XDF? All because of a EFG enable temp that seems to work backwards? Which is still an issue, big issue, but not part of the temps we have been discussing.
I wasn't trying to go anywhere except find out why raising the temp at LD1B3 made my engine quit running if I revved it up? Raising it should have turned EGR off, but instead it turned off fuel or something when I revved engine? Lowering it made everything OK. BTW this engine did not even have an EGR on it??? So trying to find out what it really does is more important, there are other ways to turn off EGR, if we can't figure it out I'm going to remove this parameter from the XDF. Who knows how many guys have problems now because they turned off EGR by raising this temp?
I looked but haven't found it yet, still learning and appreciate your assistance in helping me tune cars and learn this assembly stuff!
For right now I'd like to figure out what AD count to digital is for 1227747? Supposed to be a 1kPU IIRC from Robert. Looking at the tables in hacs it's not linear. Nor do I know if they are correct or how to get correct info?
But take for instance ASDU3.asm
LD299 FCB 64 ; 18c COOL Min for CLS LP Enable
I think my ASDU is unmolested? It has 40h at that location. with 0.750000 * X -40.000000 it comes out to 8c?
If I change it to 64 as in ASM and use 0.750000 * X -40.000000 I get 35c
Neither is 18C ? SO I guess my question is? Is 18C correct? If so the conversion is wrong? How does 64h ever make 18c
I may have found it? Stock bin 40h, would line up to about 18c in this table I found in ASDU3.asm?
Code:; INV COOL BP'S ; 17 lns ; BIN Deg c ; ---------------- ; 0 -5 ; 16 5 ; 32 15 ; 48 25 ; 64 35 ; 80 45 ; 96 55 ; 112 65 ; 128 75 ; 144 85 ; 160 95 ; 176 100 ; 192 105 ; 208 110 ; 224 115 ; 240 200 ; 256 201
1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
-= =-
if that is a temperature refered to in counts. I think 35c would make sense if you are talking close loop enable at 95 F. Close loop enable at 64 F sounds a little low. However if 64 is degrees farenheit then it is indeed 18 C. That one is really puzzling. I would think that you have to look at what it is being compared to to figure out exactly how it is used. I really think after looking at the comments above it that it is in degrees farenheit.
Last edited by jim_in_dorris; 03-17-2013 at 09:35 AM.
Square body stepsides forever!!!
Looks like this has been straightened out. Careful about mixing disassemblies and strategies from different generation ecm/pcm's. You can get into trouble.LD1B3 FCB 120 ; ..c COOL FOR EGR ENABLE (1K PU) TBL 3
Can't find a table 3 and not sure what 1K PU is. There is a table for Coolant temp AD counts to C which I am used to using.
EB5A: LDX #$D1B3 ; EGR PARAM'S ;Here's the problem, EGR Temp enable is not working right in $42 mask/XDF.
So we get the address for the enable value, D1B3.
EB5D: LDAB L0006 ; STATUS ;
We load up a status flag
EB5F: LDAA 0,X ; 48c COOL FOR EGR ENABLE (1K PU) TBL 3
Now we do a funny trick, we use the address loaded in X at $EB5A to load the a value into A. What value? The value found at the location in X. IOW, load the EGR enable temp into A.
EB61: CMPA L00E3 ; COOL, 1k pu
Compare A(enable temp) with L00E3 (coolant temp)
It helps me to remember this is actually a subtraction. It means "A - L00E3"
EB63: BLS LEBA5 ; BR IF COOL VAL LT THRESH[/code]
Branch if Lower or Same. If what is lower or same? If A is lower than or same as L00E3.
So this skips most of the EGR code if the enable temp is higher than actual. Not much more going on there.
Well, some bit set / reset arguments were occurring during the skipped code but I don't remember having any problems raising enable temps in the past.I wasn't trying to go anywhere except find out why raising the temp at LD1B3 made my engine quit running if I revved it up?
The inverse coolant table exists because the ideal gas law, used for VE calculations, has temperature as a divisor. In the world of the HC09 and HC11, dividing takes more steps and more time than multiplying so the engineers simply did the division ahead of time and put it into a table for speedy lookup for multiplication.
Here's a neat page that might help with code:
http://www.slideboom.com/presentatio...ICROCONTROLLER
Well guys... I went through Jims new hacks and some old hacks and found 99% of all temps listed to hex number all calculated to
0.750000 * X -40.000000
What was done years ago? I don't know but we see all the examples above, as time moves on we learn and improve.
So that is what I am going to do with $42 I've been working on for years now... If you remember when I started (before this forum) I found several $42 masks, put them all together, then learned how to use the DSM/ASM, added stuff, practiced and learned. So all I can figure is all the ones I put together form different people all got it close? Then just recently found all the different conversions! It's been a great project, I've learned so much. But at this point it's probably overdone and I'm glad I found this last (hopefully) glitch.
Thanks for all the help! Was great sanity check because I was starting to loose it!
But now I'm back to what started all this.
LD1B3 FCB 132 ; ..c COOL FOR EGR ENABLE (1K PU) TBL 3
Have to figure out why I raised this temp to disable EGR and when I rev motor it shut off? Well just like fuel was turned off?
I'm going to do some more testing on my stock 1990 Suburban that has EGR.
1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
-= =-
Ward had been around for a long time. I believe he was involved with original design of HEI ignition. I know he worked with Steve Cole and Tunercat to make TTS tuning software. And at the end, he was fighting cancer while trying to remain active on the efi lists. I think the comments were more of a casual thing, to be used by people familiar with GM code. As others tried to make disassemblies they used some of Ward's work verbatim. 'Tis the nature of the internet. But many of GM's formulas don't change over the years with OBDI so you can bet that coolant temp in one mask is calculated the same as coolant temp in another. A good sanity check is to calculate the upper and lower limits and see if they fit within the range of the sensor or data field. If not, the forumla is probably wrong.
I missed your post #43 while typing...
That has been the issue, I can't find any of that or Service routine 3? Took your exact address commands and not a? So I started looking through all SRC, ASM files I have in $42 folder and Voila! One is three times the size! ARJU_HAC.src and sure enough it is there.
Not sure why I had an issue with raising EGR temp by looks of that?
What is the difference of a temp noted with 1k PU and one not?
For example:
LD1B3 FCB 132 ; 48c COOL FOR EGR ENABLE (1K PU) Matches Coolant temp table
LD296 FCB 102 ; 60 Deg c, (140f) CLS LP Timer WARM THRESH, (1K PU) Matches Coolant Temp Table
LD299 FCB 64 ; 35c COOL, Min for CLS LP Enable Does not match Coolant Temp Table
The ones that match coolant temp table still are not accurate with conversion for coolant temp table? 0.75000 * X -40
Or should I just give up and go back to life?
1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
-= =-
Are you talking about a raw a/d count to temp table?
I'll have to look through disassembly tonight.
Yes...
1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
-= =-
Mark, when this is figured out, I will go through and change the comments in asdu and asdx. I looked at code last night, and when you raise the temp to max at that qualifier, it skips the rest of the egr code following, but then does some vacuum qualifier stuff and goes to a routine I don't fully understand yet. I will have to spend time with the pink book to try to understand what is going on.
Square body stepsides forever!!!
Well if I have you confused I feel much better!
1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
-= =-
I glanced through quickly last night and saw two jumps that ended with a save desired EGR%. Is the vacuum stuff after that?it skips the rest of the egr code following, but then does some vacuum qualifier stuff and goes to a routine I don't fully understand yet.
Years ago I was warned not to set any temp enables to max or min values or strange things may happen. I've followed that warning so often that I didn't even think about it until just now.
Last edited by 1project2many; 03-19-2013 at 12:37 AM.
1990 Chevy Suburban 5.7L Auto ECM 1227747 $42!
1998 Chevy Silverado 5.7L Vortec 0411 Swap to RoadRunner!
-= =-
Bookmarks