VOGONS


First post, by Minuous

User metadata
Rank Newbie
Rank
Newbie

Whenever you stop moving the joystick, the penguin runs to the right. The joystick has been calibrated under Windows and works fine with other games. I've tried changing the timed= variable in the config file, it makes no difference. Tried this under Win98 and now under WinXP.
I suppose what's needed would be some way (eg. in the keymapper?) to change the mapping of positional values between the host and guest.

Reply 4 of 18, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

or if you are brave, try changing the internal resistance of the emulated joystick

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

Reply 6 of 18, by Minuous

User metadata
Rank Newbie
Rank
Newbie

Those settings you mentioned do appear to work under V0.72. (Speed seems about right but it is difficult to tell whether it is running at 4.77MHz like it should be, it would be better IMHO to measure the speed in MHz rather than arbitrary "cycles".)
But the joystick doesn't seem to work at all under V0.73, not even the firebuttons (tested with Pango and Alleycat).

Reply 12 of 18, by mr_bigmouth_502

User metadata
Rank Oldbie
Rank
Oldbie

Well, it would make it easier to determine what a game needs for speed, as you could simply look at the system requirements, instead of trying to guess how many cycles to use... 😉

Reply 13 of 18, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

DOSBox counts instructions, not clock cycles, so variations in the clocks consumed by the particular instructions being executed make the relationship fuzzy between DOSBox cycles and MHz. However, approximations can be made, such as the utility that ih8regs made for the purpose.

Reply 14 of 18, by Minuous

User metadata
Rank Newbie
Rank
Newbie

So, is there some reason that DOSBox *doesn't* calculate the proper timings of each instruction in cycles, like every other emulator I can think of?
I assume it's because this would make the emulation overhead slightly higher, but is this really such an issue in 2010? To lose a small bit of speed in return for greatly improved accuracy and timing would seem to be worthwhile.

Reply 16 of 18, by wd

User metadata
Rank DOSBox Author
Rank
DOSBox Author

So, is there some reason that DOSBox *doesn't* calculate the proper timings of each instruction in cycles, like every other emulator I can think of?

Which PC emulator are you talking about that has cpi accurate emulation?

Always appreciated: post a patch at sourceforge.

Reply 17 of 18, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

The earliest PC games are the ones that could most benefit from counting clocks, I think. When there was only 4.77 MHz, and not much worry about how the code would scale to different clock rates, it was possible to get away with counter loops and other such poor practices. Fortunate, then, that the lowest emulated CPU speeds have the most host CPU to spare for the extra processing that counting clocks would incur. Something like cputype=8088_clocked would be nice to have, but don't hold your breath waiting for someone to code it.

Reply 18 of 18, by Minuous

User metadata
Rank Newbie
Rank
Newbie

>The earliest PC games are the ones that could most benefit from counting clocks, I think.

Yes, they are the ones I play the most 😉

>Which PC emulator are you talking about that has cpi accurate emulation?

I meant emulators in general, rather than specifically IBM PC emulators.

>Always appreciated: post a patch at sourceforge.

I might do this in the near future then...