Fce Ultra Gp2x 0.3


noname

Still Fresh
Joined
Dec 5, 2005
Messages
10
I've updated my GP2X version of FCE Ultra to 0.3, you can now actually use it to play games. ;)
Should run games fullspeed at about 280 MHz. I know that's one hell of an overclock to play NES games, but I'm working on it...

Changes since 0.1:
  • Changed codebase to FCEU 0.75 (Since it's about 3 times faster internally)
  • Sound works (although it's quite choppy atm.)
  • Rewrote the input so that diagonal controls work on the gp2x
  • Removed the happy hack screen blitting
Plans
  • Write an integrated GUI
  • Change from SDL to Rlyeh's SDK
More info and downloads here.

Cheers
NoName
 
YAY!

(sorry about the over-exuberant topic in the General section, but this was just sitting here teasing us all, with no ability to click the topic)

Great job!

BTW, is there any way to change the button config?

Thanks :)
 
This emu is already pretty damn good. Sure sounds need to be cleaned up and speed is still a little slow, but doesn't merely switching to Ryleh's SDK speed things up in itself? This emu could be fullspeed with high compatibility before we know it.
 
No offense, but 280mhz for NES sounds pretty insane, surely NES should work pretty well at lower speeds even if it is a rough port?

oh well, good luck trying to get it faster anyways :D gotta love some of the NES games

Trashman: my GP2X doesnt even reach 280mhz :(
 
when we see nes running fullspeed on the gba with 16Mhz, 280 looks insane ;) thats true.
but i think this is still kind of straight port with no arm optimizations yet.
 
when we see nes running fullspeed on the gba with 16Mhz, 280 looks insane ;) thats true.
but i think this is still kind of straight port with no arm optimizations yet.

# CPU Type: modified 6502 8-bit (NMOS)
# Clock Speed: 1.773447MHz (PAL) or 1.7897725MHz (NTSC)
# Processor: 8-Bit PPU (Picture Processing Unit)

Remember, the minimal amount of power needed to run an emulator is 10x the amount of the original...

... that must have been written completely in assembly or something... goddamn...
 
Last edited by a moderator:
Yeah the NES emulator that runs on the GBA is pretty damn nice and pretty much flawless, wonder if theres a way to port that? they are all ARM cpus after all.
 
when we see nes running fullspeed on the gba with 16Mhz, 280 looks insane ;) thats true.
but i think this is still kind of straight port with no arm optimizations yet.


Yeah especially when NES runs near full speed on a GP32 at 133 MHz, and it is an old version.

I am starting to think linux is bogging things down. Most emus, even simple ones are so slow on the GP2X compared to the GP32. I thought things were supposed to be faster on the GP2X than on the GP32. We need to get rid of linux.
 
Last edited by a moderator:
Yeah the NES emulator that runs on the GBA is pretty damn nice and pretty much flawless, wonder if theres a way to port that? they are all ARM cpus after all.

Yes, but it's also designed to remove every 4th scan line .. the screen resolution is different y'know ;)
 
Last edited by a moderator:
Yeah the NES emulator that runs on the GBA is pretty damn nice and pretty much flawless, wonder if theres a way to port that? they are all ARM cpus after all.

Yes, but it's also designed to remove every 4th scan line .. the screen resolution is different y'know ;)

I'm not sure that is necessarily true, because while playing you can change back and forth between a scaled image and an unscaled image where you use L and R to scroll the screen up and down. I assume the only way this is possible is that the emulator is in fact rendering a full scan of the frames.

BTW, the source for PocketNES is available: http://www.pocketnes.org/downloads.html

Since I know approximately nothing about programming though, I can't comment as to how well it would port.
 
Last edited by a moderator:
when we see nes running fullspeed on the gba with 16Mhz, 280 looks insane ;) thats true.
but i think this is still kind of straight port with no arm optimizations yet.


Yeah especially when NES runs near full speed on a GP32 at 133 MHz, and it is an old version.

I am starting to think linux is bogging things down. Most emus, even simple ones are so slow on the GP2X compared to the GP32. I thought things were supposed to be faster on the GP2X than on the GP32. We need to get rid of linux.
First of all, the whole deal with the overclocking was more meant as a measurement and/or preview. The games now run about full speed fs0 at 40% higher CPU clock. Sure, I've got some optimizing to do but give me a break, I more than doubled the frame rate between the 0.1 and 0.3 releases. My goal is of course running games fullspeed at 200 MHz, or lower.

And about linux: let's just say it isn't linux fault that my port of FCE Ultra is slow, it's the fact that it's pure c and uses SDL. The emulator running mostly fullspeed on a 133 MHz GP32 you're talking about is probably little john, an emulator which has atleast the complete CPU emulation done in pure ARM asm and uses libs that access the GP32-hardware directly.
Linux essentially just makes developement and porting alot easier for us actually coding stuff for the machine. Perhaps a little too easy since people, like myself, can make quick, dirty, half assed ports of almost whatever runs on linux on little more than a rainy afternoon. This might be a reason why things feel slower on gp2x. But give it some time, when the gp2x is as old as gp32 is now I'm sure the emulators will be alot faster than they are on gp32 today.
 
Last edited by a moderator:
Back
Top