by ezelkow1 on Tue Jun 30, 2009 7:00 pm
It depends on what your trying to port, what it was originally programmed in, and what its dependencies are. Most of the things that have been done so far dont require much effort, they are all based on sdl or have no extra graphics components/libs necessary, they just require a simple recompile with a dingoo toolchain. Usually they also have to rework some of the code to work with new keymappings, resolutions, and audio settings, but those usually are just quick code changes.
If what you want to port has extra requirements then obviously you are also going to have to compile any extra dependencies that it has that are not standard libraries.
If what your trying to port has any ASM code at all, thats where it really gets tricky since you pretty much cant use any of that previously written code. You have to either rewrite all the asm to work in mips, or discard it completely which would probably then lead to a big performance drop. That is generally the issue with emulators since to get good performance most of them contain some asm that takes commonly used functions or lengthy unsupported opcodes on the original platform and rewrite them to work on the new host cpu. Thats why most of the emulators that have been ported so far, snes9x, scumm etc, dont use any asm and thats why they were so easy to port since they are just based on SDL and dont require any asm.