2nd Cpu, Utilised Much In Emulators?


Gadget

Member
Joined
May 16, 2006
Messages
247
Does anyone know if the 2nd CPU is used much if at all by existing emulators?
 
use the search button dude... it's been discussed millions of times.
 
Gadget posted on May 31 2006 at 02:23 PM said:
Does anyone know if the 2nd CPU is used much if at all by existing emulators?

This was dscussed a while ago, the guys who have worked on emus said that its easier to emulate with one CPU as your have more control over timings between chips in the system being emulated.

I'm putting together a 3d game engine that uses the 2nd CPU.
 
Last edited by a moderator:
Nah, but if you imagine what have been if they squashed both cpus together and built a 400mhz cpu ..... :p

erm, just day dreaming
 
Wolfsclaw posted on May 31 2006 at 11:39 AM said:
Nah, but if you imagine what have been if they squashed both cpus together and built a 400mhz cpu ..... :p

erm, just day dreaming

I know you are in a happy-fun world, but see the first link in my sig, it is on the actual chip they use, almost all the GP2x's cores (Video, Both ARM's, Scaler, LCD controller, SD controller, USB Host) are inside that chip. (those outside are the RAM, and the USB 2.0 Slave chip, and the TV-Out Encoder Chip.)

The MMSP2 is nowhere near being used to capacity, in speed, optimization, or options in use.

Just look at the picture to see what all is inside the GP2X, I don't really think that 200mhz is all that much to gain with the GP2X, it is better to develop for because it is open and inexpensive, that will make the emulation better than a 500mhz processor.

We don't even have Hardcore Homebrew really off the ground yet either. Linux is getting in the way of the truly experienced Coders, DrMD by Reesy is a good example of an emulator that will be much better once Linux is knocked out, or at least dumped before the program runs, then re-booted once you are done gaming.

There is plenty of raw power, 4x the DS for chrissake's, and the documentation is light-years ahead of the PSP.

Feel good about the future, wishing for more raw Processing power is kind of pointless.
 
Last edited by a moderator:
nubie posted on May 31 2006 at 10:56 PM said:
Wolfsclaw posted on May 31 2006 at 11:39 AM said:
Nah, but if you imagine what have been if they squashed both cpus together and built a 400mhz cpu ..... :p

erm, just day dreaming

I know you are in a happy-fun world, but see the first link in my sig, it is on the actual chip they use, almost all the GP2x's cores (Video, Both ARM's, Scaler, LCD controller, SD controller, USB Host) are inside that chip. (those outside are the RAM, and the USB 2.0 Slave chip, and the TV-Out Encoder Chip.)

The MMSP2 is nowhere near being used to capacity, in speed, optimization, or options in use.

Just look at the picture to see what all is inside the GP2X, I don't really think that 200mhz is all that much to gain with the GP2X, it is better to develop for because it is open and inexpensive, that will make the emulation better than a 500mhz processor.

We don't even have Hardcore Homebrew really off the ground yet either. Linux is getting in the way of the truly experienced Coders, DrMD by Reesy is a good example of an emulator that will be much better once Linux is knocked out, or at least dumped before the program runs, then re-booted once you are done gaming.

There is plenty of raw power, 4x the DS for chrissake's, and the documentation is light-years ahead of the PSP.

Feel good about the future, wishing for more raw Processing power is kind of pointless.
Wait... from the link you recommended, are you saying that there is actually only one CPU, but dual core? I checked out the MMsp2 diagram, and it has two ARM cores in there. o_O
 
Last edited by a moderator:
Nope, its not. Dual Core = Both CPUs can access the same RAM adresses. Our CPU does not allow this. You need some workarounds to do this and this slows down.
 
The common mantras of 'Linux is in the way!' etc. are a bit overblown-- the GP2X hardware is very, very capable even running the Linux-based OS. I speak from experience that the ARM920T even at its stock 200 MHz speed is capable of amazing workloads with terrific speed-- the OS does little to get in the way except in fairly rare scenarios where low-level hardware accesss is more beneficial. Even the often-touted as "bloated" SDL library can be made to run EXTREMELY fast.

The loss of not being able to neatly work with the ARM940T right now is not a huge disadvantage, albeit not a huge problem. The MMSP2 was not custom designed for GPH or the GP2X, it was selected as a quality SoC that would fulfill the needs of a portable game system and entertainment device and it handles that role in exemplary fashion. Right out of the box the 940T does enormous good in aiding the 920T with video decoding and playback, allowing realtime decompression and playback of extremely stressful video/audio streams, even HDTV content in MPEG-4/MP3, formats some modern PCs have to work rather hard to play!

At any rate I don't doubt that sometime in the not-too-distant future decent means of communicating with the 940T are devised and a bit of 'middleware' (e.g. a library) to ease operation of the 940T like a typical SMP processor comes into existance and use of the 940T becomes more widespread. Even though it is not a powerhouse due to memory and cache restrictions, it is capable of giving a comfortable boost to many programs in the future.
 
NinjaFae posted on May 31 2006 at 03:05 PM said:
Wait... from the link you recommended, are you saying that there is actually only one CPU, but dual core? I checked out the MMsp2 diagram, and it has two ARM cores in there. o_O

No I am saying it has 5 cores, 2 of them are our ARM9 processors, the rest as you can see include Hardware Video Decoding, and various video/camera related things.

The GP32 was a lone ARM (correct me if I am wrong).

@Epicenter, can you give me the low-down on what the Video Frame Decoder is doing? I thought the Frame data calculations are done in hardware by a custom core, the 940T isn't doing much work at all.

Granted it does the stream processing and set-up, but heavy calculations are fully offloaded, aren't they?
 
Last edited by a moderator:
Epicenter posted on May 31 2006 at 11:50 PM said:
The common mantras of 'Linux is in the way!' etc. are a bit overblown-- the GP2X hardware is very, very capable even running the Linux-based OS. I speak from experience that the ARM920T even at its stock 200 MHz speed is capable of amazing workloads with terrific speed-- the OS does little to get in the way except in fairly rare scenarios where low-level hardware accesss is more beneficial. Even the often-touted as "bloated" SDL library can be made to run EXTREMELY fast.


Well one thing I know is that that damn linux is keeping the raster interrupt palette switches from happening in DrMD (water in Sonic etc). That kind of sucks. If you could "bang the metal" those effects would be possible. Also without linux we could probably have a near perfect SNES emu.

And yes that extra core is nice for video. Video schmideo, I want SNES! and that extra core is useless for emus ;)
 
Last edited by a moderator:
Sorry for not searching, I normally never find anything when using forum searches, but the search results here did reveal a lot of info.

So, to sumarize:-

1) 920 can only see upper 32Mb of RAM, which has to be 'spoon fed' by the 940.
2) Most emulators were written for single thread type operation - so no direct use of the 920 can be made when porting.


OK, so it looks tricky but there must be some good uses, even for emulators.

For example, can the 920 work on audio emulation? Sure there are going to be things the first CPU needs to do with data that has been 'prepared' for the audio output etc, but generating the wave form data itself could be done independantly of the main CPU (with some well written code).

Or how about getting the 2nd CPU to do some nice pixel processing effects? eg. AA type effects, tranparencies, or 'Eagle type aliasing' - anyone remember that from several years ago? I forget which emulator used it? Could have been Rage, the arcade emulator..

Anyway, getting a dev environment setup shortly to have a play around.
 
Back
Top