VOGONS

Common searches


First post, by kjliew

User metadata
Rank Oldbie
Rank
Oldbie

The game, both demo and retailed version is a "trojan" by nature, the installation and uninstallation tried to replace several system files and triggered Win98SE SFP but still corrupting a good OS image. Luckily with Win98SE VM, the image can be restored within minutes. If anyone tried it on real system, then good luck. The game even shipped with VtoolsD "ramlockC.VXD" and I wonder how anyone could ever run the game on anything other than Win98/ME.

The game checked for installed DirectX version and it had to be precisely version 6.1 to continue, even after the stable official 1.2 patch. Unfortunately 1.3 patch (which also had the check removed) was unstable, especially for Direct3D renderer, resulting in HUD loss switching in and out of game. So the best option is to bypass the DirectX version check and stay with last stable 1.2 patch. The following is the patch for both the playable demo and retailed version 1.2 of the game, meant for audience comfortable with hex-editing the game EXEs. It applies for all the versions, 3Dfx, D3D and Software, but I doubt anyone would be interested in the Software version.
(xx = don't care)

Search:  85 C0 75 xx 68 00 00 18 40
Replace: xx xx EB xx xx xx xx xx xx

After the patch, the both the demo and retailed 1.2 version worked perfectly for QEMU. It is easier for the 3Dfx version, both dgVoodoo2 and nGlide render the game correctly, but both aren't available outside of Windows. Both OpenGlide and Zeckensack's Glide Wrapper failed on this game. Luckily, the D3D version works out great on QEMU with WineD3D, so this could be the only way to play for modern Linux.

Requiem Avenging Angel (1999) Retailed 1.2 Direct3D at 1024x768 native on Win98 VM

ReqmD3D.png
Filename
ReqmD3D.png
File size
1.16 MiB
Views
1194 views
File comment
Requiem D3D 1.2
File license
Fair use/fair dealing exception

Reply 1 of 31, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

There is also, Sneak peak demo, which doesnt need any patching.

Otherwise it patched all files and tested, that at least SW demo now working within Qemu machine, but 3dfx does not, just black screen, in Qemu log i see thing:
glidept: DLL unloaded
glidept: DLL loaded - glide2x.dll
trace: _grGlideInit@0 called
glidept: f6c9c59-18:00:19 Feb 2 2021 build WRAPFX32
wr2x_trace: _grSstQueryHardware@4
wr2x_trace: _grSstSelect@4
glidept: grSstWinOpen called, fmt 1 org 0 buf 2 aux 1 gLfb 0xe5a37000
glidept: LFB mode is Shared Memory (fast), One-copy
window 1024x768 (scaled)

Same patched files are fines with PCem, 3dfx is running.

I guess that i would be make to any info compatibility info, or video and to Qemu log add some Qemu 3dfx version info, maybe i have only too old build and maybe also which 3Dfx card is emulated by dgVoodoo etc (i tried it with Voodoo 2).

Other Qemu related problem even in SW version, mouse cursors is not working in some dialogs screens - which are mouse only, i dunno it is probably VBE9x bug.

Here are patched files, for someone how is not familiar with Hex magic, or just for check..

Because of install mess, it would make sense upload somewhere already installed version and check if it could be just sideloaded without install to other machine.

Attachments

Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough raw HW.

Reply 2 of 31, by kjliew

User metadata
Rank Oldbie
Rank
Oldbie
ruthan wrote on 2021-03-15, 08:05:

Otherwise it patched all files and tested, that at least SW demo now working within Qemu machine, but 3dfx does not, just black screen, in Qemu log i see thing:

The 3Dfx version works fine for me with dgVoodoo2. It is likely how your dgVoodoo2 was setup. QEMU could sometimes be flaky about dgVoodoo2 if you didn't have it configured for QEMU. The WNDPROC hooking could potentially crash either QEMU or dgVoodoo2 itself when working with QEMU. The standalone dgVoodoo2 requires WNDPROC hooking for some of its features when running the games native. Environment = QEmu in configuration tells dgVoodoo2 that it will be working with QEMU and you will also lose out some features from dgVoodoo2. It's a hassle if one mixed QEMU with native Windows games for dgVoodoo2. OpenGlide, on the other hand, has seamless integration with QEMU simply because I have the source. Dege is pretty busy with his DirectX wrapping for modern stuffs, so I am not bothering him to implement the same seamless integration as in OpenGlide. He can do so if he wished and I am more than happy to show him the QEMU plumbing in OpenGlide. Zeus, the author of nGlide, is also aware of QEMU plumbing if he ever made a 64-bit version of nGlide that supports QEMU.

ruthan wrote on 2021-03-15, 08:05:

Other Qemu related problem even in SW version, mouse cursors is not working in some dialogs screens - which are mouse only, i dunno it is probably VBE9x bug.

For 3Dfx version, the mouse cursor is missing on the "Yes/No" dialog pop-up, which you can use "Y" and "N" keys instead of blindly moving the mouse. The Direct3D version, however will be unfortunate to miss the cursor all the time and one have to blindly move the mouse. This is one problem of WineD3D on QEMU when the game expects 2D hardware mouse cursor to show up on 3D surface without painting its own.

Reply 3 of 31, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

The 3Dfx version works fine for me with dgVoodoo2.

Yeah, its always working for you, you are author 😀, but need to make it accessible and working for others too, or be clear about its compatibility and limits on different target platforms..

The Direct3D version, however will be unfortunate to miss the cursor all the time and one have to blindly move the mouse.

So far i never made any Direct3D game, working with Qemu3Dfx, probably some additional steps are needed for it. When i ran Requiem D3D - im getting classic message than my 3D card, is not DirectX 6.1 compatible.

This is one problem of WineD3D on QEMU when the game expects 2D hardware mouse cursor to show up on 3D surface without painting its own.

Im on Windows, so if im not wrong no WineD3D here..

Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough raw HW.

Reply 4 of 31, by kjliew

User metadata
Rank Oldbie
Rank
Oldbie
ruthan wrote on 2021-03-16, 05:04:

So far i never made any Direct3D game, working with Qemu3Dfx, probably some additional steps are needed for it. When i ran Requiem D3D - im getting classic message than my 3D card, is not DirectX 6.1 compatible.

ruthan wrote on 2021-03-16, 05:04:

Im on Windows, so if im not wrong no WineD3D here..

I am sorry to say that you are wrong again ...
Check it out.
Guide to Windows 98 VM Setup on QEMU - Take #2

Reply 5 of 31, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

Well, so finally wrote some better documentation, good.. i have to check it.

You could get people angry quite quickly to call them wrong, if they are not follow every you thread to internet..

Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough raw HW.

Reply 6 of 31, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

If is understand this:
https://github.com/kjliew/qemu-3dfx

For $59.99 donation, you will deserve the following donor's privileges:

QEMU-enhanced WineD3D libraries for Win98/2K/ME/XP VMs for DirectDraw/Direct3D games up to DirectX 9.0c

Direct3D support is now available only behind the $60 paywall?

Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough raw HW.

Reply 7 of 31, by kjliew

User metadata
Rank Oldbie
Rank
Oldbie
ruthan wrote on 2021-03-16, 09:37:

Direct3D support is now available only behind the $60 paywall?

As I already said in the other thread, consider this as donation to support my work, not something for sale as of GoG and Steam. In return, I will try my best to support one's elected games to have the games preserved with QEMU. Once the games preserved, everyone gets them regardless if one had donated. Anyone can always figure things out themselves without donating. Technically, it is always possible for anyone to make WineD3D work given enough time, persistence and determination without the additional QEMU enhancements I made for scaling, frame limiting and other stuffs.

It is perfectly fine for potential donors to check for games compatibility upfront before donating, if this is what one wishes, and not donate until the games are supported and qualified. I really want all donors to be happy about their donations and every penny worth out of it.

The donation pledge also serves other purposes of my own believes. If it is successful, then it shows virtualization and supporting legacy OS make sense and have values, even for the small & niche retro market. It is always possible that upstream QEMU, Wine community or any other virtualization solution providers will take note and address the gap in the future. My hobbyist solution isn't always perfect to begin with.

Reply 8 of 31, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

Ok, i dont have problem with that. Are you sure about price? I mean with lower price, you can sell more and make money and more people happy. Most of people not need make 3 games of their choice working and would be happy just with some generic binary build download links.

Other possible problem would be, as you wrote, you project is depended on other 3rd party free SW and they are completely free.. and that you are trying to make money on it and they dont could make more considering their priorities forward to Qemu 3dfx. Maybe send part of every payment as donation to Qemu, dgVoodoo, nGLide etc etc, would make it working for everyone.

Last consideration, is if you would stop development of Qemu 3Dfx, can some just take your code and continue with project, without any rights issues as any other open source project?

Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough raw HW.

Reply 9 of 31, by kjliew

User metadata
Rank Oldbie
Rank
Oldbie

I think the price is about right. I perceive supporting games could have more values in the long term, especially with Wine. After all, playing old games on VM is still a new and radical idea. Frankly, I still believe building QEMU is really not very difficult 🤣 with MSYS2 and Linux. Perhaps the DJGPP DXE wrappers could be slightly more challenging because of the specific toolchain, but that only for a handful of DJGPP source ports. Otherwise, Glide and OpenGL are essentially give-away. 😁

I licensed my work under GPL in GitHub. I guess that implies reusing code is fine as long as GPL rules are complied. I am not a lawyer though.

Reply 10 of 31, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

For me personally, not good enough. From my perspective would be right at least 10 bucks from 60 sent to other project in chain.. If it would be $60 or $70 for end user is not important.

I never understood this licensing stuff. If is possible to copy and fork code, what is blocking someone to fork it and release all things for free, instead of $60?

Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough raw HW.

Reply 11 of 31, by kjliew

User metadata
Rank Oldbie
Rank
Oldbie
ruthan wrote on 2021-03-17, 19:01:

For me personally, not good enough. From my perspective would be right at least 10 bucks from 60 sent to other project in chain.. If it would be $60 or $70 for end user is not important.

That is my choice. I do not reject your idea completely. If the donation pledge was successful, then I would consider it. By the way, I already gave away Glide and OpenGL. All one needs is to build it. Since the focus is on Windows games, OVL and DXE wrappers do not matter. I recommend using DOSBox for DOS games.

ruthan wrote on 2021-03-17, 19:01:

I never understood this licensing stuff. If is possible to copy and fork code, what is blocking someone to fork it and release all things for free, instead of $60?

Neither do I, there are already 2 forks from my qemu-3dfx. I am fine with it. If you would get to the point, the whole point is about donation, not something for sale or turning this into a thriving business. As you had already said in the past "in the name of user education", I welcome anyone to read the codes and learn something.

Reply 12 of 31, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

That is my choice. I do not reject your idea completely. If the donation pledge was successful, then I would consider it.

As i wrote not good enough for me, because this paywall cloaked as donation, could kill the project.. so that "donation" could be wasted to dead project in few months. If there would be some money synergy and "lubrication of tool chain:, i would feel safe about project future and i would buy it. I dont care if someone project would get $2 and $1 and other details.

Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough raw HW.

Reply 13 of 31, by kjliew

User metadata
Rank Oldbie
Rank
Oldbie

That's fine with me. If no one believed in the idea of playing old games in VM, then just let this useless project be killed. It is a willing donation pledge. Please don't think that you are buying something from me, anyone can always donate even without exercising donor's privilege as a token of appreciation. If you don't feel like to donate, it is fine with me. You can always make the donation to any other projects you deem necessary.

Perhaps in another 10 years or so the project could have seen more lights if gamers in their 50's or 60's still wanna play those games from 30 years ago. 🤣 32-bit x86 will one day be gone, I am sure. Both Intel and AMD are already doing something like leveraging VMENTER/VMEXIT for some legacy, rarely used 16-bit instructions. When all the patents on 32-bit x86 instructions expired, it is also highly likely that non-x86 architecture can also support x86 instructions in VMs with their architecture specific virtualization extensions. I believe it maybe entirely possible today for all 80386 instruction sets, if anyone wish to test the legal boundary of Intel.

By the way, we are going astray for all these discussions. If you would like to further such discussion, then perhaps you could also start a new thread.

Reply 14 of 31, by Stiletto

User metadata
Rank l33t++
Rank
l33t++

I'm not clear that kjliew has released the sourcecode / sourcecode modifications to all the things he's asking for a donation for, but if he hasn't, someone could always donate $59.99 to kjliew and then after receiving the binaries, request his sourcecode under the rules of their respective licenses, etc. 😀

No offense to kjliew 😉

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto

Reply 15 of 31, by kjliew

User metadata
Rank Oldbie
Rank
Oldbie
Stiletto wrote on 2021-03-22, 05:54:

I'm not clear that kjliew has released the sourcecode / sourcecode modifications to all the things he's asking for a donation for, but if he hasn't, someone could always donate $59.99 to kjliew and then after receiving the binaries, request his sourcecode under the rules of their respective licenses, etc. 😀

No offense to kjliew 😉

That's so true 👍 👍

Reply 16 of 31, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

@kjliew You often for some reason not answer questions.. I dont need that classic spiel about virtualization future, its clear that some sort of virtualization or emulation would be solution, if there would be someone willing to invest time into its coding.

I just wrote how that donation should be distributed make it best for every variable in the equation - you, customers, authors of needed 3rd party tools which is needed to make it working.. If some part of donation money would be distributed also between other tools authors, i would buy it right away, because it would be right thing to support.. otherwise i dont say that i will not buy it, but i would not saw it as so great investment.

Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough raw HW.

Reply 17 of 31, by kjliew

User metadata
Rank Oldbie
Rank
Oldbie

I already answered all your questions that I said it was my choice to decide. Go back read it again, will you?
It is your choice to use dgVoodoo2 or nGlide as Glide wrappers, but you don't have to. None of those videos on my YouTube channel were using them. If you do, then you can always donate to them directly. You don't have to go through a middleman.

Reply 18 of 31, by ruthan

User metadata
Rank Oldbie
Rank
Oldbie

No, it was your standard, half answer at best..

It is your choice to use dgVoodoo2 or nGlide as Glide wrappers

Well most of people are using and will using in next 5 years Windows, but still is not good answer you can support both worlds WIn and Linux with nGLide, but chose just support only yourself, bad decision.

Im old goal oriented goatman, i care about facts and freedom, not about egos+prejudices. Hoarding=sickness. If you want respect, gain it by your behavior. I hate stupid SW limits, SW=virtual world, everything should be possible if you have enough raw HW.

Reply 19 of 31, by kjliew

User metadata
Rank Oldbie
Rank
Oldbie
ruthan wrote on 2021-03-29, 20:51:

No, it was your standard, half answer at best..
Well most of people are using and will using in next 5 years Windows, but still is not good answer you can support both worlds WIn and Linux with nGLide, but chose just support only yourself, bad decision.

Well, it might not be the answer you liked to hear. What kind of answer did you expect? Donation should be done wholeheartedly. If you don't like it, then I can't help.

It is not my problem how one chooses Glide wrappers. Both dgVoodoo2 and nGlide do not support Linux. They may run through DXVK and WINE but not native. The support for Linux is realized through OpenGLide, other OpenGL-based Glide wrappers and WineD3D. WineD3D is a key differentiator. Direct3D games also demand more time & efforts to qualify them on WineD3D. Hence, the donation pledge.

When one becomes donor, then I will support, as simple as that. I believe the value is great for those with huge collection of past PC games in the late 90's and early 2000's. You don't have to agree with me. That's fine.

Or, you can go directly to WineHQ and rant on legacy Windows support.

Last edited by kjliew on 2021-07-13, 06:36. Edited 1 time in total.