VOGONS


First post, by unorig

User metadata

* Motherboard:
dell dimension 4400 (specific motherboard unknown)
* Processor type and speed:
Intel P4 1.8 ghz
* Amount and type of RAM:
SD 768 mb
* Video board w/ RAM amount and type:
nvidia 6600 GT, 128 mb ram
* Sound board:
Sound Blaster Audigy 2
* Operating system:
XP SP 2
* Game name (and version, if applicable):
TES Arena 1.6 (disk version)
* Sound mode used:
Sound Blaster 16 (for both effects and music)
* Video mode (Software, OpenGL, Direct3D, or Glide, and resolution):
Surface, fullscreen, fixed, '800x600' (smaller than 800x600 on lcd, actual size ~640x480)
* Version of emulator (for VDMSound, probably 2.0.4 or 2.1.0; for DOSBox, 0.58+):
DosBox 0.63, Mirekluza build

Steps already taken/Description/Reproducibility of Problem:
First I should probably mention that this isn't an attempt to make the game work, merely to improve the sound. I have tried most of the different configurations and this seems to run best (quite smoothly), even at 66000 cycles dynamic core (however, increasing to this speed makes sound almost unlistenable). One question: is this (66000 cycles) equivalent to a 66 mhz, as one would assume, or do cycles mean something else?
The game runs acceptably at 20000 cycles, but slows down quite a bit in foggy weather. I thought attempting to emulate a dx2 running at 66 mhz (which the game was more or less intended for) would be an improvement, so I wanted to increase cycles. Mostly I would just like to improve sound, though.
Currently I am using sound blaster 16 emulation. I tried MIDI for music (default settings, or win32), and it seems fine, but causes huge delay and other artifacts in (sometimes complete disappearance of) the soundblaster effects (ingame settings don't allow for MIDI), so I chose not to use it. The actual soundtrack was also different, (there is one for MIDI and one for SoundBlaster), and I had always listened to the soundblaster version when it was initially released. The midi version seems more similar to the music for Daggerfall.
I've tried many different prebuffer, block size, and opl rates, but continue to encounter stuttering at certain points, often whenever right-clicking an item in inventory or navigating a menu in a shop. It is also much worse in fog or snow. Reducing the quality of sound rate/opl rate to 11025 can often prevent stuttering (at least at low cycles; I forget exactly), but at the cost of sound quality, (the dungeon theme is particularly grating to hear), so I would prefer to use 22050 if possible.
Another question: if I continue to use the Mirekluza build, how can I change the maximum extended memory from 63 or 64 to 128 mbs, in case this improves sound? There is a patch, feature, or something like it from the Korean CVS Build (I don't remember the name precisely; it may be ykhwong), but I read some about building a dosbox executable manually in the wiki, and was mostly scared off, at least for the time being. I might try it later if all else fails.
I considered trying a different sound emulation, but those which aren't soundblaster clones seem like a nuisance to set up, with no set instructions, (either included or online), and are said to be slower or more lagged than soundblaster (in one thread from this forum). I've already searched for help for most of these questions in the forum, and understand a bit more than I did at first (I'm familiar with the readme), but remain confused on how to improve sound.
I changed the ingame dialog box setting from fade/dissolve to blink off, and this has also helped a little, I think, but I'd like to achieve continuous unbroken sound if possible. I've updated most drivers (not sure on bios/os/low-level drivers; might try these later if I can find them (not sure where to look exactly, or of manufacturer)). I tried to update sound driver maybe last year, but there have been no updates since about initial release of soundcard.
I recently reread an old faq for arena (UESP faq), and noticed that 610-630k free lower memory is recommended to run, (if this is not had, the author indicates stuttering in sound could result on native soundblaster 16 (unemulated in that case)). I found the thread on 'arena' and 'conventional' memory here, but am unclear, if as Qbix says the dosbox mem command returns inaccurate results, how best to determine how much lower memory is free, or if it's possible or needed to change this for dosbox.
I disabled unneeded services and other sound emulation types. I've read most of the relevant threads and articles here and elsewhere (wikis and similar). I set dosbox priority to highest, again in the conf file. I changed to 16-bit color mode.
I considered installing gravis ultrasound/timidity, but threads indicated this might not work, or would run slower than sound blaster. How should I go about installing it, and is it worth the trouble? It seems to be the only other sound option in arena's native setup which covers both effects and music (using separate card-emulations for music and effects seems to produce noticeable volume disparity which makes the game basically unplayable (effects very loud)).
OpenGL modes seem to currently run much slower than surface, but changing an environment variable (?) may be needed for OpenGL. Should I try this, and will it possibly help?
Some people (Minimax and others) suggested trying version 0.61 or 0.60. Do Mirekluza and Wong keep older versions of their builds? Should I try Wong's build instead, and what features of Mirekluza's does it include?
Should I try to use the dos mouse driver included with arena (mouse.exe), perhaps with com or serial passthrough? Threads indicate this type of configuration is much slower, but I thought I'd ask just in case.
Another question (sorry for so many): If soundblaster 16 can emulate earlier versions (v1 and pro), then can audigy directly emulate (without additional software) sb16? If so, how can I configure this with dosbox?
Should I disable advanced text services and other options in the pif file for dosbox?
Does increased memory help that much, or are the limits, lag, and sound stuttering caused primarily by the processor? Is there a way in dosbox to in essence loadhigh soundblaster, mouse, dos, and everything else?
Offtopic, but can VDMsound be used with turbo, moslo, or similar programs? How so? Also, how to reduce the reoslution of programs run with VDMsound?
Sorry if this seems disorganised, but I had been using the same settings for several weeks and mostly forgot about them, then by accident while rereading the UESP faq, came across advice for configuring autoexec, config, conventional memory usage, and soundblaster 16.

Reply 1 of 4, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Uhm let's see.

first of all 66000 cycles is maybe a bit too high.
Sound might not be of the best quality when using the dynamic core.
So try the regular core (normal) with much less cycles.

the soundblaster 16 is backwards compatible with earlier models although you can order dosbox to emulate an older model as well. (sbpro for example is the one used in 0.61 and 0.60) Just look in dosbox.conf.

the Mem command in dosbox is accurate enough for what you are doing. I was probably refering to the shared ems/xms pool. Dosbox has more than enough low memory free. Maybe even too much!
you could try loadfix -8 before starting the game.

you should try overlay as output. not opengl. opengl might result in stutering sound.

old versions of dosbox are available on the download page incase you want to try them.

Water flows down the stream
How to ask questions the smart way!

Reply 2 of 4, by mirekluza

User metadata
Rank DOSBox Moderator
Rank
DOSBox Moderator

The number of cycles does NOT correspond to Mhz on the real computer... There is no direct relation between number of cycles and Mhz (it depends on what the game is doing).
You also refer to a build mine - not sure what you mean... I may have done a few public builds, but as far as I remember it was when trying something on beta board...
In any case I have not done any public build recently...
Or is there another "mirekluza"?

Mirek

Reply 3 of 4, by unorig

User metadata
Rank Newbie
Rank
Newbie

Thank you both for your help. (And for creating and upgrading DosBox, etc, etc (that's enough slavish noobism on my part for the moment, at least to my taste, and should ward off all but the most very-fearsome of the forum-trolls (Did I say that aloud?))).

To explain, I typically use about 20,000 cycles (I tried many different settings, in increments of about 500, some weeks ago, and it seemed best). Part of the problem was that I might have tried these with Direct3D mode, though, which seemed much faster taking into account its higher resolution, but which (I suspect because of the uselessness of my LCD or some other factor) can't seem to support any lower resolution than about '800x600' (effectively a very-pixellated 1024x768 after the bizarre remapping).

I use surface mode always, after trying all the others (direct3d was also useful, if one can stand the pixellation at higher fullscreen resolutions (I didn't like the performance hit from the shaders/scalars). I think overlay doesn't allow a small fullscreen resolution (similar to the original game), at least on my useless lcd (only supports 1280x1024, 1024x768, and 800x600; everything else results in 'input not supported' error). (Of course, I've always used fixed fullscreen res in the conf as well, so it must be a monitor or driver problem (am using nvidia drivers ~78.03, so it must be some other drivers which don't allow it to function properly)). Should I install a newer version of directx? The current version I use is directx 9.0c, but may be about a year old.

Another question: Recently I downloaded a (possibly new) version of the driver for my monitor just in case, but somehow, windows doesn't recognize the .inf file as a valid driver. (Error message to that effect). How do I make it do so? I've tried all the standard methods from device manager, found new hardware wizard, etc. Sorry if this is rambling. I'd considered the proverbial 'consulting the manufacturer', but the chances of a reply make the attempt seem somewhat dubious, or less than hopeful.

My question as regards sound blaster was: can I (with the right software or drivers) trick Arena into 'thinking' (sorry if I state this misleadingly) a Soundblaster Audigy 2 is a SoundBlaster 16, provided that Creative makes its soundcards backward-compatible, or is this what DosBox already does? My question is: if this is not how DosBox functions (I assume it emulates an entire soundcard (e.g. sb16 or earlier) wholly by software, and then outputs results to windows audio service/etc), then could there possibly be added a sort of throughput (similar to those for serial port/mouse/joystick/etc) the user can choose if he has a (modern) card made by Creative? Could this then eliminate need among soundblaster-users for (presumably slower?) software emulation of legacy soundblaster cards? It's more a feature request than anything else, except that DosBox might already function in this way. (?) Or is this too 'virtual pc'-ish and not really the purpose of an emulator? Or should I 'consult Creative'? 😀

I only stated 66000 cycles in case I should want the emulator settings to most closely match the requirements of the original game. I wasn't yet clear about what cycles meant, so thank you for explaining.

I apologize for calling the build Mirekluza. It was actually Gullikoza. I've tried the adaptive core-speed setting in this build, and it seems to help. It generates smoother sound, but warps the time of the sound more, since it accelerates or decelerates with the core speed.

One question: how do I determine the optimal core speed, apart from sound and animation? My idea is that I don't want to unnecessarily restrict the core to slower speeds where unnecessary, since in rain, fog, snow, shadow, or night-time this results in extremely lagged performance, but also don't want it so fast that under ordinary unmodified daylight conditions, animations and monster movement are much faster than intended. This was why I asked about cycles earlier, and whether they corresponded to actual mhz.

I've tried tweaking most every setting (particularly those I understood after reading threads here or those which didn't require additional software or drivers) in dosbox.conf several weeks ago. I think the reason I didn't typically use normal core speed was that I couldn't achieve high cycles, and assumed high cycles (~33,000 or 66,000) were necessary to accurately emulate the original game. Thank you for clearing this up. I will try normal again, and see how it runs.

I tried version 0.60, and somehow it was slower with the same configuration settings. I'm not sure why. Anyway, it was worth a shot.

Also there were new versions of Gullikoza and Ykhwong builds, so I tried these. Gullikoza seems noticeably faster than before, and has !new features!. Not to disappoint, I'll be sure to query everyone within range about each of them in just a minute. 😀

In the meantime, what is this 'loadfix -8' you speak of? Is it an emulated dos command, or specific to DosBox, and what is its effect? (Should I reread the faq, in case I've forgotten?)

About new features under Gullikoza August 29, 05 build: mostly I wanted to know about UMB. I understand that it provides access to upper memory area (above 640k), and may be (?) another scheme for managing additional memory, akin to EMS and XMS, and recall the old dos command 'dos = loadhigh, umb', which I mostly used rather unwittingly solely on the premise that loading dos into high memory was GOOD and leaving programs to run from lower memory was BAD, but I don't understand what effect setting <UMB> to <max> in the conf file of Gullikoza's (or for that matter, Ykhwong's) new build would have. (There are three settings: true, false, and max, for UMB, if I recall). Please explain if possible. Which should be used under given conditions?

Also, the original minimal requirements for Arena indicate 2 mb of EMS and 4 mb ram. Does this imply that I don't need XMS emulation, or may even hinder or hurt performance by enabling it? I forget how this works specifically. Aren't they independent memory-managers? How to learn if Arena uses XMS? Or does the fact that it requires 2 EMS and 2 extra ram imply that it must necessarily use XMS (or some other memory manager)?

Another question: if DosBox has 634 kb of lower memory free and 63 or 64 mb additional extended/expanded free, is this the total for its own operation plus that of programs running under DosBox. or solely for other programs? This has always confused me. Is there a hidden option somewhere to increase (actual) ram+vram usage for DosBox shell so as to conserve processing power, or to somehow swap ram/vram usage for processor usage? (I've already changed setting in conf to 63 mb). Or does emulation require heavy use of processor merely by nature?

Another question: does the adaptive speed configuration (for example, 'cycles <= 60000') under Gullikoza build work only with the dynamic core, or with the normal core as well?

One last question, again surely entirely off-topic and superfluous. (Sorry to be long-winded). Is it worth buying the newer versions of moslo, or are all of them equally buggy and useless? (even provided one uses them with VDMSound or similar). I can only find a demo for version 1.5, which can't run batch files (hence is questionable for arena, which always executes through a batch file after installed (in practice an old version (2.1 from ~1997, which permits use of batch files, packaged with ultima series) ran choppily)), so I don't know if the newer versions (3.x, for instance) are actually useful.

A few clarifications:
I stated: Should I disable advanced text services and other options in the pif file for dosbox?
What I meant is: or is this done by default by dosbox itself, or is it harmful, or else unnecessary?

Since the sound artifacts usually occur when I navigate a menu or click to select something, would using a serial/com passthrough for mouse input be useful, and if so, how to set this up?

Should I try Gravis/Timidity for sound, and if so, which version of Timidity is optimal? Would installing gravis drivers/timidity cause conflicts or other difficulties with existing drivers or softare for actual official soundcard?

Thank you for your patience.

Reply 4 of 4, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

well technically and now I know why there is no support for all those experimental features.
So disable automatic cycle updating.
Changeoutput to overlay and then find your optimum cycles!
Best is to change the decoder(core) to normal.

When you have done that then you can report your problems again.
If they aren't fixed by that.

the 63 mb setting is for games running inside dosbox. Dosbox itself takes more than that.
umb shouldn't really matter. I think true is fine enough. The lack of documentation is a work in progress

XMS can technically be bad for the performance but in dosbox there is no overhead if xms is on or off when using ems memory.

Gravis/timidity have nothing in common in dosbox.
timidiy is a midi emulator for linux.
Gravis is a type of emulated soundcard in dosbox.

Water flows down the stream
How to ask questions the smart way!