GP2X Possible N64 Emulator Port


God Ginrai posted on Dec 15 2005 at 01:44 PM said:
Try Corn v0.3 on that crappy computer. ;P

Corn was an assembly language nightmare. Porting that to the GP2X would not be much easier than starting from scratch. Come up with a better example.
 
Last edited by a moderator:
there is a new N64 emu for Dreamcast which runs in its eraly status mario at 7-9 fps right now. Other games go up to 12 (without sound).
So it is possible also for the gp2x, but its hell lot of work!
 
I tried (with tinyGSDL) and failed.

It's really complicated, because there are massive gaps in the functionality of tinygl.

Maybe a better programmer will do it one day. But why bother. It'll run like crap.

Best to go back to the previous thread and see what we concluded.
 
Ravnos posted on Dec 15 2005 at 03:56 PM said:
God Ginrai posted on Dec 15 2005 at 01:44 PM said:
Try Corn v0.3 on that crappy computer. ;P

Corn was an assembly language nightmare. Porting that to the GP2X would not be much easier than starting from scratch. Come up with a better example.

Dear God, FIRST of all, you don't know if Corn's code was a nightmare, because it ISN'T open source. And second of all, I NEVER suggested porting it.

It works as a perfect example, because it wasn't an example of something we should port, but an example that proved emulation WAS possible with low specs. Corn's existance and ability proves my point itself.
 
Last edited by a moderator:
God Ginrai posted on Dec 15 2005 at 02:39 PM said:
Ravnos posted on Dec 15 2005 at 03:56 PM said:
God Ginrai posted on Dec 15 2005 at 01:44 PM said:
Try Corn v0.3 on that crappy computer. ;P

Corn was an assembly language nightmare. Porting that to the GP2X would not be much easier than starting from scratch. Come up with a better example.

Dear God, FIRST of all, you don't know if Corn's code was a nightmare, because it ISN'T open source. And second of all, I NEVER suggested porting it.

It works as a perfect example, because it wasn't an example of something we should port, but an example that proved emulation WAS possible with low specs. Corn's existance and ability proves my point itself.

Please, re-read the comments in this thread. (Amost) Nobody said it was impossible. What was said was that:
-playable emulation is unlikely
-it will require coding the emulator almost entirely in ARM assembly language
-even with that it will probably still run like crap

If you want this, code it your own damn self. It gets tiring reading the same damn threads over and over here from people asking for difficult-to-emulate machines and then adding "well I can't actually contribute anything but somebody else should do it!" If someone wants to do it, great, and if they can pull it off, kudos to them, but I'm not holding my breath and neither should you.
 
Last edited by a moderator:
And also, Corn ran at VERY playable speeds, proving my earlier point. Like before you'd have to code crap that somewhat worked to prove those second two points.

And YOU should be the one rereading. Read my FIRST post in this topic before you flame me.
 
God Ginrai posted on Dec 15 2005 at 08:14 AM said:
I won't take your word, because I don't trust it. When zodttd released OpenTTD for the GP2X, you posted in the topic basically the same thing about the PSX, saying that it would be crap and you wouldn't be able to run even the simplest games at 3-4 fps if you're lucky. And now the PSX emu is up to 50 fps on some games. I wouldn't trust you at all.

As for the others, I see what you guys are saying, but like xafier said, you can't tell for sure unless you try.
Bear in mind that DaveC's definition of playable is of a very high standard.

I highly doubt that a N64 would be playable unless someone really goes at it in full assembly and both cores. The chances of that happening are almost NULL.

Corn may not be opensource but it is pretty common knowledge that the emulator was highly optimised for the x86 and most of it was in assembly which is a nightmare in itself for such a complex emulator.

Everyone here would love a fully playable N64 emulator but we just cant see it happening in the near future. Maybe in a couple of years then someone may have a crack at it once all the secrets of the hardware have been ripped open.
 
