6 ms·
Someone has to maintain Wine and all the rest. So it requires effort and isn't something simply guaranteed.
by shmerl 3y ago
Someone has to maintain Wine and all the rest. So it requires effort and isn't something simply guaranteed.
- 5- 3y agoof course. please donate (money or effort) to these important preservation projects!
- 867-5309 3y agoin the future, finding a compatible emulator version will be a lot easier than acquiring the original intended hardware
- shmerl 3y agoIt's already easier. My point is that someone has to keep the compatibility layers working on modern systems.
- pasc1878 3y agoTYo keep Wine going buy the commercial version of Wine - Crossover from codewavers.com
- amelius 3y agoIn theory, can't an LLM be used to translate code from the original platform to the emulation environment, in such a way that there is no copyright infringement ?
- JonChesterfield 3y agoIf you define LLMs as magic portals for ignoring copyright law and also assume they're magically able to perform arbitrary code transforms defying compiler engineers, then sure.
- amelius 3y agoYou don't need arbitrary code transforms, just correctness-preserving code transforms.
- dark-star 3y agoLLMs are inherently bad at this whole "correctness" thing...
- amelius 3y agoWell, not if you force them to use only correctness-preserving transforms. Just reject anything else.
- dark-star 3y agoSo how would you prove that the transforms it conjures up are in fact correctness-preserving? Also, if you only allow correctness-preserving transforms, why would you need an LLM in the first place? Just apply those correctness-preserving transforms directly (that's basically how recompilers work, which have been successful in doing that since the late 90s)
- amelius 3y ago1. You write and prove the correctness preserving transforms yourself. They are low-level, so you only need to do a small number of them. 2. The aim is to apply the transforms in such a way that you get different code, which is still efficient, or maybe even more efficient. This is where you rely on the "intuition" of the LLMs. No guarantees there, that's why it was a question.
- dark-star 3y ago...but that is exactly what optimizing compilers (and re-compilers) do since forever, and they are already quite good at that. I fail to see how an LLM could magically improve that.
- iforgotpassword 3y agoBut that's one thing to maintain. With every game you port to Linux, you have one more thing to maintain and update to whatever shit breaks it on the userspace side 3 years from now. That's O(n) while maintaining wine is O(1). Yes this is oversimplified as wine is more complex than most games, and also there will be regressions and stuff as you can't test every Windows game ever every time you change something in wine, but still.
- nobodyandproud 3y agoThen maintaining Wine is more like O(lg n).
- shmerl 3y agoIt would be nice actually to have a Linux own compatibility layer similar to Wine, that preserves old APIs same way Wine does for Windows ones. But so far no one is really planning to make such.
- AshamedCaptain 3y agoThis is a bad analogy, because Wine also has dependencies on various "Linux APIs". So technically if you maintain Wine you are also maintaining all the libraries Wine depends on, and so on. It would probably be easier for a game to just target the libraries Wine depends on, or even better, some smaller and more "least common denominator" abstraction layer (e.g. think libao for audio) sitting on top of the same libraries. While you can see Wine as de facto providing such an abstraction layer (e.g. you can switch audio drivers, video drivers, etc. in Wine), they are forced to expose an API whose evolution they don't control (Win32), which is something that long-term is doomed to fail.
- shmerl 3y agoThe problem is maintaining long term compatibility which is what Wine is doing. Native Linux ABIs can break (soname changes and etc.) and unless someone keeps translating old ones into newer ones, it won't work. I.e. something Wine-like for Linux ABIs themselves that games use would be great.
- beardedmoose 3y agoSounds like we need an all in one VM solution with GPU access, where the whole OS is embedded with the game and can run ontop of any OS providing there is a player for the VM itself.