Main > Main Forum
Hardware 3D Acceleration In Mame
hbm*rais:
That doesn't seem to be true at all. Most of the games you mention aren't much more complex than an N64 or DC, and I can emulate both of these systems on my Athlon X2 3600 + onboard GeForce 6150. That's CPU, GPU, sound and all.
Hell, I could emulate a Dreamcast on my old AthlonXP 2200+ + FX5200 (although with frameskip) pretty decently. And a DC is a basically a Naomi with less memory.
Prop Cycle runs on a 24Mhz 68EC020. That should be 3 or 4 times more cpu power than a Neo Geo, tops. That's not a lot.
There is nothing impossible about emulating these "modern" CPUs on today's 2Ghz+ dual core host CPUs. Most of them are under 100Mhz anyway.
GPUs on the other hand are highly specialized. How many modern dual core CPUs you'd think it would be necessary to emulate even the most basic Voodoo or Riva128? I'm not talking about implementing software rendering, but actually emulating the GPU, register by register. That's a HUGE amount of processing power we're talking about. General purpose CPUs were never meant to that king of task.
--- Quote from: Jdurg on February 25, 2008, 01:20:31 pm ---The HUGE, MASSIVE thing that it seems EVERYBODY is this thread has ignored is the reasoning behind WHY most of these 3D games run slow and I'll give you a big hint about why they are slow and it is NOT because of the graphics. These games like Cruisin USA, Wargods, Carnevil, Area 51, Tekken, Killer Instinct, Prop Cycle, San Francisco Rush, Blitz, etc. run VERY slow because the main CPUs that run the game are incredibly powerful and fast CPUs compared to simple games like Pacman and Donkey Kong.
This has been proven by disabling video emulation altogether and seeing that the speed of the emulation didn't change at all. So by porting the graphics emulation to the 3D Graphics Card won't produce any positive change in the emulation and may just invoke some negative changes.
This is like saying that playing in an orchestra would be easy if you had a better trombone. Granted, the music you put out might sound a little bit better with a good trombone and there is a very minimal percentage of people that could put out something nice, but the truth of the matter is that the reason you aren't playing in an orchestra right now is NOT because of your trombone. :P
Now in regards to modern arcade games that run on PC hardware, it's aking to saying that you can easily install Macintosh software on a Windows system because they are both PCs. ;D
--- End quote ---
Jdurg:
--- Quote from: hbm*rais on February 25, 2008, 02:14:26 pm ---That doesn't seem to be true at all. Most of the games you mention aren't much more complex than an N64 or DC, and I can emulate both of these systems on my Athlon X2 3600 + onboard GeForce 6150. That's CPU, GPU, sound and all.
Hell, I could emulate a Dreamcast on my old AthlonXP 2200+ + FX5200 (although with frameskip) pretty decently. And a DC is a basically a Naomi with less memory.
Prop Cycle runs on a 24Mhz 68EC020. That should be 3 or 4 times more cpu power than a Neo Geo, tops. That's not a lot.
There is nothing impossible about emulating these "modern" CPUs on today's 2Ghz+ dual core host CPUs. Most of them are under 100Mhz anyway.
GPUs on the other hand are highly specialized. How many modern dual core CPUs you'd think it would be necessary to emulate even the most basic Voodoo or Riva128? I'm not talking about implementing software rendering, but actually emulating the GPU, register by register. That's a HUGE amount of processing power we're talking about. General purpose CPUs were never meant to that king of task.
--- End quote ---
If the version of Blitz on your Dreamcast and N64 used the exact same code as that in the arcade, then your point would be valid. The versions of Blitz being played on your N64 and DC have been COMPLETELY rewritten from the code that is used in the arcade. Therefore, the language they use is much easier to "translate" than that of the arcade. What you said makes absolutely no sense at all.
Think about emulation as a form of language translation. Playing an arcade game on your computer is akin to translating from one language into another. Emulating the arcade version of Blitz is like translating Ancient Sanscrit into Chinese. Emulating the N64 or the DC version of Blitz is like tranlating English into Chinese. Sure, it's not super easy to do, but it doesn't take nearly as much processing power (in your brain) to convert English to Chinese as it does Ancient Sanscrit.
NOT EVERY CPU ON THE MARKET IS THE EXACT SAME ARCHITECHTURE WITH THE EXACT SAME LANGUAGE IN THERE!!!!!!!!!!!!!!!!!!!!!!!
A 25 MHz CPU in one architechture may be equivalent to a 2500 MHz CPU in another architechture. If the setup and code contained with all CPUs were the same, then CPU speed would be everything and there would be no issues with installing a Mac OS on anything out there with a CPU.
Your argument is completely invalid. I HIGHLY suggest taking a look into CPU architechture and all the different CPUs that are used by arcade games. Plus, take a look at all the other processors on an arcade PCB and other input devices and realize that your computer's CPU has to emulate those as well and translate whatever language they used. You see, it's not that easy. ;D
brandon:
I'm not complaining here.. I am quite grateful to the creators of Mame for what they've done to basically create an entire community based around the software that they created. If they charged for Mame I would of course pay for it. All total I'm sure I've sent thousands on this hobby so far. If the Mamedevs called it quits tommorrow you wouldnt hear me complain. BUT I just dont agree with the arguement that taking full advantage of modern CPUs and GPUs is somehow going against the goal of "preservation" that Mame has set out to acheive. but then again.. I also don't buy the arguement that preservation is Mames primary goal. At least not anymore... I mean, lets be honest.. Pacman, Donkey Kong, Galaga.. etc are in ZERO immediate danger of "disappearing forever" let alone any of these 3D games in question. Hell, I can download most of those games on my cell phone for God's sake... Out of all the games in Mame how many games do you REALLY think are in danger of disappearing? 5% ? So I guess the other 95% of the playable games are a "side effect"? Please.. Mamedevs dont owe us anything and I'm perfectly happy with the way Mame was 4 years ago.. but seriously.. don't feed me a line of bull. Let's say suddenly every NFL Blitz PCB died tommorrow.. so what? Midway still has the original source code, schematics etc.. You think by porting it to Mame we are somehow saving it from impending doom?
brandon:
--- Quote from: Jdurg on February 25, 2008, 02:46:18 pm ---
--- Quote from: hbm*rais on February 25, 2008, 02:14:26 pm ---That doesn't seem to be true at all. Most of the games you mention aren't much more complex than an N64 or DC, and I can emulate both of these systems on my Athlon X2 3600 + onboard GeForce 6150. That's CPU, GPU, sound and all.
Hell, I could emulate a Dreamcast on my old AthlonXP 2200+ + FX5200 (although with frameskip) pretty decently. And a DC is a basically a Naomi with less memory.
Prop Cycle runs on a 24Mhz 68EC020. That should be 3 or 4 times more cpu power than a Neo Geo, tops. That's not a lot.
There is nothing impossible about emulating these "modern" CPUs on today's 2Ghz+ dual core host CPUs. Most of them are under 100Mhz anyway.
GPUs on the other hand are highly specialized. How many modern dual core CPUs you'd think it would be necessary to emulate even the most basic Voodoo or Riva128? I'm not talking about implementing software rendering, but actually emulating the GPU, register by register. That's a HUGE amount of processing power we're talking about. General purpose CPUs were never meant to that king of task.
--- End quote ---
If the version of Blitz on your Dreamcast and N64 used the exact same code as that in the arcade, then your point would be valid. The versions of Blitz being played on your N64 and DC have been COMPLETELY rewritten from the code that is used in the arcade. Therefore, the language they use is much easier to "translate" than that of the arcade. What you said makes absolutely no sense at all.
--- End quote ---
I doubt the dreamcast versions of Arcade ports are that different than the original arcade games. Dreamcast is basically a Noami. sure they may have had to use lower res textures or something because they had less memory but the point hbm*rais was making is that if you can emulate DC on a low to mid range PC then Naomi could be emulated on the upper end PCs.
Jdurg:
--- Quote from: brandon on February 25, 2008, 03:31:41 pm ---I'm not complaining here.. I am quite grateful to the creators of Mame for what they've done to basically create an entire community based around the software that they created. If they charged for Mame I would of course pay for it. All total I'm sure I've sent thousands on this hobby so far. If the Mamedevs called it quits tommorrow you wouldnt hear me complain. BUT I just dont agree with the arguement that taking full advantage of modern CPUs and GPUs is somehow going against the goal of "preservation" that Mame has set out to acheive. but then again.. I also don't buy the arguement that preservation is Mames primary goal. At least not anymore... I mean, lets be honest.. Pacman, Donkey Kong, Galaga.. etc are in ZERO immediate danger of "disappearing forever" let alone any of these 3D games in question. Hell, I can download most of those games on my cell phone for God's sake... Out of all the games in Mame how many games do you REALLY think are in danger of disappearing? 5% ? So I guess the other 95% of the playable games are a "side effect"? Please.. Mamedevs dont owe us anything and I'm perfectly happy with the way Mame was 4 years ago.. but seriously.. don't feed me a line of bull. Let's say suddenly every NFL Blitz PCB died tommorrow.. so what? Midway still has the original source code, schematics etc.. You think by porting it to Mame we are somehow saving it from impending doom?
--- End quote ---
Heh. What if your NFL Blitz Cabinet that you paid a LOT of money for suddenly stopped working because of something going wrong on the PCB? Good luck getting Midway to fix it for you.
How about if your Donkey Kong Cabinet started generating smoke when you turned it on? Do you think Nintendo would send out a repairman to help you?
Read through the source code of MAME. You'll see a LOT of documentation in there regarding the setup of the PCBs, how things worked, etc. etc.
I really get a kick out of all these people who say "why bother preserving it? There are plenty of copies of it lying around." I guess this is the same thing that people said of the 1952 Topps Mickey Mantle rookie card, or Amazing Spiderman#1, or Action Comics #1. Just because it's new doesn't mean it doesn't deserve to be documented. It just means that the rush to preserve it isn't as great as something that's 15 to 20 years old.
Besides, PCBs don't last forever, and neither do ICs. The problem with these is that they aren't like an old shirt where you can see things starting to fall apart and go bad. One day, you'll go to turn it on and it just won't work anymore.
With regards to being able to play it on your cell phone or X-Box, that's fine if you don't mind playing a port or a version of the game different than the ones you played in an arcade. But to tell people that they are the same thing is a bit naive. There are differences between the arcade versions and ALL ports out there. I don't know of a SINGLE game that is ported 100% exactly like the arcade version. (Except for possibly Neo-Geo games but those really don't count since the home version and the arcade version are the same cart!). To someone who is used to the way the arcade games work, they'll find each and every difference between the arcade version and any port you throw at them. Saying that they can't is like saying that a mother can't recognize her child out of a group of children.
Damn. I sound like a real ---tallywhacker--- here spouting off all this junk. :P ;D It's just that I've had all of these same thoughts before and wondering "Why can't MAME run faster? Why don't they do this? Why don't they use that? What's the point of doing this?". With a fair number of years of research, I began to understand why some things haven't been done and why what sounds like a simple correction actually isn't. It's AMAZING that MAME even exists and that it is so ---Bad words, bad words, whatcha gonna do? Whatcha gonna do when saint censors you?--- portable. It can run on nearly everything. Hell, I bet I could get MAME to run on my refridgerator if I wanted it to. (Heh. "FridgeMAME". :P ) This is because MAME has avoided getting tied into one type of hardware or operating system.
I too have heard the argument about using plugins and whatnot, but I think that's kind of icky and makes bug fixing quite difficult to do. (Since MAMEDev would have to have every single graphics card plugin out there that is used, as well as the same driver versions and hardware versions of the GPUs). Plus, I've used Project64 before and found it to be a complete nightmare with regards to getting it to run all the games right. Ugggh.