Last edited by a moderator:
I'm trying to, but like I said, I have NO experience with SDL, and I probably won't be able to get it working. So don't be such an ass about it.

EDIT: This is directed at Ravnos, not yaustar
 
Hey everyone, sorry to revive the post, but I've been mailing with the guy who wrote Mupen64, just wanted to let you know about his opinion on the topic:

Summary for anyone who can't be bothered to read all the mails:
He says it might be possible with HLE for some games (like Mario64 !), but it will really hard work for anyone who want's to do this.

So here's the mails:

I Wrote:
Hi there,
just wondering, some people over at gp32x.de have
been dreaming about a N64 on the GP2X, which is a Dual core Linux-powered Gaming handheld,
(Running two ARM Processors at 200Mhz, probably safe to run them at 266, and
it's got 64Mb of ram (32m each processor) ).
So, mainly Emulators are coded for this thing,
(already hase working NES, SNES, GameBoy, Megadrive, NeoGeoCD _and even psx_
Emulators!) so I wanted to
ask you if you consider it possible to run a N64 Emulator on that kind of hardware.
Well, it would be nice if you could drop me an answer, (although i guess
it'll be impossible unless a lot of it is recoded in
assembler, eh ?)
I would have said no but considering there's a psx emulator that already
runs some games at 50-60 fps, i don't think it's completly impossible.

More infos on the gp2x: www.gp2x.co.uk / www.gp32x.de

Reply:
Before answering to this, i'd like to know if this
thing has any 3d hardware ? It'd be very hard to do
this without 3d acceleration. I've written a software
renderer and it's running at about 5fps on an AMD64
3000+.

Concerning the core, the n64 cpu is very similar to
the playstation one except, it's 3 times faster and it
has 64 bits registers which means each opcodes has to
be simulated with multiple 32 operations. So,
emulation of the core alone needs much more than 3x
the power required by the playstation cpu emulator.
The emulation of the cpu has to be made on only one
cpu. There's nearly no way it can be multi threaded
efficiently. Other hardware can still be emulated on
the other cpu (including the gpu).

I Wrote:
Heya,


> Before answering to this, i'd like to know if this
> thing has any 3d hardware ? It'd be very hard to do
> this without 3d acceleration.


Nope, no hardware 3d acceleration...

> I've written a software
> renderer and it's running at about 5fps on an
> AMD64 3000+.

Ugh, Doesn't sound very promising then, i guess i
hoped the 2nd CPU could be
used dedicated to emulate the GPU

> Concerning the core, the n64 cpu is very similar
> to the playstation one except, it's 3 times faster
> and it has 64 bits registers which means each opcodes has
> to be simulated with multiple 32 operations. So,
> emulation of the core alone needs much more than
> 3x the power required by the playstation cpu
> emulator. The emulation of the cpu has to be made on only
> one cpu. There's nearly no way it can be multi
> threaded efficiently. Other hardware can still be emulated
> on the other cpu (including the gpu).

Well that kinda makes it sound very unlikely for the
project to be done i
guess :( , would've really been awesome...

So, if someone were to write/port a N64 Emu probably
the best approach would
be to use one processor for the core, and the other
one for hardware (sound,
gpu) emulation ? And probably both CPU's will be too
slow to handle it...

Reply:
I wouldn't say it's totally impossible. Actually, i
think it may be possible if it's using heavily HLE
technic for some simple games like ultrahle did. It
should be possible for games like mario64... But it
won't work for some more complex games like OOT. You
should also remember that most optimization technics
are using some caches that requires RAM... It can be a
great challenge but it'd be really tough and the guy
who would attempt to do this shouldn't mind about the
possibility that it can possibly not work in the end.

Edit: By the way, "he" is: hacktarux at yahoo dot fr
 
Last edited by a moderator:
If anyone's serious about trying for N64 emulation, I think they're gonna need to make/port one badass dynamic recompiler, and get that 2nd core to smoke doing HLE 3d rendering...
 
Back
Top