Re:How to ensure that your program does not run under Window...
by badsectoracula on Wednesday June 03, 2020 @06:09AM
(#23401784)
While it isn't Microsoft's work (and Wine has proven that it is technically run most of 16bit programs natively on 64bit), there is Otya128's WineVDM port to Windows[0] that can run 16bit applications in an emulated 386 by stubbing 16bit calls to 32bit ones (so it also relies on the existing Windows backwards compatibility).
https://i.imgur.com/e26mqWP.png - MicroLathe (though that one does a segfault every time it renders... but it catches it and allows continuing use of the program)
While these programs are fun to play around with (especially Smalltalk Express), another use for this is to run the setup of older (32bit) applications that used a 16bit stub (Microsoft does have a few replacement stubs for some very popular installers but there are many other - and other versions - that are not there... and funny enough, AFAIK this project relies on the code Microsoft added to check for 16bit installers to run any 16bit program :-P).
Some examples are
https://i.imgur.com/r5aQNyJ.png - Smalltalk Express
https://i.imgur.com/W9ES2fg.png - Delphi 1
https://i.imgur.com/VLSglAK.png - Windows 1.0 port of WineMine
https://i.imgur.com/OLq2gLm.jpg - The Exile series of RPGs
https://i.imgur.com/e26mqWP.png - MicroLathe (though that one does a segfault every time it renders... but it catches it and allows continuing use of the program)
While these programs are fun to play around with (especially Smalltalk Express), another use for this is to run the setup of older (32bit) applications that used a 16bit stub (Microsoft does have a few replacement stubs for some very popular installers but there are many other - and other versions - that are not there... and funny enough, AFAIK this project relies on the code Microsoft added to check for 16bit installers to run any 16bit program :-P).
[0] https://github.com/otya128/winevdm/