Hey there, I'm posting to follow up on a conversation in this thread from last year regarding the 1998 game Gunmetal. I've spent the past several months messing with this game myself and had actually talked with DracoNihil about a VM being the best method to get the game working. After finding most VM software to be inappropriate for this goal, I turned to QEMU hoping it'd be good. QEMU turned out to be a poor option as it has PS/2 input bugs in the current stable release as of me writing this (6.0.0) that made the game impossible to play, which sucked as it seemed everything else about the game worked fine. I eventually stumbled upon an option that has worked perfectly for me (with the caveat that it's Linux only): DOSEMU2.
I had to compile from the github repo for it since I had stumbled upon a couple bugs and worked those out with the developers, but DOSEMU2 has been the best option for me to get Gunmetal to run (almost) perfectly. DOSEMU2 features KVM support which is what is necessary to get the timing bugs of the game to not occur. I haven't been able to compile QEMU nightly yet (I've had trouble with doing that) but if it can be compiled with proper KVM/Hyper-V support depending on the OS, it could presumably also get Gunmetal running properly as they reportedly had fixed the PS/2 bugs.
Oh right, and for Gunmetal I've also been running it within a MS-DOS 6.22 VM session (DOSEMU2 can act like a proper VM on top of having the option to use a native DOSBox type thing), and while it's probably not fixing anything, I've had success in using the DOS/32 extender in place of DOS/4G 1.97. Anyways, for now DOSEMU2 seems to be the best way for anyone seriously wanting to play Gunmetal, to actually play it without performance issues (looking at you, DOSBox). You just have to compile it then enable the KVM support for everything (I can share my config if one is confused on that).
It is really annoying how there's no utilities out there to fake proper old CPU timing or RDTSC whatever like how some games may have expected it. Gunmetal is the worst offender of this sort've issue. It's driven me up the wall as I've been hoping to share this game with more people. But it's like, super impossible to do, even if you solve the installation part. I'm just hoping Gunmetal can get more exposure through something like ADG, so that people who know a thing or two about reverse engineering games will learn about it and can think of a solution to getting the Windows version to run properly, without having to shove that stuff into an emulator/VM.