RAM Size tool

This tool shows the size, address and overlay of the variables of a project per unit/module and procedure/function.

The software: RamSizes.zip


The tool is started up from within the mP/mC/mB IDE, one of the IDE "tools" is programmed (see section "How to make it work from within the IDE") to start up the tool and pass the currently selected project to it (which has to be "compiled" beforehand).

On startup, the list file of the project is loaded automatically and the tool shows this window:


The left hand pane shows the units (see also section "Details") in the project, the right hand pane shows the variables, together with their sizes, address, the unit/module they belong to, the procedure/function they belong to and if the variable is (partly) overlaid or not (100% means all bytes are used by at least one other variable too).
In the "Variable" pane the user can choose for ordering by name, by size (in this case the highest size is on top), by address, by unit/module name, by procedure/function name or by overlay.

If wanted, one can reload a new version of the listfile (after e.g. recompiling the project) by hitting "Reload"

How to make it work from within the IDE

All files present in the zipfile should be placed in the same directory.

To make the tool work from within the mP IDE the tool must be added in the "Tools" (Tools menu --> Options --> Tools --> Toolx) menu:


As you can see, the path to the tool must be given and one parameter: "%PROJECT_FILE_NAME". Do not forget to hit "Insert" after you have chosen the parameter.

IMPORTANT: Be sure that "Include Source Lines in the Output Files" is checked in menu Tools -> Options -> Output -> OutputSetting.