For those using old leonardo and having this problem, it's because SmarHeap DLL had problems with multi-cores or multi cpus in the system and in order to fix this just needed to upgrade those files Sh33w32.dll or Shw32.dll from 3.xx.xx into a recent version may be 10.xx or 11.xx version.
Those files are present in new version of Leonardo or Precision 32bits or other Mentor Programs for 32bits
Just copy this files Sh33w32.dll or Shw32.dll (version 10 or 11) and overwrite renaming it accordingly as it's named inside your program folder.
感觉坛子上所有的leonard Spectrum在xp 32位下都无法安装
Leonardo can be installed from win 2k up to win 10 without any problem (didn't tested in win 11) but the only problem is the DLL that will treat threads and multi core and also if you can use a generic compiler for your IC in your modern windows or if will need to make an older compiler to work in modern windows allowing 32/16bits program to work again !
Widnows 10 has a package to enable and allow execution of 16 bits program.