extended rom support

git-svn-id: http://svn.3splooges.com/romraider-arch/trunk@793 d2e2e1cd-ba16-0410-be16-b7c4453c7c2d
This commit is contained in:
kascade 2007-10-19 11:20:05 +00:00
parent c05228678c
commit 074309a016
5 changed files with 1091 additions and 22 deletions

View File

@ -0,0 +1,733 @@
<rom>
<romid>
<xmlid>88580013</xmlid>
<internalidaddress>f52</internalidaddress>
<internalidhex>88580013</internalidhex>
<make>Mitsubishi</make>
<market>AUSDM</market>
<model>Lancer</model>
<submodel>Evolution IX</submodel>
<transmission>6MT</transmission>
<year>2005</year>
<flashmethod>mitsukernelocp</flashmethod>
<memmodel>SH7055</memmodel>
</romid>
<include>evo9base</include>
<!--
*****************************************************************************
CUSTOM SCALINGS
*****************************************************************************
-->
<scaling name="leanspoolrpm" units="RPM" toexpr="x*31.25" frexpr="x/31.25" format="%.0f" min="0" max="11000" inc="1" storagetype="uint8" endian="big"/>
<!--
*****************************************************************************
AIR
*****************************************************************************
-->
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Barometric Pressure Compensation" address="2d51" category="Air">
<table name="Atmosphere Pressure" address="6E9A"/>
<table name="RPM" address="6EE0"/>
</table>
<!--
Data : OK
Y-Axis : OK
-->
<table name="Air Temperature Compensation" address="2d3e" category="Air">
<table name="Degrees" address="7178"/>
</table>
<!--
Data : OK
-->
<table name="MAF Sensor Filtering" address="1108" category="Air">
<table name="Load"/>
</table>
<!--
Data : OK
-->
<table name="MAF Size" address="110C" category="Air"/>
<!--
Data : OK
Y-Axis : OK
-->
<table name="MAF Smoothing Table" address="2d22" category="Air">
<table name="Load" address="6EAC"/>
</table>
<!--
Data : OK
Y-Axis : OK
-->
<table name="MAF Scaling" address="2d06" category="Air">
<table name="Load" address="6EAC"/>
</table>
<!--
*****************************************************************************
FUEL
*****************************************************************************
-->
<!--
Data : OK
Y-Axis : OK
-->
<table name="Open Loop Throttle High Load" address="30A8">
<table name="RPM" address="6CA0" elements="16"/>
</table>
<!--
Data : OK
Y-Axis : OK
-->
<table name="Open Loop Throttle Low Load" address="3092">
<table name="RPM" address="6CA0" elements="16"/>
</table>
<!--
Data : OK
Y-Axis : OK
-->
<table name="Open Loop Load # 1" address="3060">
<table name="RPM" address="6CA0" elements="16"/>
</table>
<!--
Data : OK
Y-Axis : OK
-->
<table name="Open Loop Load # 2" address="3076">
<table name="RPM" address="6CA0" elements="16"/>
</table>
<!--
Data : OK
-->
<table name="Injector size scaling" address="1106" scaling="InjectorScaling"/>
<!--
Data : OK
Y-Axis : OK
-->
<table name="Accel Enrichment" address="3278">
<table name="RPM" address="6D2E" />
</table>
<!--
Data : OK
Y-Axis : OK
-->
<table name="Injector Battery Voltage Latency Compensation" address="31d4">
<table name="Battery Voltage" address="6EFC" elements="7"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="High Octane Fuel Map" address="2DBD">
<table name="Engine Load" address="6FD0" />
<table name="RPM" address="6FA8" />
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Low Octane Fuel Map" address="2EF5">
<table name="Engine Load" address="6FD0" />
<table name="RPM" address="6FA8" />
</table>
<!--
*****************************************************************************
TIMING
*****************************************************************************
-->
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Knock Sensor Filter Map 1" address="433D">
<table name="TAR" address="745E"/>
<table name="RPM" address="741E"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Knock Sensor Filter Map 2" address="43F9">
<table name="TAR" address="745E"/>
<table name="RPM" address="741E"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Knock Sensor Filter Map 3" address="44B5">
<table name="TAR" address="745E"/>
<table name="RPM" address="741E"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Knock Sensor Filter Map 4" address="4571">
<table name="TAR" address="745E"/>
<table name="RPM" address="741E"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Knock Sensor Filter Map 5" address="462D">
<table name="TAR" address="745E"/>
<table name="RPM" address="741E"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Knock Sensor Filter Map 6" address="4281">
<table name="TAR" address="745E"/>
<table name="RPM" address="741E"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Knock Sensor Filter Map 7" address="4937">
<table name="TAR" address="745E"/>
<table name="RPM" address="741E"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Knock Sensor Filter Map 8" address="49F3">
<table name="TAR" address="745E"/>
<table name="RPM" address="741E"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Knock Sensor Filter Map 9" address="4AAF">
<table name="TAR" address="745E"/>
<table name="RPM" address="741E"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Knock Sensor Filter Map 10" address="4B6B">
<table name="TAR" address="745E"/>
<table name="RPM" address="741E"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Knock Sensor Filter Map 11" address="4C27">
<table name="TAR" address="745E"/>
<table name="RPM" address="741E"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Knock Sensor Filter Map 12" address="4CE3">
<table name="TAR" address="745E"/>
<table name="RPM" address="741E"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="VVT Map 1 (Main)" address="69DF">
<table name="Engine Load" address="7B2A"/>
<table name="RPM" address="7B5C"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="VVT Map 2 (Not Used) Future Use" address="52F9">
<table name="Engine Load" address="7B2A"/>
<table name="RPM" address="7B5C"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="High Octane Ignition Map 1" address="33E9">
<table name="Engine Load" address="7034" elements="21"/>
<table name="RPM" address="7002" elements="20"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Low Octane Ignition Map 1" address="3599">
<table name="Engine Load" address="7034" elements="21"/>
<table name="RPM" address="7002" elements="20"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="High Octane Ignition Map 2" address="54B1">
<table name="Engine Load" address="7034" elements="21"/>
<table name="RPM" address="7002" elements="20"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Low Octane Ignition Map 2" address="5661">
<table name="Engine Load" address="7034" elements="21"/>
<table name="RPM" address="7002" elements="20"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="High Octane Ignition Map 3" address="59C1">
<table name="Engine Load" address="7034" elements="21"/>
<table name="RPM" address="7002" elements="20"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Low Octane Ignition Map 3" address="5B71">
<table name="Engine Load" address="7034" elements="21"/>
<table name="RPM" address="7002" elements="20"/>
</table>
<!--
*****************************************************************************
LIMITS
*****************************************************************************
-->
<!--
Data : OK
-->
<table name="Speed Limit" address="118E">
<table name="Condition"/>
</table>
<!--
Data : OK
-->
<table name="Stationary Rev Limit" address="274A" />
<!--
Data : OK
-->
<table name="Rev Limit" address="118C" />
<!--
*****************************************************************************
TURBO
*****************************************************************************
-->
<!--
Data : OK
-->
<table name="Boost Enhancement (Anti-lag) Stop RPM" address="1282"/>
<!--
Data : OK
-->
<table name="Boost Enhancement (Anti-Lag) Start RPM" address="1280"/>
<!--
Data : OK
-->
<table name="Boost Control Limiting Vehicle Speed" address="1E04">
<table name="Condition"/>
</table>
<!--
Data : OK
-->
<table name="Min Temp for Full Boost Control" address="1E00"/>
<!--
Data : OK
Y-Axis : OK
-->
<table name="Boost Limit" address="3050">
<table name="RPM" address="77AE" elements="9"/>
</table>
<!--
Data : OK
-->
<table name="Wastegate Solenoid De-activation RPM-Re-activate" address="166e"/>
<!--
Data : OK
-->
<table name="Wastegate Solenoid De-activation RPM-De-activate" address="166c"/>
<!--
Data : OK
-->
<table name="Wastegate Solenoid Activation RPM-De-activate" address="166a"/>
<!--
Data : OK
-->
<table name="Wastegate Solenoid Activation RPM-Active" address="1668"/>
<!--
Data : OK
Y-Axis : OK
-->
<table name="Max Wastegate Duty # 1" address="3F5C">
<table name="RPM" address="7336" elements="16" scaling="RPM" />
</table>
<!--
Data : OK
Y-Axis : OK
-->
<table name="Max Wastegate Duty # 2" address="3F72">
<table name="RPM" address="7336" elements="16" scaling="RPM" />
</table>
<!--
Data : OK
Y-Axis : OK
-->
<table name="Max Wastegate Duty # 3" address="3F8E">
<table name="RPM" address="7336" elements="16" scaling="RPM" />
</table>
<!--
Data : OK
Y-Axis : OK
-->
<table name="Boost Desired Engine Load # 1" address="3FA4">
<table name="RPM" address="7336" elements="16" scaling="RPM" />
</table>
<!--
Data : OK
Y-Axis : OK
-->
<table name="Boost Desired Engine Load # 2" address="3FBA">
<table name="RPM" address="7336" elements="16" scaling="RPM"/>
</table>
<!--
Data : OK
Y-Axis : OK
-->
<table name="Boost Desired Engine Load # 3" address="3FD6">
<table name="RPM" address="7336" elements="16" scaling="RPM" />
</table>
<!--
Data : OK
Y-Axis : OK
-->
<table name="Turbo Boost Error Correction" address="3F44">
<table name="Boost Error" address="7360" />
</table>
<!--
Data : OK
-->
<table name="Boost Control Load Offset" address="1670"/>
<!--
Data : OK
-->
<table name="Boost Delay Timer" address="119A" scaling="Time"/>
<!--
*****************************************************************************
MISC
*****************************************************************************
-->
<!--
Data : OK
NB : Need to verify that this is an actual map.
-->
<table name="Lean Spool Enable RPM" address="1281" type="1D" level="1" scaling="leanspoolrpm"/>
<!--
Data : OK
NB : Need to verify that this is an actual map.
-->
<table name="Lean Spool Disable RPM" address="1285" type="1D" level="1" scaling="leanspoolrpm"/>
<!--
*****************************************************************************
IDLE
*****************************************************************************
-->
<!-- +108 offset -->
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Idle Stepper Lookup Table" address="3E55">
<table name="Throttle Postion" address="726C" scaling="uint16"/>
<table name="RPM" address="7286" scaling="RPM"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Desired ISCV intial step position with AC off-Neutral" address="3D48">
<table name="Engine Temp" address="71CA" elements="8"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Desired ISCV intial step position with AC off-Drive" address="3D5C">
<table name="Engine Temp" address="71CA" elements="8"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Desired ISCV intial step position with AC on-Neutral" address="3D70">
<table name="Engine Temp" address="71CA" elements="8"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Desired Idle RPM-Neutral" address="3D84">
<table name="Engine Temp" address="71CA" elements="8"/>
</table>
<!--
Data : OK
X-Axis : OK
Y-Axis : OK
-->
<table name="Desired Idle RPM-Drive" address="3DA6">
<table name="Engine Temp" address="71CA" elements="8"/>
</table>
<!--
*****************************************************************************
INTERCOOLER
*****************************************************************************
-->
<!--
Data : OK
-->
<table name="IC Relay Timer ON Mode Switch Time" address="207E" category="Intercooler"/>
<!--
Data : OK
-->
<table name="IC Relay Timer Control RPM" address="2080" scaling="RPMStatLimit" category="Intercooler"/>
<!--
Data : OK
-->
<table name="IC Relay Timer Control Water Temp Hi" address="2082" category="Intercooler"/>
<!--
Data : OK
-->
<table name="IC Relay Timer Control Water Temp Lo" address="2084" category="Intercooler"/>
<!--
Data : OK
-->
<table name="IC Relay Control Vehicle Speed" address="2086" category="Intercooler"/>
<!--
Data : OK
-->
<table name="IC Relay Control EV" address="207C" category="Intercooler"/>
<!--
Data : OK
-->
<table name="IC Relay Timer On Time" address="208A" category="Intercooler"/>
<!--
Data : OK
-->
<table name="IC Relay Timer Off Time" address="208C" category="Intercooler"/>
<!--
Data : OK
-->
<table name="IC Relay Timer Control Judgement Hi" address="2098" category="Intercooler"/>
<!--
Data : OK
-->
<table name="IC Relay Timer Control Judgement Lo" address="209A" category="Intercooler"/>
<!--
Data : OK
-->
<table name="IC Relay Timer Air Temp" address="209C" category="Intercooler"/>
</rom>

