VOGONS


First post, by CaptainKidd

User metadata
Rank Newbie
Rank
Newbie

I looked through the forum, FAQ and Wiki for quite some time and did not find exactly what I needed. Please forgive me if this is obvious.

From the FAQ:

What is the relation between the cycles and my computers processing power, so that I can configure DOSBox to become a computer with xx MHz?
* There is no exact relation between the number of cycles DOSBox emulates and the CPU power emulated. In other words there is no possible way to set DOSBox to emulate exactly a 66MHz or a 33MHz machine.
* The only way to set DOSBox to the best number of cycles, is trial and error, or by letting DOSBox try and find it for you by setting cycles parameter in the conf file to auto or max.

From List of Slowdown Utilities :

[DOSBox] emulates a 486 processor so by default it already runs "slow".

Anybody have any good rules of thumb for cycles settings for various games? I think a list would be superb. I wonder if a timer application could be made to synchronize on-screen events with an external timer.

I recently got a copy of Castle Wolfenstein that looked okay from 90 to 120 cycles, but I could be significantly off. I played it only on the Apple II around 25 years ago. Trial and error may not work for me...

Basically, if it is set to be a 486 by default, how was this done? Can it be made to be (approximately) something else. Something in the ballpark.

Oh, and one more thing. I did not see a way to fine tune the cycles. F11 and F12 (especially F12) changes the value in large jumps. How can I get a specific value while running? Sorry if that's somewhere obvious. I couldn't find it.

Reply 1 of 8, by Kreshna Aryaguna Nurzaman

User metadata
Rank l33t
Rank
l33t
CaptainKidd wrote:

Oh, and one more thing. I did not see a way to fine tune the cycles. F11 and F12 (especially F12) changes the value in large jumps. How can I get a specific value while running? Sorry if that's somewhere obvious. I couldn't find it.

cycleup = nnn […]
Show full quote

cycleup = nnn

Amount of cycles to increase with keycombo.

Default is 500. Setting it lower than 100 will be a percentage.
cycledown = nnn

Amount of cycles to decrease with keycombo.

Default is 20. Setting it lower than 100 will be a percentage.

Never thought this thread would be that long, but now, for something different.....
Kreshna Aryaguna Nurzaman.

Reply 2 of 8, by DosFreak

User metadata
Rank l33t++
Rank
l33t++

No computer is the same unless they are EXACTLY the same.

Same model, same drivers, same software, same hardware.
If the above then yes you could probably create a list. So this would work fine on consoles.

For a list to be effective for the PC the "list" method is basically impossible. You would have to have DOSBox on each installed PC upload cycles results to a main server. It would also have to query the local computer for types of hardware/software/processes, and include that information as well. So that would require money for the servers. There's also the privacy issue.

DOSBox is NOT set to "486" by default. DOSBox approximates a 486 and on the wide range of hardware out there the average performance of DOSBox is 486 level. The default cycles setting of DOSBox is 3000 cycles for REAL mode games which most should run fine on a 486SX at 25mhz which DOSBox running at 3,000 cycles should ROUGHLY be around the level of.

How To Ask Questions The Smart Way
Make your games work offline

Reply 3 of 8, by eL_PuSHeR

User metadata
Rank l33t++
Rank
l33t++

[MOVED]

Intel i7 5960X
Gigabye GA-X99-Gaming 5
8 GB DDR4 (2100)
8 GB GeForce GTX 1070 G1 Gaming (Gigabyte)

Reply 4 of 8, by h-a-l-9000

User metadata
Rank DOSBox Author
Rank
DOSBox Author

If the cycles and core are set to the same value on two different computers and both can handle it (not 100% CPU usage) then the game will run at the same speed on both.
3000 cycles means that it tries to execute 3 million instructions per second, independent of the host.

So a list could be made what cycles value is needed to play smooth, but consider that a game sometimes needs more cycles i.e. when many units are on the map / many enemies need 3d rendering, and there are other games that consist of different parts that overload the host with a given cycles value in one mode but need the high cycles in another.

1+1=10

Reply 5 of 8, by Xelasarg

User metadata
Rank Member
Rank
Member

I've tried to measure the speed of DOSBox some time ago and came up with these cycle values:

2000 = 286/12 MHz
4000 = 386SX/25 MHz
8000 = 386DX/40 MHz
12000 = 486/DX 50 MHz
14000 = 486/DX 66 MHz

But as said before, you cannot really compare cycles to MHz in a satisfying way. Usually it's best to adjust DOSBox with the cycles up / down function (I use 500 cycles up/down for fine tuning).

"What's a paladin?!"

Reply 6 of 8, by CaptainKidd

User metadata
Rank Newbie
Rank
Newbie

Thanks for the great info! I think my estimate for Castle Wolfenstein was a little on the slow side.

When PCs get to the point where emulated games run with ease, it should be easier to make ballpark estimates. Maybe someday a game list could have a "cycles" field for a recommended setting. (probably based on the specs of the computers a particular game was designed to be run on)

I can imagine that some people want EXACT replays, but as DosFreak mentioned, there are still technical barriers to that. Even in the old days, I'm sure different PCs handled differently. I'm just looking for somewhere in the ballpark. I wouldn't want to play a game that was too easy or too hard because of my own mistake.

Reply 8 of 8, by Gene Wirchenko

User metadata
Rank Member
Rank
Member

I had not played much with the cycles setting, but I recently did so. Bear in mind that I was going for speed only since I use DOSBox to run some non-game 16-bit software. (Not an approved use; do so at your own risk.) I came up with a value that worked for my app and systems: 70000. My desktop system is dual-core; I am not sure about my laptop. At this cycles value, I notice some occasional stutter on YouTube music on my desktop system, but that is acceptable to me.

I state this only to suggest that the correct value for your game may be considerably higher than the default 3000.