| ▲ | el_peaton a day ago |
| While I haven't daily driven Windows in years and am usually the first to criticize Microsoft. You have to give credit where credit is due; Windows backwards compatibility is simply nuts. I had never run into compatibility issues with programs or games built for older Windows version, nor have I heard of anyone who did. |
|
| ▲ | shakna a day ago | parent | next [-] |
| Some games that ran on Vista, can run under Wine, but not on Windows 11. The backwards compatibility story has changed in the last few years. |
| |
| ▲ | Asmod4n a day ago | parent | next [-] | | Games for Windows, can’t play any of those anymore without cracking them since the severs got turned off. | | |
| ▲ | bigstrat2003 a day ago | parent [-] | | To be fair, that is not a backwards compatibility problem and is because the games were designed with an unnecessary reliance on a third party service to run. |
| |
| ▲ | pathartl a day ago | parent | prev [-] | | I'd like to know which ones you've had issues with. I've compiled a collection of hundreds of Windows games from ~96-2006 and I've only run into one that's required an appcompat flag (carmageddon 2). | | |
| ▲ | toast0 a day ago | parent | next [-] | | My dad had trouble getting the Panzer General / other General Series to run. iirc, the installer is 16-bit, there's problems with too much disk space and/or too much ram, and then there's cryptic error messages. Oh and the please don't run this on WindowsNT message. We did find something 3rd party that uses the assets, so all wasn't lost, but ... Windows has a reputation for amazing back compat, and it's pretty good, but it's not really surprising to find things that don't work. Especially games from that era, there are common issues that come up a lot, but afaik, there's no microsoft compat option to lie about disk space, ram, or vram ... or it doesn't automatically trigger at least. | |
| ▲ | shakna 19 hours ago | parent | prev | next [-] | | Dark Messiah of Might and Magic, and a lot of other early Source games will just outright crash. Crysis Wars, Word '03, the Saboteur are all in a similar boat. They're not address aware, meaning they overallocate at launch, and Windows handling of 32bit compatibility is dead end code that hasn't been worked on in decades. These are 64bit executables, with 32bit memory mapping inside them. | |
| ▲ | GeekyBear a day ago | parent | prev [-] | | Heroes of Might and Magic 3 |
|
|
|
| ▲ | zabzonk a day ago | parent | prev | next [-] |
| > I had never run into compatibility issues with programs or games built for older Windows version Try running a real-mode Windows program on a modern version of Windows. |
| |
| ▲ | dwattttt a day ago | parent | next [-] | | Intel backwards compatibility has meant that real mode is still with us more of less, but to give context to people who aren't as familiar: real mode was superseded by protected mode with the introduction of the 80286, in 1982. | | |
| ▲ | BobbyTables2 a day ago | parent [-] | | I believe Microsoft removed support for 16bit Windows applications some time ago. The hardware may be willing but the software is now incapable. | | |
| ▲ | dwattttt 19 hours ago | parent | next [-] | | Yes, as sibling noted, 64bit Windows dropped support for running 16bit applications (which require real mode). I don't recall seeing a technical justification, however I suspect it's related to what CPU state transitions are allowed; protected mode (32bit) is allowed to swap to "virtual-8086" mode, which I guess is how real mode applications were run (rather than the processor completely turning off virtual memory, or completely emulating a CPU a la qemu). IA32e mode (Intel's name for X64) however is not allowed to transition into virtual-8086 mode[0]; it has to drop the processor into 32 bit mode first. That would chop off the top level of page tables, so short of something you do to affect the whole machine, that sounds like a non-starter for running an application. [0] Intel software developer manual 3, 2.2 | |
| ▲ | bigstrat2003 a day ago | parent | prev [-] | | Yes, that was removed with the 64-bit versions of Windows. My understanding is because they were using a compatibility layer to run 16-bit apps, and with 64-bit Windows they changed that compatibility layer to run 32-bit apps. But I'm not a Windows internals expert so I could be mistaken. |
|
| |
| ▲ | rvnx a day ago | parent | prev | next [-] | | You just need to install 86Box as a compatibility layer. Everything runs perfectly. You only have to copy-paste one .exe file and then you can launch your app from Windows, that’s it. Sounds perfectly reasonable. | | |
| ▲ | Narishma a day ago | parent [-] | | 86box is a PC emulator, not a compatibility layer. | | |
| ▲ | rvnx a day ago | parent [-] | | The official compatibility layer of Microsoft works the same way as 86box: https://betawiki.net/wiki/NTVDM There is no magic | | |
| ▲ | dwattttt 16 hours ago | parent [-] | | That link says NTVDM uses the CPUs virtual-8086 mode, rather than emulating a CPU; NTVDM's approach can't be done on a CPU that's in 64bit mode (per Intel's docs), the CPU would have to be stepped back into protected mode first (which isn't the same as when you run a 32bit application in a 64bit OS, that's a separate compatibility state within 64bit mode). |
|
|
| |
| ▲ | EvanAnderson a day ago | parent | prev [-] | | For sure. Not building NTVDM for 64-bit Windows was a major departure from previous strategy and marks a clear regression in Microsoft's attitudes toward backwards compatibility. | | |
| ▲ | mschuster91 a day ago | parent [-] | | > and marks a clear regression in Microsoft's attitudes toward backwards compatibility. Yeah... but for what purpose should it have been kept? Anyone with a legitimate need to run 16 bit software on a modern Windows machine can always go for virtualization or emulation. The effort required in supporting that technology is far from zero, and old code to work with legacy stuff - no matter in which project - is always a fruitful source of security exploits. | | |
| ▲ | EvanAnderson a day ago | parent [-] | | My observation is the "old Microsoft" would have kept it in and supported it because that's how they rolled. The lack of NTVDM in x64 Windows signaled a change that the commitment to compatibility is now on shaky ground. Whether it should have been kept for a technical reason is secondary, in my mind, to eroding the confidence their Customers had that old software would continue to work. The market doesn't seem to give a damn so I guess they made the right call. |
|
|
|
|
| ▲ | tonyedgecombe a day ago | parent | prev | next [-] |
| A ton of things broke for me when they restricted writing to the program files directory with XP. |
|
| ▲ | rvba a day ago | parent | prev [-] |
| Lots of old games dont work anymore, but you can still run them by compabtibility modes. 16 bit programs dont seem to work at all though - you need wine or dosbox |