View File

@ -38,6 +38,16 @@
<description>Turbo Boost Error Correction</description>
</table>
<table type="2D" name="Air Temperature Compensation" category="Fuel" flipy="true" storagetype="uint8"
endian="big" sizey="8" userlevel="3">
<scaling units="units" expression="x" to_byte="x" format="0.00" fineincrement="1" coarseincrement="5"/>
<table type="Y Axis" name="Temp" storagetype="uint16" endian="big">
<scaling units="C" expression="x-40" to_byte="x+40" format="0.00" fineincrement="1"
coarseincrement="5"/>
</table>
<description>Air Temperature Compensation</description>
</table>
</rom>
<rom base="evo9base">
@ -57,5 +67,9 @@
<table name="Turbo Boost Error Correction" storageaddress="0x3F44">
<table type="Y Axis" storageaddress="0x7360"/>
</table>
<table name="Air Temperature Compensation" storageaddress="0x2D3E">
<table type="Y Axis" storageaddress="0x7178"/>
</table>
</rom>
</roms>

View File

@ -0,0 +1,329 @@
<rom>
<romid>
<xmlid>evo9base</xmlid>
<internalidaddress>f52</internalidaddress>
<internalidstring>----</internalidstring>
<flashmethod>mitsukernelocp</flashmethod>
<memmodel>SH7055</memmodel>
</romid>
<scaling name="AFR" units="AFR" toexpr="14.7*128/x" frexpr="14.7*128/x" format="%.1f" min="8" max="20" inc="0.1" storagetype="uint8" endian="big"/>
<scaling name="AirFlow16" units="g/s" toexpr="x*600/65536" frexpr="x*65536/600" format="%.1f" min="0" max="600" inc="1" storagetype="uint16" endian="big"/>
<scaling name="AirFlow8" units="g/s" toexpr="x*321/256" frexpr="x*256/321" format="%.1f" min="0" max="321" inc="1" storagetype="uint8" endian="big"/>
<scaling name="BatteryVoltage" units="V" toexpr="x*75/1024" frexpr="x*1024/75" format="%.2f" min="0" max="18.75" inc="0.5" storagetype="uint16" endian="big"/>
<scaling name="BoostBar" units="bar" toexpr="x/93.7" frexpr="x*93.7" format="%.2f" min="0" max="2.7" inc="0.05" storagetype="uint8" endian="big"/>
<scaling name="BoostBar16" units="bar" toexpr="x/1372.2" frexpr="x*1372.2" format="%.2f" min="0" max="2.7" inc="0.05" storagetype="uint16" endian="big"/>
<scaling name="BoostError" units="%" toexpr="x*5/32-20" frexpr="(x+20)*32/5" format="%.1f" min="-20" max="20" inc="0.5" storagetype="uint16" endian="big"/>
<scaling name="DynamicBoost" units="%" toexpr="(x-128)/2" frexpr="x*2+128" format="%.1f" min="-64" max="63.5" inc="0.5" storagetype="uint8" endian="big"/>
<scaling name="EnrichmentAdj" units="%" toexpr="x/128" frexpr="x*128" format="%.2f" min="0" max="2" inc="0.05" storagetype="uint8" endian="big"/>
<scaling name="Hex16" units="hex" toexpr="x" frexpr="x" format="%04X" min="0" max="65535" inc="1" storagetype="uint16" endian="big"/>
<scaling name="Hex8" units="hex" toexpr="x" frexpr="x" format="%02X" min="0" max="255" inc="1" storagetype="uint8" endian="big"/>
<scaling name="ISCVSteps" units="Steps" toexpr="x" frexpr="x" format="%.0f" min="0" max="255" inc="1" storagetype="uint8" endian="big"/>
<scaling name="ISCVSteps16" units="Steps" toexpr="x" frexpr="x" format="%.0f" min="0" max="255" inc="1" storagetype="uint16" endian="big"/>
<scaling name="InjectorLatency" units="ms" toexpr="x*0.024" frexpr="x/0.024" format="%.3f" min="0" max="4" inc="1" storagetype="uint8" endian="big"/>
<scaling name="InjectorScaling" units="cc/min" toexpr="29241/x" frexpr="29241/x" format="%.0f" min="1" max="1000" inc="10" storagetype="uint16" endian="big"/>
<scaling name="Load" units="%" toexpr="x*10/32" frexpr="x*32/10" format="%.0f" min="0" max="300" inc="1" storagetype="uint16" endian="big"/>
<scaling name="Load16" units="units" toexpr="x*5/8" frexpr="x*8/5" format="%.1f" min="0" max="100" inc="1" storagetype="uint16" endian="big"/>
<scaling name="Load8" units="%" toexpr="x*5/8" frexpr="x*8/5" format="%.1f" min="0" max="160" inc="1" storagetype="uint8" endian="big"/>
<scaling name="LoadBoost" units="%" toexpr="x*5/4" frexpr="x*4/5" format="%.0f" min="0" max="319" inc="1" storagetype="uint8" endian="big"/>
<scaling name="MAFsize" units="units" toexpr="39044/x" frexpr="39044/x" format="%.0f" min="1000" max="5000" inc="1" storagetype="int16" endian="big"/>
<scaling name="RPM" units="RPM" toexpr="x*1000/256" frexpr="x*256/1000" format="%.0f" min="0" max="11000" inc="50" storagetype="uint16" endian="big"/>
<scaling name="RPM8" units="RPM" toexpr="x*125/16" frexpr="x*16/125" format="%.0f" min="0" max="2000" inc="50" storagetype="uint8" endian="big"/>
<scaling name="RPMLimit" units="RPM" toexpr="7500000/x" frexpr="7500000/x" format="%.0f" min="0" max="9000" inc="60" storagetype="uint16" endian="big"/>
<scaling name="RPMStatLimit" units="units" toexpr="x*31.25" frexpr="x/31.25" format="%.0f" min="0" max="9000" inc="31.25" storagetype="uint16" endian="big"/>
<scaling name="RPMTarget" units="RPM" toexpr="x*125/16" frexpr="x*16/125" format="%.0f" min="0" max="2000" inc="50" storagetype="uint16" endian="big"/>
<scaling name="Temp" units="Celsius" toexpr="x-40" frexpr="x+40" format="%.0f" min="-40" max="215" inc="1" storagetype="uint16" endian="big"/>
<scaling name="ThrottleVoltage" units="V" toexpr="x*5/256" frexpr="x*256/5" format="%.2f" min="0" max="5" inc="0.05" storagetype="uint8" endian="big"/>
<scaling name="Time" units="ms" toexpr="x*25" frexpr="x/25" format="%.0f" min="0" max="1.63838e+06" inc="25" storagetype="uint16" endian="big"/>
<scaling name="TimeSec" units="s" toexpr="x/10" frexpr="x*10" format="%.1f" min="0" max="25.5" inc="0.1" storagetype="uint16" endian="big"/>
<scaling name="Timing" units="degrees" toexpr="x" frexpr="x" format="%.0f" min="-61" max="61" inc="1" storagetype="int8" endian="big"/>
<scaling name="ValveTiming" units="degrees" toexpr="72-x*0.6" frexpr="(72-x)/0.6" format="%.1f" min="0" max="30" inc="0.6" storagetype="uint8" endian="big"/>
<scaling name="VehicleSpeed" units="km/h" toexpr="x*2" frexpr="x/2" format="%.0f" min="0" max="510" inc="1" storagetype="uint16" endian="big"/>
<scaling name="VehicleSpeed8" units="units" toexpr="x*2" frexpr="x/2" format="%.0f" min="0" max="510" inc="1" storagetype="uint8" endian="big"/>
<scaling name="Volts16" units="Volts" toexpr="x*5/256" frexpr="x*256/5" format="%.2f" min="0" max="5" inc="0.05" storagetype="uint16" endian="big"/>
<scaling name="WGDuty" units="%" toexpr="x/2" frexpr="x*2" format="%.1f" min="0" max="100" inc="0.5" storagetype="uint8" endian="big"/>
<scaling name="uint16" units="units" toexpr="x" frexpr="x" format="%.0f" min="0" max="65535" inc="1" storagetype="uint16" endian="big"/>
<scaling name="uint8" units="units" toexpr="x" frexpr="x" format="%.0f" min="0" max="255" inc="1" storagetype="uint8" endian="big"/>
<table name="High Octane Fuel Map" category="Fuel" type="3D" swapxy="true" scaling="AFR">
<table name="Engine Load" type="X Axis" elements="20" scaling="Load"/>
<table name="RPM" type="Y Axis" elements="15" scaling="RPM"/>
</table>
<table name="Low Octane Fuel Map" category="Fuel" type="3D" swapxy="true" scaling="AFR">
<table name="Engine Load" type="X Axis" elements="20" scaling="Load"/>
<table name="RPM" type="Y Axis" elements="15" scaling="RPM"/>
</table>
<table name="High Octane Ignition Map 1" category="Timing" type="3D" swapxy="true" scaling="Timing">
<table name="Engine Load" type="X Axis" elements="21" scaling="Load"/>
<table name="RPM" type="Y Axis" elements="20" scaling="RPM"/>
</table>
<table name="Low Octane Ignition Map 1" category="Timing" type="3D" swapxy="true" scaling="Timing">
<table name="Engine Load" type="X Axis" scaling="Load"/>
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="High Octane Ignition Map 2" category="Timing" type="3D" swapxy="true" scaling="Timing">
<table name="Engine Load" type="X Axis" scaling="Load"/>
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="Low Octane Ignition Map 2" category="Timing" type="3D" swapxy="true" scaling="Timing">
<table name="Engine Load" type="X Axis" scaling="Load"/>
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="High Octane Ignition Map 3" category="Timing" type="3D" swapxy="true" scaling="Timing">
<table name="Engine Load" type="X Axis" scaling="Load"/>
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="Low Octane Ignition Map 3" category="Timing" type="3D" swapxy="true" scaling="Timing">
<table name="Engine Load" type="X Axis" scaling="Load"/>
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="VVT Map 1 (Main)" category="Timing" type="3D" swapxy="true" scaling="ValveTiming">
<table name="Engine Load" type="X Axis" elements="20" scaling="Load"/>
<table name="RPM" type="Y Axis" elements="16" scaling="RPM"/>
</table>
<table name="VVT Map 2 (Not Used) Future Use" category="Timing" type="3D" swapxy="true" scaling="ValveTiming">
<table name="Engine Load" type="X Axis" elements="20" scaling="Load"/>
<table name="RPM" type="Y Axis" elements="16" scaling="RPM"/>
</table>
<table name="Injector Battery Voltage Latency Compensation" category="Fuel" type="2D" scaling="InjectorLatency">
<table name="Battery Voltage" type="Y Axis" elements="7" scaling="BatteryVoltage"/>
</table>
<table name="Accel Enrichment" category="Fuel" type="2D" scaling="EnrichmentAdj">
<table name="RPM" address="59fa" type="Y Axis" elements="15" scaling="RPM"/>
</table>
<table name="Rev Limit" category="Limits" type="1D" scaling="RPMLimit"/>
<table name="Stationary Rev Limit" category="Limits" type="1D" scaling="RPMStatLimit"/>
<table name="Boost Delay Timer" category="Turbo" type="1D" scaling="Time"/>
<table name="Injector size scaling" category="Fuel" type="1D" scaling="InjectorScaling"/>
<table name="Boost Control Load Offset" category="Turbo" type="1D" scaling="Load16"/>
<table name="Boost Enhancement (Anti-Lag) Start RPM" category="Turbo" type="1D" scaling="RPMStatLimit"/>
<table name="Turbo Boost Error Correction" category="Turbo" type="2D" scaling="DynamicBoost">
<table name="Boost Error" type="Y Axis" elements="17" scaling="BoostError"/>
</table>
<table name="Boost Desired Engine Load # 1" category="Turbo" type="2D" scaling="Load8">
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="Boost Desired Engine Load # 2" category="Turbo" type="2D" scaling="Load8">
<table name="RPM" type="Y Axis"/>
</table>
<table name="Boost Desired Engine Load # 3" category="Turbo" type="2D" scaling="Load8">
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="Max Wastegate Duty # 1" category="Turbo" type="2D" scaling="WGDuty">
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="Max Wastegate Duty # 2" category="Turbo" type="2D" scaling="WGDuty">
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="Max Wastegate Duty # 3" category="Turbo" type="2D" scaling="WGDuty">
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="Wastegate Solenoid Activation RPM-Active" category="Turbo" type="1D" scaling="RPM"/>
<table name="Wastegate Solenoid Activation RPM-De-activate" category="Turbo" type="1D"/>
<table name="Wastegate Solenoid De-activation RPM-De-activate" category="Turbo" type="1D"/>
<table name="Wastegate Solenoid De-activation RPM-Re-activate" category="Turbo" type="1D"/>
<table name="Open Loop Load # 1" category="Fuel" type="2D" scaling="Load8">
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="Open Loop Load # 2" category="Fuel" type="2D" scaling="Load8">
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="Open Loop Throttle Low Load" category="Fuel" type="2D" scaling="Load8">
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="Open Loop Throttle High Load" category="Fuel" type="2D" scaling="Load8">
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="IC Relay Timer ON Mode Switch Time" category="Misc" type="1D" scaling="TimeSec"/>
<table name="IC Relay Timer Control RPM" category="Misc" type="1D"/>
<table name="IC Relay Timer Control Water Temp Hi" category="Misc" type="1D" scaling="Temp"/>
<table name="IC Relay Timer Control Water Temp Lo" category="Misc" type="1D" scaling="Temp"/>
<table name="IC Relay Control Vehicle Speed" category="Misc" type="1D" scaling="VehicleSpeed"/>
<table name="IC Relay Control EV" category="Misc" type="1D" scaling="Load"/>
<table name="IC Relay Timer On Time" category="Misc" type="1D" scaling="TimeSec"/>
<table name="IC Relay Timer Off Time" category="Misc" type="1D" scaling="TimeSec"/>
<table name="IC Relay Timer Control Judgement Hi" category="Misc" type="1D" scaling="Volts16"/>
<table name="IC Relay Timer Control Judgement Lo" category="Misc" type="1D" scaling="Volts16"/>
<table name="IC Relay Timer Air Temp" category="Misc" type="1D" scaling="Temp"/>
<table name="Desired ISCV intial step position with AC off-Neutral" category="Idle" type="2D" scaling="ISCVSteps">
<table name="Engine Temp" type="Y Axis" scaling="Temp"/>
</table>
<table name="Desired ISCV intial step position with AC off-Drive" category="Idle" type="2D" scaling="ISCVSteps">
<table name="Engine Temp" type="Y Axis" scaling="Temp"/>
</table>
<table name="Desired ISCV intial step position with AC on-Neutral" category="Idle" type="2D" scaling="ISCVSteps">
<table name="Engine Temp" type="Y Axis" scaling="Temp"/>
</table>
<table name="Desired Idle RPM-Neutral" category="Idle" type="2D" scaling="RPM8">
<table name="Engine Temp" type="Y Axis" scaling="Temp"/>
</table>
<table name="Desired Idle RPM-Drive" category="Idle" type="2D" flipy="true" scaling="RPM8">
<table name="Engine Temp" type="Y Axis" scaling="Temp"/>
</table>
<table name="Boost Limit" category="Turbo" type="2D" scaling="LoadBoost">
<table name="RPM" type="Y Axis" scaling="RPM"/>
</table>
<table name="Idle Stepper Lookup Table" category="Idle" type="3D" scaling="ISCVSteps">
<table name="Throttle Postion" type="X Axis" elements="8" scaling="uint16"/>
<table name="RPM" type="Y Axis" elements="27" scaling="RPM"/>
</table>
<table name="Immobilizer" category="Misc" address="3ffce" type="1D" level="3" scaling="Hex16"/>
<table name="Init Code" category="Misc" address="3ffcc" type="1D" level="1" scaling="Hex16"/>
<table name="MAF Scaling" category="Fuel" type="2D" level="3" scaling="uint8">
<table name="Load" type="Y Axis" elements="21" scaling="uint16"/>
</table>
<table name="MAF Smoothing Table" category="Fuel" type="2D" level="3" scaling="uint8">
<table name="Load" type="Y Axis" elements="21" scaling="uint16"/>
</table>
<table name="Air Temperature Compensation" category="Fuel" type="2D" level="3" flipy="true" scaling="uint8">
<table name="Degrees" type="Y Axis" elements="8" scaling="Temp"/>
</table>
<table name="Barometric Pressure Compensation" category="Fuel" type="3D" level="3" swapxy="true" scaling="BoostBar">
<table name="Atmosphere Pressure" type="X Axis" elements="4" scaling="Load16"/>
<table name="RPM" type="Y Axis" elements="9" scaling="RPM"/>
</table>
<table name="Knock Sensor Filter Map 1" category="Timing" type="3D" level="4" swapxy="true" scaling="uint8">
<table name="TAR" type="X Axis" elements="16" scaling="Load16"/>
<table name="RPM" type="Y Axis" elements="11" scaling="RPM"/>
</table>
<table name="Knock Sensor Filter Map 2" category="Timing" type="3D" level="1" swapxy="true" scaling="uint8">
<table name="TAR" type="X Axis" elements="16" scaling="Load16"/>
<table name="RPM" type="Y Axis" elements="11" scaling="RPM"/>
</table>
<table name="Knock Sensor Filter Map 3" category="Timing" type="3D" level="1" swapxy="true" scaling="uint8">
<table name="TAR" type="X Axis" elements="16" scaling="Load16"/>
<table name="RPM" type="Y Axis" elements="11" scaling="RPM"/>
</table>
<table name="Knock Sensor Filter Map 4" category="Timing" type="3D" level="1" swapxy="true" scaling="uint8">
<table name="TAR" type="X Axis" elements="16" scaling="Load16"/>
<table name="RPM" type="Y Axis" elements="11" scaling="RPM"/>
</table>
<table name="Knock Sensor Filter Map 5" category="Timing" type="3D" level="1" swapxy="true" scaling="uint8">
<table name="TAR" type="X Axis" elements="16" scaling="Load16"/>
<table name="RPM" type="Y Axis" elements="11" scaling="RPM"/>
</table>
<table name="Knock Sensor Filter Map 6" category="Timing" type="3D" level="1" swapxy="true" scaling="uint8">
<table name="TAR" type="X Axis" elements="16" scaling="Load16"/>
<table name="RPM" type="Y Axis" elements="11" scaling="RPM"/>
</table>
<table name="Knock Sensor Filter Map 7" category="Timing" type="3D" level="1" swapxy="true" scaling="uint8">
<table name="TAR" type="X Axis" elements="16" scaling="Load16"/>
<table name="RPM" type="Y Axis" elements="11" scaling="RPM"/>
</table>
<table name="Knock Sensor Filter Map 8" category="Timing" type="3D" level="1" swapxy="true" scaling="uint8">
<table name="TAR" type="X Axis" elements="12" scaling="Load16"/>
<table name="RPM" type="Y Axis" elements="11" scaling="RPM"/>
</table>
<table name="Knock Sensor Filter Map 9" category="Timing" type="3D" level="1" swapxy="true" scaling="uint8">
<table name="TAR" type="X Axis" elements="16" scaling="Load16"/>
<table name="RPM" type="Y Axis" elements="11" scaling="RPM"/>
</table>
<table name="Knock Sensor Filter Map 10" category="Timing" type="3D" level="1" swapxy="true" scaling="uint8">
<table name="TAR" type="X Axis" elements="16" scaling="Load16"/>
<table name="RPM" type="Y Axis" elements="11" scaling="RPM"/>
</table>
<table name="Knock Sensor Filter Map 11" category="Timing" type="3D" level="1" swapxy="true" scaling="uint8">
<table name="TAR" type="X Axis" elements="16" scaling="Load16"/>
<table name="RPM" type="Y Axis" elements="11" scaling="RPM"/>
</table>
<table name="Knock Sensor Filter Map 12" category="Timing" type="3D" level="1" swapxy="true" scaling="Timing">
<table name="TAR" type="X Axis" elements="16" scaling="Load16"/>
<table name="RPM" type="Y Axis" elements="11" scaling="RPM"/>
</table>
<table name="MAF Sensor Filtering" category="Fuel" type="2D" level="3" scaling="uint16">
<table name="Load" type="Static Y Axis" elements="2">
<data>Hi</data>
<data>Lo</data>
</table>
</table>
<table name="MAF Size" category="Fuel" type="1D" level="3" scaling="AirFlow16"/>
<table name="Min Temp for Full Boost Control" category="Turbo" type="1D" level="3" scaling="Temp"/>
<table name="Boost Control Limiting Vehicle Speed" category="Turbo" type="2D" level="3" scaling="VehicleSpeed8">
<table name="Condition" type="Static Y Axis" elements="2">
<data>On</data>
<data>Off</data>
</table>
</table>
<table name="Boost Enhancement (Anti-lag) Stop RPM" category="Turbo" type="1D" level="3" scaling="RPMStatLimit"/>
<table name="Speed Limit" category="Limits" type="2D" scaling="VehicleSpeed">
<table name="Condition" type="Static Y Axis" elements="2">
<data>On</data>
<data>Off</data>
</table>
</table>
</rom>

