Support and General Use > Plugins/Viewers
rockdoom question
saratoga:
Processing power and also not being able to share IRAM between the codec and plugin.
torne:
--- Quote from: kkurbjun on January 11, 2010, 11:48:09 AM ---Fullspeed GBA 'emulation' could be possible on most/all of the ARM targets since the code could partially be executed natively, but it would require writing an 'emulator' from scratch.
--- End quote ---
No, not really, I'm afraid; the GBA's processor is a minor part of the problem, it's only a 16Mhz ARM7TDMI crippled by a slow 16-bit external bus with a large number of wait states. The big problem with GBA emulation is the 2D graphics hardware, which is spectacularly powerful for such a tiny system and requires the majority of the processing time when emulating it on a PC.
Using native execution of instructions gains you very little, because you'll have to stop executing them natively *very* frequently every time there is a peripheral register read/write, and this happens *constantly* because of the heavy dependence on accelerated hardware. The actual CPU is idle a lot in most games.
kkurbjun:
--- Quote from: saratoga on January 11, 2010, 12:33:42 PM ---Processing power and also not being able to share IRAM between the codec and plugin.
--- End quote ---
:) That too, I had forgotten about that part.
--- Quote from: torne on January 11, 2010, 03:11:05 PM ---Using native execution of instructions gains you very little, because you'll have to stop executing them natively *very* frequently every time there is a peripheral register read/write, and this happens *constantly* because of the heavy dependence on accelerated hardware. The actual CPU is idle a lot in most games.
--- End quote ---
I agree that the video emulation would take a significant amount of processor time, but the CPU is still a significant contributor in games (at least in gpsp) (http://gpsp-dev.blogspot.com/2007/04/profiling-performance_02.html).
Igpsp was able to get 50-80% full speed at 81 MHz on the Ipods (http://ipodlinux.org/wiki/Igpsp), so with significant work on the CPU I still think it /could/ be possible to get at least some games running full-speed (probably without sound). The effort required to do so would be tremendous though.
torne:
Hmm, that's interesting. A lot of games that I've looked at don't actually idle the processor, which doesn't help I guess: they sit busy-waiting on a variable which will be set by an interrupt handler. The emulator will have to emulate this because it's difficult to recognise that it's pointless. :)
Navigation
[0] Message Index
[*] Previous page
Go to full version