We have thousands of DOS programs that were all written in the 80s using 16-bit C, comprising over 1,000,000 lines of code. Many of these programs utilize libraries that directly access the screen, drive, etc. (and we don't have the sources for these libraries). Whenever we try to run them in Win2000 or above, even in compatibility mode, we get access violations and blue screens.
Our solution so far has been purchasing Win98SE Retail Boxes and running Win98 in a VMWare session. The problem now is that we can't find enough non-OEM licenses (we last purchased in 2006 and need another 20 or so copies). Our company is extremely careful about licensing, so they have no interest in buying the OEM copies (since we are not a system builder).
Our new 32-bit software won't be ready for 3 years, so unless someone knows where we can buy lots of Win98 retail boxes, I'm stuck trying to figure out how to get 16-bit software with direct system access to run in 2000/XP. Any ideas?