CPS 16 build 828 on Windows 11 is showing a Low Memory Detected


Q. A new install of CPS 16 build 828 on Windows 11 is showing a "Low Memory Detected" message. After clicking through this message the software seems to function normally. The Windows 11 computer is new and has 32GB of RAM. This issue doesn't arise on Windows 10 machines.


A. MOTOTRBO CPS 16.0 (Build 828) was the last version of what we called CPS 1.0 and was originally written long before Windows 11 existed. Although this software runs on Windows 11 (I have it on my PC), it has not been tested and is no longer supported.

It is still used today: For example, to read and write older radio models. CPS2 uses it to parse codeplugs saved in the old .ctb format (i.e. if you open a .ctb file with CPS2 and dont have the above software installed, you get an error message). 

From what I can tell, it seems CPS 16 uses the legacy Windows API calls to check for available system resources on startup. When it queries Windows 11 and detects 32GB of memory, the value returned is larger than what the software's older 32-bit integer buffer can handle.
This apparently causes an integer overflow, forcing the application to miscalculate the system memory as zero low or some negative number. This then triggers the "Low Memory Detected" warning out of caution.

Since you have verified that the software operates normally after dismissing the prompt, your setup is okay.

You can fix this by forcing Windows 11 to run the software inside a legacy environment - commonly known as compatibility mode. 
  1. To enable this, right-button-click the MOTOTRBO CPS 16 desktop shortcut and select Properties. Click on the Compatibility tab. 
  2. Tick the box called Run this program in compatibility mode for: and select Windows 7 or Windows 8 from the dropdown menu.
  3. Tick the box called Run this program as an administrator near the bottom.
  4. Click Apply, then OK, and try relaunching the software.
If that doesn't work, you might want to try locking down the pagefile size. Legacy software doesn't just look at physical RAM; it also checks the Windows Pagefile. On a machine with 32GB of RAM, Windows 11 will dynamically scale the pagefile down to a tiny size because it isn't heavily needed, which can further confugulate CPS 16. Setting a fixed size might help.
  1. To do this, click Start, search for Advanced System Settings and click it in the results. 
  2. On the Advanced tab, click Settings button inside the Performance box.
  3. Go to the Advanced tab in the new pop-up window, and click the Change button in Virtual Memory.
  4. Untick Automatically manage paging file size for all drives.
  5. Select your system drive (C:), click Custom size, and set both the Initial size and Maximum size to 4096 (representing 4GB) or 8192 (8GB).
  6. Click Set, then click OK, and restart your computer.
Potentially, neither of the above will work and, like I always say, doing nothing is also always an option. Other than this error message the CPS ought to work normally and won't break anything so you can also just ignore this and continue using the software.
Powered by Blogger.