Results 1 to 3 of 3
  1.    #1  
    I happened to come across of a video of tomb raider for PDAs and Pocket PCs and was just wondering since some PDAs are touch screen and they already have touch controls so could this somehow be emulated onto newer devices with the same control scheme? I know that there was a psx emulator for pres a while back, but how would games like this that were made for mobile devices function if they were ported?
  2. jeffa00's Avatar
    110 Posts
    Global Posts
    156 Global Posts
    Current devices don't have the horsepower (CPU mainly) to emulate recent systems. For an emulator to be successful, the host system needs to be much faster than the original hardware since it has to do its own work, AND pretend to be the emulated hardware at the same time.

    Porting on the other hand is a different issue. If you port a game, then you are actually re-writing bits of the code to run on that system and not spending a lot of CPU cycles pretending to be a different bit of hardware.

    Some things are easy to port and something things are darned near impossible.

    With the PDK you can compile C and C++ apps for the Palm device. For parts of the code that is all you have to do. If you have a bit of standard C code, for example, you re-compile for the new processor, and you're done. The problem is that a HUGE percentage of a real program isn't just standard C code. It is low-level calls to specific hardware, at least in games.

    It is much easier to port a game that was originally built with eventual porting in mind. The code can be organized in such a way that the standard bits are in one place and the hardware specific bits are isolated into another place. Of course most devs who are trying to port don't have that luxury. They get what they get as a starting point.

    Graphics/sound/control libraries can help with this too. The PDK includes SDL which is an abstraction layer on top of actual hardware calls. Let's imagine for a second that we have a function on the video card called foo (programmers often use foo as the sample function name). On hardware A you call it as foo(int x, int y, string message). On hardware B you call it as foo(string message, int x, int y). On hardware C you call it as foo (int y, int x, char[] message). Don't worry about the details if you aren't a programmer, just notice that how you pass in the info is different. An abstraction layer like SDL means that you don't worry about how the hardware wants to get foo. You just interact with SDL and it defines the call as foo(int x, int y, string message). YOU (as the programmer) don't worry about the actual calls that go to the hardware. You just call the SDL version of foo. The folks who make SDL handle the translation from their version of foo to the various hardware versions.

    Long story short, if a game was written in C or C++ and used SDL, then it should be pretty easy to port. If instead of using SDL it was written for specific hardware, then it could be very, very difficult to port.

    I hope that didn't confuse everybody.

    The gist of my answer is that emulating recent systems is not likely and porting may or may not be possible depending on how the original was written.

    Of course for porting you absolutely have to have the original source and the legal right to use it...

    I suspect you will see a fair number of ports come to WebOS now that the PDK is beginning to circulate. The ABSOLUTE KEY in getting this to happen is for game companies to see LOTS of WebOS owners BUYING games. Folks like me who develop for WebOS mainly as a hobby are willing to accept that we aren't going to get rich writing apps for these devices, but big game houses cannot afford to spend time on something that won't yield a big return on that investment. There are some very good games written by folks like me, but since we have day jobs that DO pay our bills, we can't put the same amount of time in that a big house can. We also tend to be "Lone Wolf" developers vs. giant teams at the major game companies. FYI I haven't written a game yet (just an eBook anthology), I'm just using myself as an example of a hobbyist/part-timer. I will eventually write a game for WebOS, but it won't be in the same league as Tomb Raider.

    A really good example is the helicopter game. It is a really good game, but the graphics are super simple and it is a basic 2D game. One guy can write a game like that. Compare that with Need For Speed. The odds of finding one person who could both code that thing and provide all the art are almost zero. If you could find that one person, it would take years and years for him to complete it.

    Another great example is Dungeon Hunter. It was ported, and when you finish you get to see the credits. When you see the number of people who were involved simply in the porting, you get an idea of how big the job can be...

    I apologize for rambling so much here. This pretty much turned into a blog entry...
    Original science fiction, fantasy and comics for WebOS - Galactic Beacon: Volume 1
  3.    #3  
    Thanks so much! That really helped me understand a lot more about developing and everything and good luck in your future programming
    Last edited by Trever; 08/01/2010 at 10:33 AM.

Posting Permissions