Post by
John Dixon »
https://forums.nicoclub.com/john-dixon-u22208.html
Thu Apr 24, 2008 10:52 am
The way I understand it, the ECU is looking for det with a higher sensitivity in the areas with a timing figure >&h80 (or 128 decimal) so timing value of 148 is actually 20deg. When knocks are counted they are referenced against a table that dictates how many knocks can be detected in a certain TP/RPM block before the switch to the knock maps is made.After this switch is made then the knock maps will be used at all times until the ignition is cycled off and on again.I'm not 100% but I think there are 2 3x3 tables in the 300zx ECU for the knock limits at high / low sensitivity - either way the knock maps are latched across the entire operating range once set.Also, there is a seperate ignition retard parameter which looks to be applied as a timing retard for every knock detected, I set this to 0 when tuning.High gear is some sort of calc performed using a coefficient set in the ECU, again you can set it to disable this function when tuning.
I had started to make a ROM editor before I decided to go aftermarket, it had map trace and everything but the romulator didn't work as planned!!
Heres the definitions section which should show you the maps and parameter locations I knew about at the time. I'm sure Wes and Robert on here may know lots more by now!
'Set Up byte datablnErrors = blnErrors Or Not BA_RevLimit.Setup("Rev Limit", 1, &H7FB4, 50)blnErrors = blnErrors Or Not BA_SpeedLimit.Setup("Speed Limit", 1, &H7FA5, 1.25)blnErrors = blnErrors Or Not BA_Latency.Setup("Injector Latency", 1, &H7F88, 0.01)blnErrors = blnErrors Or Not BA_Feedback.Setup("Injector Feedback", 1, &H7F91, 1)blnErrors = blnErrors Or Not BA_VTCRelease.Setup("VTC Release Point", 1, &H79F6, 50)blnErrors = blnErrors Or Not BA_TPFuel.Setup("Fuel Map TP Scale", 16, &H7AF0, 0.125)blnErrors = blnErrors Or Not BA_TPTiming.Setup("Timing Map TP Scale", 16, &H7B10, 0.125)blnErrors = blnErrors Or Not BA_RPMFuel.Setup("Fuel Map RPM Scale", 16, &H7B00, 50)blnErrors = blnErrors Or Not BA_RPMTiming.Setup("Timing Map RPM Scale", 16, &H7B20, 50)blnErrors = blnErrors Or Not BA_TTPMin.Setup("TP Minimum Limit", 16, &H7E80, 0.125)blnErrors = blnErrors Or Not BA_TTPMax.Setup("TP Maximum Limit", 16, &H7E90, 0.125)blnErrors = blnErrors Or Not BA_TPLimit.Setup("TP Minimum Limit", 16, &H7960, 1)blnErrors = blnErrors Or Not BA_Recovery.Setup("Recovery", 16, &H7970, 1)blnErrors = blnErrors Or Not BA_ThroEnrich.Setup("Throttle Enrichment", 16, &H7E20, 1)blnErrors = blnErrors Or Not BA_IdleSpeedTemp.Setup("IdleSpeedWithTemperature", 32, &H76B0, 12.5)blnErrors = blnErrors Or Not BA_StartPulseIncTemp.Setup("StartPulseIncTemperature", 16, &H7E20, 1)blnErrors = blnErrors Or Not BA_DTS.Setup("Latency Change mS/V", 1, &H7F87, 0.00048828125)blnErrors = blnErrors Or Not BA_DRET.Setup("Detonation ign retard", 1, &H7FB8, 1)blnErrors = blnErrors Or Not BA_HGMC.Setup("High gear map coefficient", 1, &H7FC8, 1)
'Set up wordArraysblnErrors = blnErrors Or Not WA_KValue.Setup("KValue", 1, &H7F2B, 1)blnErrors = blnErrors Or Not WA_VQTable.Setup("VQTable", 64, &H7A70, 1)