Hi all,
Anyone have a recommendation on a good video card to use with Mame? I really don't want to run any new PC games, just emulation. My computer came with one of those integrated video chip thingies but I assume a real video card would work better. Also does a separate sound card help Mame run and/or sound better than the intergrated sound chips do? If so again does anyone have any suggestions?
Thanks
itobandito
01-11-2007, 04:56 PM
well your video graphic card really doesn't matter because mame runs 100% on cpu power. being that you have an intergrated video card I would assume(not 100% sure) having any seperate card would be less taxing on your cpu letting it spend its power on doing the emulation. As for audio on your motherboard that really doesn't take too much of your cpu so I wouldn't worry about it. Also more system memory is always a plus when dealing with mame. MK2 for example ran like crap until I put a gig of memory in my system. That was a while ago though.
Trebuken
01-11-2007, 05:10 PM
The only thing I would look for in a video card is a TV-Out option. MAME games can look more like the real thing when played on a TV (crt), than on a PC monitor.
I have a Radeon 9500 in my MAMEputer which works great, but even that is more than MAME needs.
TripppsK
01-15-2007, 04:57 PM
Is MAME currently running on your machine? If so, is it slow, choppy, or both? What type of games are you looking to lay?
If it is running slow I would 1st look at how much memeory you have and how much more your machine can handle. I would say that most MAME games should run on a newer machine with the right amount of memory.
Ed Oscuro
01-16-2007, 02:34 PM
MAME won't use much of your graphics card's power. You can use its memory as a place to store textures/graphics, which should theoretically improve performance a bit, but I've never noticed much of an improvement. I would turn that option on, but not buy a new video card for it - I would definitely want something above integrated video, though.
Your first question will be what era games you want to play. Obviously, mid- to late-nineties 3D arcade games are out of the question for everybody right now. For most late 80s and many early 90s 2D games you can get by with most anything on the market right now, including a Celeron.
My interpretation of MAME's issues follows, if anybody wants to read that...first, though, the bits you wanted to know:
Most important parts for MAME
1.) CPU with high speed and lots of L1 and L2 cache size. A Celeron will have something pathetic like 8KB L1 cache; you want at least 16KB or 32KB (which is what the Intel Core 2 Duo has). Then on top of that you get L2 cache (since it's bigger, it makes more sense to market about it and thus you can find this information more easily on a vendor's site) - anywhere from 256K to 4MB (shared) for processors in use today. I think old AMD K6/2s had 128K of L2 cache; needless to say you wouldn't want to emulate with that. Dual cores aren't used by MAME, and don't plan on them being used any time soon. Summary: Don't get price-slashed processors for intensive MAME applications, and don't worry about dual core for MAME. However, 64-bit is good, starting now, pretty much (http://aarongiles.com/?p=200).
2.) Main RAM. For whatever reasons, MAME can use quite a bit of this. No less than 512MB for a serious MAMEr, and 1GB is becoming the standard.
3.) Video card. Something that isn't integrated video, so that it has a little bit of onboard RAM. You shouldn't need a lot since it seems to be used as a sort of primitive frame buffer only.
Issues in MAME architecture vs. PC architecture
The short explanation is that MAME strives for 100% accuracy in emulation, which means that images should be 100% the same as they are in arcades. Long explanation...even on a single video card, different drivers can change the way graphics are rendered (for better or worse; there's been some exposes on that issue, with card manufacturers releasing drivers that increase framerate at the expense of a noticably worse picture). That is not acceptable to the MAME team, and while many gamers couldn't care less that is how they roll (it probably helps their legal standing as developers of emulation only and not rip-off programs stealing a company's IP).
As a result, everything that would be done in an arcade game's video card (for example) is done on your CPU.
[Video cards are actually very powerful vector processors (similar to the type of CPU in supercomputers, in fact), but their specialized function, a lack of familiarity with these designs for anything but video programming tasks, and the issue with dual core CPUs mentioned a bit later means that they can't be harnessed for MAME .]
Anyhow, MORE information about the things that influence MAME the most (decided to bump this down the page because it's more information than most would need):
CPU. Speed and L1/L2 cache size. The more data cache on the chip the better. Don't buy a Celeron for MAME unless you don't want to play more demanding games. Overclocking will help a bit, but it would be better to buy something with more data cache first. The main reason for this is that many arcade games were programmed with encryption. Some dedicated chip onboard would translate encrypted data - I assume the data stored in long-term ROM - into unencrypted data to be stored in RAM and used with CPUs. However, you don't have a dedicated encryption chip; the computer itself must run the encryption algorithm on any data, which means that many more instructions are being run on each piece of data than the main CPU would need to on the real arcade board, and you need more fast cache to get all those instructions together. Grabbing MAME's instructions about unencrypting the data from main RAM would be very slow, so you want that in cache (much faster).
Furthermore, as far as I am aware MAME is currently not being written with dual core CPUs in mind due to architecture and overall design philosophy issues that entails. Your best bet would probably be the fastest single core CPU you can find with a lot of cache memory.
On the other hand, a dual core CPU could give a bit of a 'cushion' for the core running MAME, as the other one can end up working on other stuff. You could run a distributed computing application on one core and MAME on another (even in Windows XP this seems to be automatic) with no appreciable hit to MAME.
Naturally, the motherboard and everything else in your PC is subject to the CPU you buy.