GP32 Series60 Virtualization.


Takashi

Still Fresh
Joined
Nov 21, 2003
Messages
23
Well, it IS 4AM over here, but I was having this talk about OSes, and I said there was a chance GP32 could be made to run code frm other devices. We talked about GPAdvance, and a idea started to brew.

You see, Jakko Blinker (Phantom in this forums) once said, on Gamasutra and relative to his Mobilecore cross-platform framework under Symbian:

The "app" is basically a DLL. The "app" must supply a method named NewApplication that returns a pointer to a CEikApplication. From here, a typical Symbian application instantiates a "document" (derived from CEikDocument) which has one or more "controls" (derived from CCoeControl). To behave nicely under the Symbian OS, we will implement our game as a control.

If this is true to all games, then Symbian executables are "blind" to the world. They are a subset of a C++ class, that can be reverse-engennered up to some point(a plug-in?). One needs only to fetch and comply to this export:

Code:
// exported functions
EXPORT_C CApaApplication* NewApplication() { return new CSymbianApp; }

And all following calls to Symbian are made relative to the pointer. Now, Symbian has lots of stuff, but what games use are key, screen, sound, filesystem and timers functions. Now, we have the prototypes of sutch functions that can be found in open source code, so we can fill the missing calls. the remainder of the unused stuff would be assigned empty/return(1) functions as one would advance in more complex programs.

Problems:
- It's not this simple : Actually, the program creates a Document class, and then a Control class, and _there_ it calls functions. This needs to be taken in account.
- 12-bit Framebuffer. Wrong size, Wrong resolution. Headache.
- Memory : You can forget N-gage games (many, if not all, require 8Mb free) but some simple homebrews have a chance.
- Sound : I don't have a clue how this will work.
- SIS/EXE/APP file formats : no clue, either.
- Sounds a bit impossible to do without using bits of Nokia SDK to build a correctly-sized structure, and that might break terms of use.
- Direct Access. Naughty coders might want to access the cell-phone framebuffer/controls/memory card directly, and find nothing.

Oh well. This doesn't help mutch, does it? Anyway, it's just just some night rambling. I'd like to try and see if the concept works (I need a GP32 for this, and I don't have it), but I'll let it go by you guys first.
 
Takashi posted on Jul 17 2004 at 04:02 AM said:
Well, it IS 4AM over here, but I was having this talk about OSes, and I said there was a chance GP32 could be made to run code frm other devices. We talked about GPAdvance, and a idea started to brew.


Not going to happen I'm afraid, Series 60 too powerful for emulation, and probably too complex for a port, and I'm not even sure the GP32 has enough RAM.

You are better off just trying to port the games in the conventional way rather than porting Series 60
 
Last edited by a moderator:
Back
Top