4 ms·
I wonder if this might be even more useful for ReactOS, which is still actively supporting 32-bit x86, while Windows 11 no longer does.
by pavon 5y ago
I wonder if this might be even more useful for ReactOS, which is still actively supporting 32-bit x86, while Windows 11 no longer does.
- andai 5y agoYou spooked me that Win11 had dropped support for 32-bit applications, but it seems they still work fine. There's no 32-bit version of the OS though.
- dataflow 5y agoYeah they worded that confusingly. That said, I feel like the writing is probably on the wall for 32-bit. My guess is this might be the real reason why they pushed for making Visual Studio 64-bit.
- drbawb 5y agoRather confusingly the death of the 32-bit version of Windows in practice just means they are dropping support for 16-bit DOS applications. There is a WoW (windows on windows) subsystem which permitted you to either run 16-bit binaries on your 32-bit system, or 32-bit binaries on your 64-bit system; but there's no 16-on-64 or 16-on-32-on-64. If you have a 64-bit version of Windows the compatibility layer[1] lives at `%SYSTEMROOT%\SysWoW64`. [1]: https://en.wikipedia.org/wiki/Windows_on_Windows https://en.wikipedia.org/wiki/Windows_on_Windows
- simcop2387 5y agoYou can use winevdm for this though, https://github.com/otya128/winevdm https://github.com/otya128/winevdm
- sidewndr46 5y agoI'm waiting for the day when people run Linux on windows via a hypervisor to run old programs under wine. This is pretty close.
- Tuna-Fish 5y agoPeople already do this. There is a very old strategy game (Stars!) that still (barely) has an active community. As it's a 16-bit windows app, the standard advice on how to run it on modern systems is to run it under wine in a VM.
- amalcon 5y agoI actually have already done this -- or, rather, helped someone else to do this. The individual in question was an academic with a license for a rather old version of a particular piece of domain-specific software, which would only run on Windows 95/98/ME. As he taught at a small school, his budget wasn't exactly infinite, so he kept an old Windows 98 machine around to run that software. Turned out, it ran great on Wine. Actually, the performance even improved because the hardware was so much newer.
- toast0 5y agoI used to read about wine for windows, but I haven't seen anything in a while (but there is winevdm, which might be wine for windows for 16-bit)
- albrewer 5y ago> There is a WoW (windows on windows) subsystem Oh my god, I always wondered why the WOW6432NODE registry key was named that but was never bothered enough to look it up. Thank you for triggering the random insight.
- nazgulsenpai 5y agoI commend you for finding a use-case for this because I'm scratching my head over if this is a toy project or filling some necessity. Still a very awesome project!
- seritools 5y agoCan confirm, toy project. But hey, if it helps someone who might actually need this, even better!
- seritools 5y agoJust grabbed the latest ISO to test it out :) - rust9x_sample.exe sadly only works in 98/Me compatibility mode. https://i.imgur.com/nWCfTtV.png https://i.imgur.com/nWCfTtV.png In regular mode it seems there's a problem with the system not setting the file pointer to the end when OpenOptions::append is used: https://i.imgur.com/vvbEnWh.png https://i.imgur.com/vvbEnWh.png https://doc.rust-lang.org/std/fs/struct.OpenOptions.html#method.append https://doc.rust-lang.org/std/fs/struct.OpenOptions.html#met...
- jeroenhd 5y agoThis sounds like you've found a bug in either the Rust standard library or the ReactOS API implementation. It might be worth looking into this!
- seritools 5y agoTo clarify, it works in 98/Me mode because I added a fallback implementation to Rust9x for these systems, as the flag in question is not supported. AFAICT it is supported since NT 3.1, though, and it worked fine on all NT-based systems I've tested so far, so my guess would be a ReactOS API bug. The commit adding the 9x/Me fallback implementation: https://github.com/rust9x/rust/commit/3a3eddb0044c6d03357a75433d938ce07a8c047b https://github.com/rust9x/rust/commit/3a3eddb0044c6d03357a75...
- WhyNotHugo 5y agoThis is a really interesting point. I can imagine that being able to use Rust for ReactOS (and wine!) would bring lots of interesting opportunities for developers and new contributors.