View File

@ -27,20 +27,9 @@ import static enginuity.util.ColorScaler.getScaledColor;
import enginuity.util.JEPUtil;
import enginuity.xml.RomAttributeParser;
import javax.swing.AbstractAction;
import javax.swing.Action;
import javax.swing.*;
import static javax.swing.BorderFactory.createLineBorder;
import javax.swing.InputMap;
import javax.swing.JCheckBox;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.KeyStroke;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.Toolkit;
import java.awt.*;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.UnsupportedFlavorException;
@ -490,8 +479,8 @@ public abstract class Table extends JPanel implements Serializable {
return flip;
}
public void setFlip(boolean flipY) {
this.flip = flipY;
public void setFlip(boolean flip) {
this.flip = flip;
}
public void setLogParam(String logParam) {

View File

@ -27,11 +27,8 @@ import enginuity.util.AxisRange;
import static enginuity.util.ParamChecker.isNullOrEmpty;
import static enginuity.util.TableAxisUtil.getLiveDataRangeForAxis;
import javax.swing.JLabel;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Toolkit;
import javax.swing.*;
import java.awt.*;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.UnsupportedFlavorException;
@ -106,9 +103,16 @@ public class Table2D extends Table {
for (int i = 0; i < this.getDataSize(); i++) {
centerPanel.add(axis.getDataCell(i));
}
for (int i = 0; i < this.getDataSize(); i++) {
centerPanel.add(this.getDataCell(i));
if (flip) {
for (int i = this.getDataSize() - 1; i >= 0; i--) {
centerPanel.add(this.getDataCell(i));
}
} else {
for (int i = 0; i < this.getDataSize(); i++) {
centerPanel.add(this.getDataCell(i));
}
}
add(new JLabel(axis.getName() + " (" + axis.getScale().getUnit() + ")", JLabel.CENTER), BorderLayout.NORTH);
if (axis.isStatic()) {