What language are emulators made of? Visual basic? CC? can anyone explain, im just curious?
What language are emulators made of? Visual basic? CC? can anyone explain, im just curious?
C++?
C#?
It's the preference of whoever is developing it.
Well, according to their SourceForge.net profiles:
VisualBoyAdvance is written in Assembly and C++
ZSNES is written in Assembly and C
ScummVM is written in C++
AdvanceMAME is written in Assembly, C, and C++
Nestopia is written in C++
DOSBox is written in C and C++
I don't think that C or C++ are better suited for emulators, it's just that C is usually credited with being the most well-known language in the world, and it would appear that many of the people graciously making us emulators follow one of the basic formulas: Write the base in C, then use another language to perform more complicated tasks and speed things up.
Jpcsp is written in Java.
wow Language C is mostly used.
the best langayge for emulators in my opinion is english
I believe the majority of emulators are coded in C++ because it is easier to emulate hardware functions through it than through a higher logic language.
The Wheel of Time turns, and Ages come and pass, leaving memories that become legend. Legend fades to myth, and even myth is long forgotten when the Age that gave it birth comes again.
- James Oliver Rigney Jr. aka Robert Jordan (God rest his Soul.) 10-17-1948 to 09-16-2007
Mostly C and C++ depending on the author. Mainly because the performance you get from the languages can be hard to beat by something that is interpreted. That's not to say that a language like Haskell, having the ability to be compiled or interpreted, would beat C or C++ performance wise. That just has to do more with C being essentially portable assembly and C++ inheriting some of that. The ones that utilize x86 assembly are somewhat shooting themselves in the foot a bit if they don't port the code to another language, but as things currently stand I think the situation requiring that outcome is a ways off. Unless of course Microsoft gets crazy and drops 32 bit support in Windows in one of the next releases, similar to when they dropped 16 bit support in the past. So then you'd have to kiss ZSNES goodbye and any other emulators that make use of that language until they got around to updating it. For ZSNES's situation though I doubt an update will be released even though they claim to be working on it.
C++ is beginning to look more and more like C# though at least to me. So chances are someone may use C# at some point in the future for an emulator. Chances are it won't be for any system that demands anything extremely resource intensive to do accurately if an author goes that route. Byuu's example here of using some of the upcoming C++0x, I guess more appropriately named now as C++1x, can be looked at to form your own opinion but I digress on this point.
http://board.byuu.org/viewtopic.php?f=10&t=1046
Some are done in Java like the ones on the main website under the ROM sections if I recall correctly.
There are also some written in Python and Javascript that I know of but those are just more or less tests so far.
Like this Apple II emulator being in Python:
https://github.com/jtauber/applepy
And I do know that someone who goes by the moniker ggalitz is doing a GBC emulator in Javascript.
I'd say as computers get faster and more efficient ways are found to utilize the resources we build them with, the language will matter less and less in the end as far as future written emulators are concerned though.
Last edited by Zieg30CT; 14th-August-2011 at 20:51.