Build Your Own Arcade Controls Forum

Main => Software Forum => Topic started by: slonkak on January 24, 2008, 01:42:52 pm

Title: SDLmame extremely slow on linux
Post by: slonkak on January 24, 2008, 01:42:52 pm
Here is a question that has probably been answered elsewhere, but I can't find it.

Using SDLmame on linux, ROMs run extremely slow, almost as if they're in slow motion.  I am using the software renderer (not OpenGL).  I found that using the -autoframeskip helped trememdously for a lot of ROMs, but some of them still suck.  So now the million dollar question.  If these games originally ran on 4MHz processors (and others just as slow) why can my 2GHz machine not run them?

Is using OpenGL _absolutely_ necessary to get all ROMs running at normal speeds?
Title: Re: SDLmame extremely slow on linux
Post by: slonkak on January 28, 2008, 09:47:27 am
Seriously, are there no smart people on this board?
Title: Re: SDLmame extremely slow on linux
Post by: u_rebelscum on January 28, 2008, 04:31:36 pm
Seriously, are there no smart people on this board?

Not many Linux users, I guess.  (Although I'm pretty sure there are a few; not me though.)

Hmm, might want to ask at the SDLmame (http://www.bannister.org/forums/ubbthreads.php?ubb=postlist&Board=8) forum for more people in the know.
Title: Re: SDLmame extremely slow on linux
Post by: slonkak on January 28, 2008, 10:27:45 pm
I will check that site out (once it comes back online :()

In the meantime, does anyone know about how this stuff works?  For example, they originally ran on 4MHz machines, but they can't run on today's 3GHz machines.  I hate to believe that even in the most UNoptomized state that newer machines can't perform the calculations in time to get smooth gameplay.  What are these emulators doing that is so special?
Title: Re: SDLmame extremely slow on linux
Post by: u_rebelscum on January 29, 2008, 07:37:02 pm
I will check that site out (once it comes back online :()

ZDnet was having problems (again) yesterday.  It seems up again today.

Quote
In the meantime, does anyone know about how this stuff works?  For example, they originally ran on 4MHz machines, but they can't run on today's 3GHz machines.  I hate to believe that even in the most UNoptomized state that newer machines can't perform the calculations in time to get smooth gameplay.  What are these emulators doing that is so special?

You're comparing apple and oranges.  If you named which games you've tried, maybe we could give the specifics, but there are many things that can be going on.

I can't tell if you tried openGL (or if your card drivers even can let you :dunno), but if openGL runs faster, then it's pretty aparent something in the video is slowing things.  (The skipframes speedup hints it is, too.)  What's your video card and driver? (Not that I can really help you with the driver part. :-\)  What resolution are you running mame at?

If the game is as old as it sounds, mame might be simulating discrete sound.  This is very CPU hungry, and it's simulating something without a "hz" speed at all.  It's simulating true analog circuits; there are other analog circuit simulators out there that are more CPU hungry than mame simulating the same circuits.

Also, even if no discrete sound, mame has to emulate all the other chips on the board, each running at it's own hz speed.  Second CPUs, sound chips, video chips, I/O chips, etc.  Not that these usually cause a 1000x slowdown, but 10x-20x is normal, and 50x-100x are not uncommon.

What's probably going on is a combination of the above, but that's a guess.