BizHawk icon indicating copy to clipboard operation
BizHawk copied to clipboard

[F.Rq.] Faster DOSBox-x presets

Open coolkirby2000 opened this issue 2 months ago • 4 comments

PCem's TAS fork added faster processor options up to 2 GHz a few days ago, allowing it to run early 2000s Windows games without CPU-bound lag.

BizHawk already has presets up to P3 300MHz, but why stop there when there are real Pentium IIIs up to 1.4 GHz, starting as early as Dec 2001 with Tualatin? We should keep feature parity with PCem so Windows users also have an easy way to TAS these games, making use of the P3 that DOSBox-x already supports.

The 300MHz preset is intended to represent 1999, but Dec '99's IBM PC 300PL and 300GL supported up to 866 MHz P3s, as well as up to 1GB RAM, and a factory install option of a 32 MB VRAM S3 Diamond AGP 4X. DOSBox-x only supports the weaker S3 Trio 64, so any extra CPU speed would help overcome it and run some games at full speed, such as these Win98 games (System requirements from PCGamingWiki unless otherwise linked):

  • realMyst: Nov '00, PII 450 / P3 500 MHz, 16 / 32 MB VRAM
  • Max Payne: July '01, PII 450 / P3 700, 16 / 32 VRAM
  • Gutterball 3D: July '02, PII 333 w/ 3D card
  • 007: Nightfire (pre-v5.8): Nov '02, P3 500 MHz / 1.0 GHz, 32 VRAM
  • Halo: Combat Evolved: Sept '03, P3 733, 32 VRAM
  • D&D: The Temple of Elemental Evil: Sept '03, P3 700, 16 VRAM
  • Call of Duty: Oct '03, P3 600 / 800, 32 VRAM
  • Big Rigs: Over the Road Racing: Nov '03, P3 1.0 GHz, 32 VRAM
  • Counter-Strike: Condition Zero: Mar '04, P3 500 / 800, 16 / 32 VRAM

Increasing the clock speed to 2 GHz has already allowed games to be TASed without lag in PCem such as Gutterball and Streets of Rage Remake, even with PCem's weak emulated GPU.

For VRAM, 8 and 16MB are already hacks not supported by real Trios, so it's not a stretch to also support 32 or 64MB for this GPU, since no better card is emulated by the core.

If we stick with real IBM desktops from specific years, later ones with P3s have reduced clock speeds. Others switch to P4 or ship with less than 16MB VRAM. We could look into another PC manufacturer for the next preset, or a machine like 2001's NetVista A22/IBM 22xx, which supports up to a P3 1.3GHz and 512MB RAM. It only has a 16MB Vanta M64 card, but it's reasonable that a 2001 gamer would add a 32MB VRAM GPU to play Max Payne on High settings, and we can do the same for the preset. Given the above list, higher than 1GHz may be premature for 2001, so this WIP sample table may need to increase in speed more slowly:

  • 2000 - IBM 300GL (866 MHz, 512MB, 32MB S3) [rounded up from Dec '99]
  • 2001 - IBM NetVista A22 (1.3 GHz, 512MB, 16MB VRAM) [or 32MB again]

We could also remove the year/real desktop requirement if it becomes burdensome.

Also, if Win9x seems limiting, there is a program called KernelEx that can make some 2000/XP games run on the older OS.

coolkirby2000 avatar Nov 12 '25 05:11 coolkirby2000

Some of these titles would have polygon explosions like Emperor's New Groove below. How would something like this be resolvable if these newer presets are added since they also target the 3D titles?

⚠️ FLICKERING WARNING ⚠️

https://github.com/user-attachments/assets/4ac8dbfa-4b2a-447e-b024-acdf7826ca8c

Spikestuff avatar Nov 12 '25 08:11 Spikestuff

I've had trouble with kernelex with bizhawks current dosbox configs. It must be because of the low hardware it supports. I don't know if its necessary for midnight club 2 pc though. A game i always wanted to tas.

InfamousKnight avatar Nov 12 '25 13:11 InfamousKnight

Ok, we can set a custom amount of cycles for Pentium 3 and hope it would work fine.

But what about GPU? Sure, we can set the amount of VRAM up to 16 MiB, but games don't depend on VRAM alone. Can we increase the clock speed for GPU?

MoskovchenkoD avatar Nov 15 '25 18:11 MoskovchenkoD

DOSBox-x supports 3dfx Voodoo emulation, allowing for 3D results like this in W98. This capability should be exposed to BizHawk users too, with maxmem set to true. Glide support, also on that page, could be useful too to support more games. This might fix games like Emperor's New Groove that are otherwise within the 1999 preset's system requirements (W95, 200 MHz, 32MB RAM, 8MB VRAM, DX7) but currently behave like in the video @Spikestuff linked above.

coolkirby2000 avatar Nov 19 '25 18:11 coolkirby2000