ProECU ROM Compare Tool
Introduction
As a response to requests from our tuners we have re-developed the ROM compare tool, the previous tool was a very simple compare between "exact match" CAL ID versions and RaceROM patch versions. The New ROM compare system can do the following.
- Compare any ROM to any other ROM regardless of CAL ID, RaceROM patch version or even vehicle type.
- You can view the maps side by side to see what the changes are or view the differences.
- Copy the differences from the two comparison ROMs in to a third target ROM.
- Allows you to specify what axis changes and resize methods are used when copying across.
You can find the MultiCompare tool in the file drop down in ProECU.
ROM Comparison Method
The ROM compare tool can compare two ROM files chosen by you and compares map names to identify similar maps it then outputs the number of maps with differences and the maps in each ROM that are not available in the other. It displays these in a list which can be outputted into a csv review in other programs. It also compares the axis and output on each ROM and you can display the differences in the Map compare tab values.
Using the MultiCompare
The Multicompare tool has three separate functions
- The ROM Compare
- The Map Compare
- The Map Copying
ROM Compare Tab
There are some general principles that you should use when using the new compare tool. To compare two ROMs using this tool, open ROM A and ROM B using the browse buttons (1 & 2) (drag and drop work as well). Then click "Compare A and B" (3) and wait a few seconds for the results as shown below.
Some ROMs have a lot of maps, so you can filter the results by category using the "Subset" (4) dropdown. You can also choose to display only the common maps (maps that exist in both ROM) or only the different maps (maps that exist in both ROMS and are different) (5).
If you click on a map, the "Differences" box (6) will show you the category and helptext for the map and will give a summary of the changes in a similar way to the old tool. Clicking on a map for a second time will take you to the map compare tab for a closer look at the differences. The summary data of all of the differences in the two ROMs is available in the lower corner of the tab. You can save the results to a CSV file for later analysis if you wish.
MAP Compare
The "Map A" list (1) is a complete list of all the maps in ROM A. The "Map B" list (2) is a complete list of all the maps in ROM B. The selected items in those lists control what is displayed in the “Maps” comparison section or "Map A" and "Map B" tabs.
As previously described, when comparing two ROMS, we match the maps by name, so "Fuel Map" in ROM A gets compared with "Fuel Map" in ROM B. But it doesn't have to be that way. If you uncheck "Synchronised Select" then you can compare any map in ROM A to any map in ROM B by selecting them individually in the "Map A" and "Map B" boxes. This will also be required when comparing maps with different names from in new patches (i.e. SD Volumetric efficiency & Speed Density Volumetric Efficiency).
It is also possible to compare two maps in the same ROM (for example low and high octane timing maps) by loading the same file into ROM A and ROM B. Obviously there are many maps which do not produce meaningful results if you compare them to each other.
The lower part of the "Map Compare" tab shows the two maps which are being compared and the differences. If the maps are too large for the window (more likely if you switch off auto window sizing) you can select which map you want to see using the "Map A", " Map B" and "Difference" tabs.
Multicompare is designed for use on a laptop screen so by default it displays the maps in separate tabs. However, if there is sufficient space on the screen then it will automatically display them in the same tab, either side by side or one above the other, to make visual comparison easier. If you prefer the tabbed mode, just turn off Auto Window Size, reduce the size of the window until it is too small to display both maps and then select the map again.​
When viewing the "Difference" tab, you can use the "Show Differences As" control to select whether to display it as an offset (adder), a multiplier, a percentage of the original, or a percentage difference. If the two maps have identical axes. you can check the "Show Axis in Difference Tab" box which will show the actual axis values rather than comparing them and showing the difference between them. This will help to cross-reference the changed cells in the maps. Note. If the axes are the same check the "Show axis in Difference Tab" box (1) to a real axis rather than show zeroes.
​Right-clicking on a map allows you to copy all or part of the map to the clipboard (2) for pasting into a ProECU map editor window. It is also possible to flip one or both of the maps before comparing them, which might be useful if one of the maps you are looking at is in the wrong orientation. The "Previous Different Map" and "Next Different Map" (3) move up or down the difference list without the user needing to return to the "ROM Compare" tab to do it.
There is also a graphical display mode to plot both maps and more easily see the differences between the them side by side.
Keeping your map analysis and copying meaningful
Doing a cell-by-cell comparison of the maps is not always meaningful if the axes have different values or maps are different sizes. To give a better result it's important to understand how the different display and compare option work otherwise you can get some very odd results.
To Illustrate this compare a 370Z fuel map to a GTR fuel map. The 370Z fuel map is 8x8, the RPM scale is from 2800 to 7200 and the Load Scale is from 20.3 to 130. The GTR map is 16x16, the RPM goes from 800 to 6800 and the Load from 7.42 to 82.4. The differences shown are not particularly useful.
To counteract this we can "Rescale map A to Axis B". This is better. Now the axes are the same and the cells positions directly correspond to each other so the difference tab shows some useful data.
It is even possible to rescale a 2D map into a 3D map, or vice-versa. For example you can compare the 3D "Desired Boost" map on a JW92A GTR with the 2D "Desired Boost 3rd Gear" map on a KJ10A GTR. You can copy a resized or rescaled map from one ROM to another by clicking the "Select For Copy" button. The map will appear on the Maps to Copy list on the "Map Copying" tab.
Map Copy
The "Map Copy" tab contains a list of maps to copy. It shows maps which are common to both ROMs, and have different data. It also shows any maps which have been selected using the "Select For Copy" button on the "Map Compare" tab different colours indicated different copy/scaling methods.
You select which maps you wish to copy using the checkbox on the left of each map pair. There is a "Select All" button if you want to copy all of them.
You can also select a range of boxes by checking the first box of the range and then holding the SHIFT key and checking the last box of the range.
Having selected the maps to copy, you click "Copy A to B" or "Copy B to A" exactly like in the old Rom Compare tool and then "Save B" or "Save A" to save the appropriate ROM with changes to disk (3). You can save into a different filename if you wish.
If the maps you are copying are different sizes then the tool will resize or rescale them according to the "Default Copy Mode” as described in the previously.
Applying your changes to a third ROM
This feature is useful if you have created a calibration for one CALID and you need to make the same changes to another CALID. It can also be used when a new RaceROM version has been released and you want to migrate your changes to it.
Simply load a stock ROM as ROM A and compare it to your tuned ROM as ROM B. Open a stock ROM of the new CALID as ROM C. Then select all the differences and click "Copy B to C". The maps in ROM B, which have been changed from ROM A, will be copied to ROM C. Then save the modified ROM C as your new calibration. A worked example of a RaceROM update is here.
Limitations
The tool only copies data between maps. You cannot create or remove maps in the destination ROM, nor can you resize them. For example, you cannot use the tool to "add" a launch control map to ROM that doesn't have a launch control map.
The tool does not allow you to manually edit the maps.
Video Guide