(this requires about 500000 cycles for good ingame FPS) Which is nonsense for 15000 cycles, but might be something you'd encounter trying to run say Descent 2 in SVGA on a Raspberry Pi or so. I'm guessing the difference is what happens if your computer can't keep up with emulating the indicated cycle count. Adding "limit" doesn't seem to benefit a slower processor.) So "limit" is added to keep it from running too fast.- (edit for clarification: If you have a slow CPU and you use "MAX" by itself, it will still cap at your CPU's max speed. It seems more likely that it is for fast modern CPU's that are capable of emulating DOS faster than the programs expect. Your description of the purpose of keyword "limit" for slower CPU's, doesn't seem to match what it does. I was just curious as to why "limit" was an option for "max" when "fixed" will offer the same result? I understand the need to have "fixed" and the various uses for "max". What I get, is exactly what I should expect based on the documentation. Now when I use the second option (cycles=max limit 15000), my DOSBox screen will say that it is operating at "max 100% cycles", but in reality it is limited to 15000 cycles and the characters walk across the screen just like they do when using (cycles=fixed 15000). Which is also expected, because I'm playing an older game with a much faster CPU than was possible at the time. If I use (cycles=max), the characters sprint across the screen. At this speed the characters simply walk across the screen as they are supposed to. When using the first example (cycles=fixed 15000), as you say, the game operates at exactly 15000 cycles and that's what it states on top of the window. My computer will produce well over the 15000 in question. You covered the options well, but it seems the differences you point out only occur when you do NOT use the "limit" keyword.Ĭycles = fixed 15000means: no matter what, emulate exactly 15000 cycles per millisecondĬycles = max limit 15000is a shortcut for max 100% limit 15000, which means: use 100%* of my CPU, but never exceed 15000 cycles - so effectively if your CPU is capable of emulating more cycles, then it will be capped to 15000 if your CPU is too slow, it will be capped to "100%" of load*. Wolfenstein 3D or (very notably) games from X-Wing / Tie Fighter series. This happens to surprisingly many games, e.g. fixed or max % (whatever works for you better). In this case it's advisable to avoid auto and set e.g. ** - when starting a DOS game, leave fullscreen (Alt+Enter) and look at the window title, if the game is working extremely slow and title says MYGAME - 3000 cycles/ms - DOSBox Staging, then it's likely a "real mode" game for 386. But you can test it by ramping up load beyond 100% - it goes up to 105%. That's because real 100% guarantees starving other threads/processes and will result in audio and input issues. * - emulator internally scales down the percentage by 0.9, so setting 100% really targets 90% of CPU load for emulation thread. cycles = auto (default) - shortcut for auto 3000 100% (3000 is good choice to make 286 games run not-too-fast, but might be a bit slow for newer games or software).cycles = auto 6000 - shortcut for auto 6000 100%.older DOS games for 8086, 286, 386)**, and switch to 80% for DOS software using protected mode (mostly software for 386 and newer CPUs). cycles = auto 6000 80% - use 6000 cycles for DOSBox shell and software running in real mode (e.g.cycles = fixed 15000 - run emulator exactly at 15000 cycles.cycles = max 50% - run emulator at 50% of CPU (look at your CPU usage e.g.As for desktop CPUs - any x86_64 CPU manufactured in last 12 years or so is capable of rather comfortably emulating any DOS game you can throw at it (at least in DOSBox Staging), so on desktops/laptops it's not relevant IMHO. Raspberry Pi or another device on the slower side. Keyword limit is useful mostly for compatibility with old or slow CPUs (which is relevant if you use e.g. cycles = max limit 15000 is a shortcut for max 100% limit 15000, which means: use 100%* of my CPU, but never exceed 15000 cycles - so effectively if your CPU is capable of emulating more cycles, then it will be capped to 15000 if your CPU is too slow, it will be capped to "100%" of load*.cycles = fixed 15000 means: no matter what, emulate exactly 15000 cycles per millisecond.max (how much of CPU load the emulation thread is aiming at).cycles (in simple terms: how many instructions are emulated per time period).You have two knobs that correlate to each other:
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |