Jump to content

Bruninho

Member
  • Posts

    256
  • Joined

  • Last visited

  • Donations

    0.00 USD 
  • Country

    Spain

Everything posted by Bruninho

  1. According to this page https://developer.mozilla.org/en-US/docs/Web/API/PerformanceObserver , it is only available for Firefox 57 and later. From what I have read shouldn't be something to block its usage. I haven't found anything for customElements, but I suppose its available only from Firefox 63 and onwards. My understanding is that Pixiv is using custom HTML elements created by JS scripts to "draw" the page. See, this is why I hate JS... *sighs*
  2. IMO the best way to browse the web on 98/ME or other ancient OS as of today is to do the same as the PowerPC folks have been doing these days on other forum: https://forums.macrumors.com/threads/web-1-1-building-the-new-old-web.2290616/ Instead of fighting to make old systems work with modern internet, just build mirrors and a network of pages compatible with Web 1.0 for these old systems. There's even a mirror for Youtube. Simply build a community network of classic WIndows related stuff to browse and a mirror to news/videos sites. Practically, in small terms, "downgrade" the internet for such systems to work on it and not choke because of modern JS. I'm a strong advocate of that solution not only because it's an easy one, but also because it is what I believe how the Web should be shaped, instead of a Web 2.0 based on JS frameworks and Web Apps.
  3. Try this: https://www.seamonkey-project.org/releases/seamonkey2.49.5/ It's what I was using on my XP virtual machines until 2020. Again, just don't use for internet banking, shopping and sensitive data. It's forked from Firefox ESR 52.9.0, newer than the ESR version you mentioned.
  4. No, you can try DOSBox-X, but my past experience with DOSBox-X is that chances are that it will be very, very unstable. Get 86Box or PCem for that.
  5. The current version of Pale Moon is based on Firefox 38 ESR, which was originally released in 2015. The prior release was based on Firefox 24 ESR, which was released in 2013. The project uses an older Firefox interface created before the Australis theme, and still supports XUL add-ons. Rather than being based on Mozilla’s Gecko rendering engine, Pale Moon is based on “Goanna“, an open-source browser engine that’s a fork of gecko. Current modern firefox uses Quantum, and is on version 99 and nearly releasing version 100 in the upcoming days. If you want to insist on using XP, at least use an official provided Mozilla option. Firefox ESR 52.6 or 58, last builds supported by XP and released by Mozilla around 2018. Its support just recently dropped. Its not “hype and propaganda”, it’s common sense. keep your AV updated, your system updated, your browser updated, don’t click shady links, don’t accept obscure files and don’t, never ever, use an outdated browser for internet banking since its security is not up to date with the bank security measures. A user script, what you’re confusing with a polyfill, is a client side javascript used in a browser to do things to a web page. Generally involves disabling scripts on a page to let an old browser work with it. An exception are extensions like the ones from Google Chrome, that provides extra features. A Polyfill was a javascript thing used by me and other web developers, in the past (2001/2010) to provide old browsers like IE (main target) support for features that only existed in modern Firefox and Chrome. It was a server side thing. We as a developers don’t have to use it anymore because all modern browsers supports the features we have to use. We do not have the obligation to provide support to old (censored) like Pale Moon. https://www.howtogeek.com/335712/update-why-you-shouldnt-use-waterfox-pale-moon-or-basilisk/ Brazilian government and federal agencies have already switched from XP to Windows 10/11, after nearly two decades using it for its public services. Last time I worked in a federal agency they were still using Windows 7/8. XP user base in the internet is smaller than 1% right now. If you expect to be able to continue browsing modern sites with XP, I must warn you that your expectation will be shattered. Modern web is evolving in a fast pace, even Pale Moon is failing to keep up with it, and with the rise of JS frameworks to build web sites and web apps, XP and its browsers is no longer a viable option to internet browsing. Its a fact, it’s happening right now, end period.
  6. Also, I’m not anti XP or whatever or against old, ancient software. I just stated that for modern, daily usage, they are no longer feasible. I also mentioned twice that I am into retro computing stuff, emulating old DOS, old macOS 9, Win 9x/XP for fun and gaming purposes. I understand why you are p***ed by the old/ancient remarks but its just the truth about these old software. You wanted a clear, concise explanation about why you shouldn’t or cannot access sites like Linkedin or do internet banking with your “ancient” operating system and browser. I did provide that, not just calling it “ancient” and “old”. I stated that Pale Moon is not a modern browser by any standards, is a fork of an older Mozilla Firefox not developed anymore by Mozilla itself. Therefore it means that stuff like the html/css/js rendering engine is not up to date with the current web standards, and will choke with most modern websites. But you chose to ignore it. No client side polyfill will help you to fully navigate sites like Linkedin, Youtube, Discord or whatever Web 2.0 website you want to try. These user scripts are a different web experience and far from the normal experience in a modern browser. They are “workarounds” and most involve disabling js scripts, which is basically also disabling features of a particular website, that you might need to enjoy a proper experience surfing that website in question. Don’t get me wrong. I would also love to drive a 1967 Mustang Fastback here. But the comparison of an old car with an old browser is not accurate. Any car will get you there as long as it has an engine working and all other basic stuff. Because the roads for them haven’t changed. A old browser will simply choke with modern websites and will not get you there. Their “roads” have changed significantly in 20 years. If it were that simple to update a browser to modern standards, I would still be using Windows 98 and Netscape (again, this is not a condescending comment) since these were my favorites back then. Unfortunately, it’s not. To sum it up: an user script is a client side script that lets you navigate an website by (loosely) modifying parts of it to make it bearable for your old browser. They generally involve disabling JS scripts that may make your old browser choke. Not all user scripts are for old stuff (Google Chrome Extensions are a good example), some may just add features to any modern browser (like a script to resize your window for debugging responsive web design, for example). A polyfill is a server side script that helps old browsers to understand modern language (to some extent) from html, css or js. They are not the same thing.
  7. These scripts will not make you access Linkedin or any modern website. If anything, they just disable or work around some JS from the server (like the No-Script plugin). But the downside is that the website will not be completely functional for you. For example, you might need a script used by the site to post there, which your browser probably don’t support (the reason why you were after these scripts in first place). What you are thinking to be polyfills are just user scripts, not polyfills as how I knew them. They are just user scripts and polyfills are as UCyborg described, but both things are different in terms of usage. A polyfill helps your browser to understand (to some extent) some new code like newer HTML, CSS or JS syntax and is generally (emphasis on generally, I have never heard about a client-side version) is implemented server side by the developers of these sites. Examples are Modernizr.js, and Polyfill.js (Philip Walton covers this one on his blog). A more famous polyfill for older IE was one that brought support for PNG transparency, for example. Nowadays their usage is deprecated, since all modern browsers support these features and the websites no longer need them and no longer have to support older browsers. Pale Moon is not one of these so called modern browsers, since its a fork of an older Mozilla Firefox build. Again, I was not being condescending about your computer or preferred browser, I was putting on facts (that you chose to ignore) about your preferred OS (XP) and browser (Pale Moon), as well as about the polyfills I knew in my career as a web developer (now Senior UI/UX Designer). They are not irrelevant, and you should take it into account if you insist on using it for serious stuff like internet banking and disclose your personal, sensitive data on websites without adequate security. If I were being condescending, I would let you know that. I just tried to help you and you acted arrogantly as if I were just calling your computer “ancient”. No dude, we are still in 2001 (XP release) and the forked firefox version of Pale Moon is still modern and supported by Mozilla on all websites, sure! (This is me being condescending, btw).
  8. It's not "hype and propaganda", it's pure logic and common sense. XP is dead. Microsoft officially ended support for Windows XP on April 8, 2014. Because no further security patches were developed since then, these computers are substantially more vulnerable to security risks and prone to malicious attacks. XP and its supported browsers are no longer up-to-date with the current security standards. For that reason alone you shouldn't be using it as your daily driver. I am not saying that Roytam1's browsers are dead. They are still pretty good for light casual browsing, nothing serious. Modern web unfortunately now relies much more on JS frameworks like Vue and React to build CMS and Web Apps, all of which I despise. I doubt that an ancient rendering engine like the one used by these old Firefox forks can keep up with it. Check here: https://gs.statcounter.com/os-version-market-share/windows/desktop/worldwide I do understand why one would want to stick to Windows XP. As a retro enthusiast, I'd love to keep using Windows 98 and/or 2000 as my daily driver today, because I love how simple and easy to use they were back in their heydays, but I cannot because nowadays it's not safe, it's vulnerable, not practical due to lack of updates and security patches, and not compatible with my work assignments. Instead I let them run in a sandboxed environment, running in an emulator just for gaming purposes, disconnected from the local network and internet. Less than 1% of the Windows Market Share Worldwide is Windows XP users nowadays. So in a nutshell, as long as you don’t connect to the internet; you are fine with running Windows XP.
  9. 1) I was just trying to be helpful from the point of view of a web developer in a serious organization, to explain it to you. 2) The hardware doesn't matter. XP is ancient (2002) and no longer supported by MS. All of the browsers Roytam1 is backporting to XP are third-party, non-official forks of ancient versions of Firefox, released years ago, and are no longer actively developed nor mantained by Mozilla. He knows it and will acknowledge it. I do know his (brilliant) work. He will not feel insulted by it. 3) Correct, your issue is not TLS, because he did update the ciphers and protocols in his forks, so did the developers of Pale Moon/New Moon. That was the easiest part for them. Your issue is the rendering of the modern web pages in these browsers. What you are seeing is that we are now reaching to a point where the development of these particular forked browsers will hit a wall and eventually stop. 4) Firefox forks like Pale Moon are starting to struggle to render Web 2.0 properly, because HTML5/CSS3 has a fast paced development and tomorrow, and due to the ancient and aging, old mozilla rendering engines used by them, they will soon struggle to keep up with it. Even Roytam1 will acknowledge that it will come to a point where he cannot update these browsers anymore, and we aren't far from it now. 5) You can install scripts and ad blockers, heck I do support it, as long as they come from trusted sources. The point I was trying to make was about HTML/JS/CSS polyfills used from the server side, by developers, and explain to you, from the point of view of a developer, why any organization with a web service will not give support to these browsers you mentioned and nor will use these polyfills just to support them. Client side, you do what you think it's best for you, sure. No one will stop you. Let me put it simple straight: Windows XP and these browsers based on ancient Firefox versions are really cool for some retro computing, casual web browsing and gaming entertainment. I know, because I do it from an emulator just to play old games. But it's strongly advised not to use it as a daily driver, for work, for internet banking, and to store sensitive data, simply because it's not secure anymore.
  10. You have mentioned just "modern" Web 2.0 websites, like LinkedIn. They don't care about your old browser and they're not wrong on their side about that. They have to move forward with the path that is the Web 2.0. Don't get me wrong - this is just business for them. The world moved forward with that. Why should they care about someone using ancient browsers? Not good for their business. Meanwhile, these old browsers are Web 1.0, which is the path I strongly believe they should have followed - browsers should just display pages, not heavy web apps or any flashy stuff, like a js based dosbox emulator... not stuff like ReactJS... best we, as classic web developers, can do is what I told before, graceful degradation. Businesses like LikedIn won't care about that for the reasons I mentioned before. It's the progress of technology and business. I work for an organization that sells customized Moodle LMS with a theme that I built with the most modern HTML5/CSS3 stuff. And in spite of that, I did a test for Windows 98 & XP with some old browsers and while my Moodle instance was nearly functional, some parts of my design were blanked out, as expected. I do think that I did a good job considering the huge gap between old and new technology, and that the look of it was still pretty good, since I can log in, navigate, and do some activities in a course. This was only possible because of my "old school" style of programming HTML/CSS and attention to detail which subconsciously led me to do some graceful degradation even when I didn't want nor thought about it - I always try to rely more on CSS than JS for design solutions, this is only possible because of CSS3. I never liked JS, really. However, I did drop the Internet Explorer compatibility, years ago (circa 2019) because I totally despise how the Trident engine render the things in a page. I always needed a polyfill to fix that, server-side. I was always angered at how it was different to Gecko and Webkit based browsers. Now we support newer Edge and all other browsers. This helped to move forward the development of our product instead of losing time with *censored* old browsers. This is why I do understand why the business work that way with Web 2.0. We can't be bothered about ancient browsers and with using polyfills to support them anymore. This was the case when IE was still around and gave me a huge headache for nearly a decade. If you want to access modern websites with your old machine, just do the MITM technique. You'll need a modern machine between you and the web to do that effort. It will at least let you access TLS 1.3 websites by downgrading that protocol to your machine, but won't fix the issue with modern HTML5/CSS3 code not being understood by your browser. And please don't do some internet banking with that technique, as it is very unsecure for you. I do that for my old Win 9x and MacOS 9.2 emulators just to access a secondary email I set up for that purpose only, and some fun pages like this one and VOGONS where I don't have to disclose some sensitive data. Some techniques for example is Browservice (look for it on github) and Crypto Ancienne (also on github, a technique to overcome TLS 1.3 limitation for the Classilla browser on MacOS 9.2, but I think it could work for RetroZilla, since the codebase is similar to Classilla. This is the best you can do "client side". However, your problem is completely unfixable unless someone does a new browser for these old machines with a modern rendering engine - and this will never happen. Browsers like Pale Moon won't do that, because the premise of Pale Moon is to follow the path Mozilla should've followed instead of being a "Chrome wannabe" and with a different rendering engine. Best you can do is live with some concessions. If you want to make something really useful with your Web 1.0 browser, take a look at this niche effort on MacRumors forums: https://forums.macrumors.com/threads/web-1-1-building-the-new-old-web.2290616/ It's a small community effort to create a Web 1.1 (evolution of Web 1.0) network of pages to enjoy our old macs, pcs and ancient browsers. Cheers
  11. As a former front-end web developer, my advice is to never use a polyfill in your website. It's better to follow the principle of "graceful degradation" for older, non-supported browsers.
  12. Here are the messages I get when I try QEMU-3dfx + XQuartz/X11 along with Windows XP SP3, Grand Prix 3 and different WineD3D libraries: WineD3D 1.87 & 1.9.7: Crash to desktop WineD3D 2.0.5: GP3.exe Entry point not found - The procedure entry point D3DKMTCreateDCFromMemory could not be located in the dynamic link library gdi32.dIl. WineD3D 3.0.5: GP3.exe Entry point not found - The procedure entry point D3DKMTCreateDCFromMemory could not be located in the dynamic link library gdi32.dIl. WineD3D 4.12.1: GP3.exe Entry point not found - The procedure entry point D3DKMTCreateDCFromMemory could not be located in the dynamic link library gdi32.dll. WineD3D 5.0.5: GP3.exe Entry point not found - The procedure entry point D3DKMTCloseAdapter could not be located in the dynamic link library gdi32.dll WineD3D 6.0.5: GP3.exe Unable to locate component - This application has failed to start because ucrtbase.dll was not found. Re-installing the application may fix this problem. I did not try without X11 because a first attempt showed me that it would not work and crash, too. So that kjliew dude must have modified something in these libraries. I'll recompile qemu-3dfx, wrappers and sdl2 to the latest versions and wait for a possible solution in the future. Meanwhile, DOSBox-X, which would be a much easier solution, has problems with SB16 emulation along with 3Dfx games on Windows 98. All games will crash there unless you set sbtype=none and play them without sound.
  13. I'm struggling a bit to test - some more modern ones crash due to something missing (must be what you spoke about earlier). Sometimes it's gdi, sometimes it's something about DVMKT or whatever. Older ones (2.x and older) did fire up, but it made a call to run Xquartz/X11 on my Mac and crashed QEMU back to the terminal. Same behavior I had with the other WineD3D libraries I was testing months ago. The explanation is pretty simple. If you watch his videos on youtube, the most recents ones running on his M1 Mac do not use Xquartz at all. But any WineD3D library I throw at it for any game calls Xquartz and crashes everything. Except when I try to run Qemu through X11, then it sort of works with any game... I managed to run Counter-Strike 1.6 with an old WineD3D library, but that test was some months ago and performance was not great. He probably did something with his WineD3D libraries to make it work the way he advertises on his videos. I can't see what it is. Today I tried to repeat it (Qemu + X11) but I cannot. Whenever I fire up qemu with X11, no display is shown on my screen. I clearly forgot something. I have recompiled everything - openglide, wrappers, qemu-3dfx... and I have even set up SDL_VIDEODRIVER=X11 for that. I also call qemu with the flag -display sdl. No luck. What the hell did I forget this time to fire up Qemu with X11? EDIT: Had to downgrade SDL2 to 2.0.14_1 (Was 2.0.20). Gonna try again...
  14. Thanks, got it - I will test them later and report back with what I've found.
  15. Unfortunately, my environment is MacOS (Monterey, 12.3). My main problem is actually compile just the newer WineD3D libraries (the DLLs) required for use in qemu-3dfx with Mesa/GL passthrough and Windows XP or 98 (kjliew says he managed to build for both). I also don't know if he is applying some patch - so far I don't think he did. The mentioned DLLs are: d3d8.dll, d3d9.dll, d3d10.dll, d3d10core.dll, d3d11.dll, ddraw.dll, dxgi.dll, libwine.dll (that one shouldn't be required with newer WINE libraries), and wined3d.dll. Games only require two or three of them. Example: A DX7 game requires only ddraw.dll, wined3d.dll and libwine.dll if WINE is older, along with the custom built opengl32.dll that comes after compiling qemu-3dfx wrappers. A DX9 game will require d3d9.dll replacing ddraw.dll. You just have to put them in your game folder. If you can compile these libraries from a newer WINE built, and cross compile them for the above mentioned Windows versions, and if they do work, then we can overcome the hefty donation he asks for them. You can test them against games like Counter-Strike 1.6 (enabling D3D instead of OpenGL), Grand Prix 3 (disabling software mode and enabling hardware mode). Any other DX7 or DX9 game will support it. He has a youtube channel demoing some games as well. https://www.youtube.com/channel/UCl8InhZs1ixZBcLrMDSWd0A/videos so you can see which games he demoed. In these videos I was able to figure out which versions of WineD3D he used for some games: 1.8.7, 1.9.7, 2.0.5, 3.0.5, 4.12.1, 5.0.5, 6.0.2. Looks like he used 5.0.5 for Grand Prix 3 which was my main interest here. One of the videos is a walkthrough: https://www.youtube.com/watch?v=_cTy6CLkZbE
  16. I have just read the entire thread and this is really sad for PM. Tobin is a such d*ckhead.
  17. Using his QEMU-3Dfx code from late 2020 (september/october, before his SDL2 plumbing update) I have to use X11 to display the VM. Latest code does not need to use it anymore. Now, using the old version of this code, I can run different WineD3D libraries from Federico Dossena, and I have tried two games: Counter-Strike 1.5 and Grand Prix 3 on Windows XP SP3. GP3 does not start, it does show the intro on second attempt to start the game, but fails with "No GL context for func 02fc" Counter-Strike 1.5 can run it, but its unplayable, near zero speed. Also, some graphics are garbled. Back to square one. More updates Tried with different WineD3D libraries like 4.12. Same results. Grand Prix 3, Counter-Strike 1.5, NBA Live 98 are not playable with WineD3D there. Before someone say something about these libraries, I can play these games on CrossOver for macOS. All three are playable in software mode on QEMU, and QEMU-3dfx, and Counter-Strike 1.5 is playable with the OpenGL mode (3dfx minidriver) on QEMU-3dfx. Grand Prix 3 can even run better in software mode, although we do lose some graphics eye candy with wet-weather races. NBA Live 98 is supposed to be much better looking with D3D/3Dfx, but I can't get it to work in QEMU-3dfx. I really really need these WineD3D libraries modified to run on his newer QEMU-3dfx code.
  18. @MrMateczko another use on VOGONS told me that he used the WineD3D 1.8.6 and had success. No special build or whatever, just the binaries from the main site. I am confused. I tried the 1.8.6 from Federico Dossena's website (is there any other WineD3D 1.8.6 build?!) and while it did call MESA correctly, it still fired up X11 on my Mac and crashed QEMU. Back to square one. But, at least now I know one version that would work here. I wonder if I need to roll back my qemu-3dfx version to when it needed X11 to run. I don't know how to do that (I don't even know which commit to roll back to), and I would also need to roll back SDL2 to 2.0.14 I think. It's a huge drama. I tried to email a wine team member about the license and I still haven't got a reply yet. Seems that winehq.org has no way to contact them or report it to them. Bummer.
  19. But before doing that, might as well be a good idea to fork his repo to save a backup, just in case. Then maybe in the future, someone else can continue.
  20. I tend to think the same. But reporting it or not, we don’t get it anyway. However, there’s a chance we can if we report. Like Federico told me, he can still put them behind that donation, but has to make them also freely available. Just like how Wine is free while it’s commercial solution “CrossOver” is paid, for example. He may still get it from those who know (censored) nothing about compiling it. We might get it, as long as he is legally forced to make available and explain how to do it. Although he hardly explained how to compile his entire qemu code and we had a hard time to figure out how to do it and run it, but in the end I managed to play it, at least the glide games. I will look into how to contact the wine team for it. Like I said above, he shouldn’t be doing that, since he’s violating Wine license, and either way doesn’t matter if we don’t get it because currently we don’t get it anyway.
  21. Thanks, LoneCrusader! @MrMateczko I was exchanging some emails with Federico Dossena this night, telling him about these WineD3D libraries. He told me: “I assume he tried to do an XP build and tried to fix the errors one by one as they popped up, which is complicated and time consuming but clearly possible.” He also noted something which we should be looking for: “I should point out that Wine is under the GNU GPL v2 license so he's legally obligated to share his modifications, he can put them behind a paywall if he wants to, but his patches must be made available otherwise he's violating Wine's license (and you should report it to the Wine team).” I will bring more updates on it later. He will probably help me to get in touch with the Wine team to do it.
  22. I also agree that a separate thread is needed. Can we ask a mod to move the posts about this subject to a new thread, so we don't lose track of it? I feel your pain about your game, I have a few games that would benefit from it like, for example, Grand Prix 3 and Counter-Strike 1.6. 98SE or XP, I don't care which one as long as I can run them. I already modded the XP look with the Inexperience Patcher, so it looks almost like Windows 2000 (one of my favorite Windows versions, neck to neck with Windows 98). Yea $60 is "small". One US dollar equals nearly 5,54 brazilian reais, so 60 USD is ~332 brazilian reais, its too much money. Brazilian minimum salary is currently approx. 1200 brazilian reais. R$ 332 is insane. We need someone who can compile these newer libraries for us to test. I have been trying to compile them myself but so far I am failing miserably.
  23. First versions of his fork required X11 for everything (including Glide, OpenGL and D3D passthrough). Now it doesn't. When I run a glide game like FIFA 99, it just needs glide2x.dll. When I run Counter-Strike 1.5, which is a OpenGL game, it only requires opengl32.dll but it also supports Glide (glide2x.dll). Counter-Strike 1.6 (the most popular version before CS:GO) became OpenGL/D3D only, and runs only on XP and later, hence why I used 1.5 here for Windows 98. When a D3D game is initiated, it must start MESA GL passthrough (you can see on terminal in his videos. where you see mesapt being called, it's WineD3D or OpenGL in action, where as Glide is glidept calls). With me it does call MESA, but it also fires X11 which shouldn't be called. In his videos X11 is not called anymore. I presume that something is either wrong on my end with MESA GL install, or his WineD3D libraries have some kind of implementation not to call it. I don't have anymore the previous versions I had managed to build, I had done it a few months earlier and gave up when I failed to make it work. But one can try it following this small post: https://www.vogons.org/viewtopic.php?t=41636&p=393105 and Federico Dossena has on github a script to build them for both 32-bit and 64-bit Windows, but the catch is that his scripts must be run in a Debian environment or similar (https://github.com/adolfintel/wined3d4win). I tried both. I could only build them using Windows 10 x64 and MINGW. I think it did cross-compile correctly (or else Windows XP would have thrown an error popup. When it doesn't, QEMU calls X11 and crashes). Even WineHQ website had a page about it, but they removed it. I found it on web archive though: https://web.archive.org/web/20151224173752/http://wiki.winehq.org/WineD3DOnWindows and I had also tried that one, but it didn't build. Edit: Sorry for that @Wunderbar98. I know the subject here is Win 98 in 2020 and beyond. But gaming on Win 98 is also related and if I manage to get these libraries working, gaming on Win 98 in a VM would be an amazing feat for a such old operating system. I know it's possible, because the dev in question just managed it himself. He just doesn't want to give it for free, but he did hint in a post on VOGONS that the quest for WineD3D libraries were always free, "pointing his finger" to wineHQ website, as long as we manage to compile them ourselves. However, he obviously will not tell us how... hence why I came here to MSFN to try and find someone who can actually find out how to build it and help testing, to make it free for everyone. I have been researching on this subject myself for nearly a year, and I had already thrown the towel...
  24. I think you're getting it right, yes. 1) Yes, it's all down to compiling newer versinos of WineD3D for XP and 98. The are builds from Federico Dossena (https://fdossena.com/?p=wined3d/index.frag) but, versions for Windows 98 stops at 1.3.x and Windows XP stops at 1.7.52, and newer ones only work with Vista and above. The developer of Qemu-3dfx did newer ones for XP and 98 himself. You can see some of them working here, here and here. The last video shows him adding the libraries next to the game executable. 2) They may or may not be altered. He does not disclose the details. But I don't think they are, based on the fact that, a decade ago, the same concept was used for Virtualbox to provide Direct3D support through WineD3D doing a passthru to the OpenGL engine on host machine. Sure the results were mixed, but some ppl had success. These libraries weren't altered in any way (except for one method where ddraw.dll had to be renamed and the game executable edited to look for the renamed ddraw.dll instead of the one inside Windows folder) but here his method isn't doing it, he uses the original ddraw.dll name. Today, ReactOS and Exagear are also using the original WineD3D libraries to do the same thing, same concept. Depending of the game DirectX version, one has to add the following DLLs next to the executable before running it inside a Win 9x/XP QEMU-3dfx VM: DX 1-7: ddraw.dll, wined3d.dll, opengl32.dll DX 8 and newer: wined3d.dll, d3d8.dll (or d3d9.dll, d3d10.dll...) and opengl32.dll 2.1) Therefore I don't think he does alter them significantly. I mean, it's just three files. And the third one (opengl32.dll) is compiled by yourself when you compile the glide wrappers; so we have wined3d.dll and ddraw.dll to look inside. 3) Yeah, apparently (and I have searched for the entire internet in months) nobody has bothered to build newer versions of WineD3D for Windows 98 and XP. The first versions of his fork for macOS required us to install Xquartz/X11, because he didn't want to bother rewriting it for macOS (he did for linux and windows). Performance was reasonable. Then he was convinced to get a M1 Mac, and rewrote it in a way that it does not need X11 anymore on macOS. All you need to have is SDL2, OpenGlide and OpenGL (MESA GL) on your host machine, his wrappers, and it's done. Glide games run fine. Any attempt I did to run D3D games with any WineD3D library on Windows XP (I couldn't find one that worked for 98) fires up X11 while QEMU is running, and then QEMU quits (kills the VM running) with some errors. Since his current versions don't need X11 anymore (the videos I posted above shows that) I need to figure out what is the piece that is missing from this puzzle with WineD3D libraries. EDIT: Actually, I think that another piece of that puzzle may be which MESA I am using on host machine. I installed it from homebrew. This could explain why it's firing X11 when I try a D3D game. So looks like I need to install a different compiled MESA version?
  25. Thanks, my scenario here is pretty simple, I have his fork compiled with all glide wrappers working on my M1 Mac, I can emulate (since M1 is not same architecture) with a very good speed, Windows 98 SE and XP SP3 under his QEMU fork. Windows 98 glide games in particular are marginally faster than on XP. Actually, they are just ridiculously fast enough. All windows glide games I have tried run just fine, thanks to his glide wrappers (glide.dll, glide2x.dll and glide3x.dll). It's just the WineD3D libraries I am missing for games that support Direct3D and DirectDraw. I can't seem to compile one that works for this purpose with his fork - unless hes doing something special to his version which I am not aware of. For example, WineD3D 5.0.3 libraries were never publicy compiled for Windows XP, but he did it and is able to play games like Grand Prix 3 and some Star Wars campaigns. Windows 98 SE WineD3D libraries stops at version 1.3.x, yet he managed to build some newer version to be able to do D3D Guest > MESA GL Host passthrough for games like Moto Racer, inside Windows 98. I did manage to build some for XP, but they aren't working either. I must be missing something "special" he is doing to make it work there. Here you can see how it works: https://github.com/kjliew/qemu-3dfx/wiki/QEMU-3D-APIs-Pass-Through My case, I have MESA and OpenGlide on my host machine, I have his qemu fork compiled and working for two architectures only (i386 and x86_64). I have even managed to compile myself the glide wrappers with his instructions. What he is not willing to do is to give instructions on how to compile your own WineD3D libraries for D3D/Mesa passthrough (as explained on the page above, item "Third Party Pass-Through"). He asks for a HEFTY donation just to compile it for three games only. Other users were outraged by this price too. I don't think he has ever managed to sell it to more than two or three people. WineD3D is an open source and free library anyway. His qemu fork code is GPL 2.0 though, he can do whatever he wants with it but I don't think he can ask that much money for custom WineD3D libraries. That value exceeds the 1-year subscription for a Parallels Desktop license to run modern Windows and play games, for example. Even GOG games aren't that expensive. Anyway, I can play all my glide games on my Windows 98 SE virtual machine, but some games with great graphics that require D3D are only playable under software mode - allthough I can play them this way, graphics aren't just that good and fun. Just not the way I remember having played them when I had a real Win 98 machine decades ago. He has a solution that beats DOSBox and VMware for classic Windows gaming, yet he keeps it to himself. Even dgvoodoo for windows users is free...
×
×
  • Create New...