Arena and Gravis Ultrasound in DOSBox

Off topic discussion. Talk about gaming and life in general. Be awesome to each other.
Post Reply
User avatar
Posts: 244
Joined: Sat Jan 27, 2018 10:43 am

Arena and Gravis Ultrasound in DOSBox

Post by MrFlibble »

A while ago I realised that using Gravis Ultrasound emulation in DOSBox can produce superior sound quality, and since Arena supports GUS for sound and music, I set off to try it out.

The game is known to be very demanding of base memory, and a user in another forum reported that he had to drop GUS for SB because of frequent Insufficient Base Memory crashes.

I tried out several DOSBox builds and setups, and I believe to have achieved more or less stable performance with GUS using DOSBox ECE. I have a build from 29 January this year (r4426), and have not tested the game with newer builds, but I'd like to think they would work fine too.

I downloaded GUS patches/software from here and installed them in DOSBox with this guide. The Arena version I'm using is the freeware 1.06 floppy release from Bethesda.

The game ins installed into C:\ARENA directory on the mounted C: drive. I created the following batch file to start it from the root:

Code: Select all

config -set "cpu cycles=max 100%% limit 21000"
config -set cpu core=simple
config -set dos ems=emm386
A -sa:240 -si:5 -sd:3 -ma:240 -mq:5 -md:3 -sgf1digi.adv -mgf1midi.adv
config -set dos ems=true
config -set cpu core=auto
config -set "cpu cycles=auto 7800 100%% limit 23880"
A few notes on these settings:
  • cpu cycles=max 100%% limit 21000 will cap cycles at 21000 -- this seems like a good value to play on max detail settings, not too fast and not too slow
  • I tried out the possible CPU core values, and simple gives better performance than normal, while I did not like dynamic because it produced clicking noises with sound playback sometimes
  • I have no proof that emm386 emulation yields an improvement, but this seemed like a good choice and it appears to work fine. Note that he official DOSBox 0.74-3 release does not support this option
I also use a GLSL shader that imitates a CRT screen called crt-lottes-fast.subtle+gain.glsl which I got from here.

Post Reply