Views: 996,570 Homepage | Main | Rules/FAQ | Memberlist | Active users | Last posts | Calendar | Stats | Online users | Search 09-25-20 05:47 PM
Guest:

0 users reading About the ARM7 Coprocessor | 1 bot

Main - General - About the ARM7 Coprocessor New reply


poudink
Posted on 07-02-20 02:44 PM Link | #1987
This isn't really about melonDS but moreso the DS hardware itself. As we know, the DS has an ARM7 coprocessor used for GBA backwards compatibility and handling things like audio and touch input. Well, that's how it was used in commercial games, anyway. My question is, is it actually limited to those tasks or could it be used for more complex tasks? To give a concrete example, could a homebrew emulator for the DS offload its CPU emulation to the ARM7 while emulating audio and the PPU on the ARM9?

Generic aka RSDuck
Posted on 07-02-20 02:57 PM (rev. 2 of 07-02-20 02:58 PM) Link | #1991
For some potential optimisations I profiled the ARM7 usage in some commercial games and it seemed like it's often underutilised. Though I wouldn't declare these results as representative.

____________________
Take me to your heart / never let me go!

Can't anybodyyyyyyy find meeeeee someone tooooo hate?

"clearly you need to mow more lawns and buy a better pc" - Hydr8gon

Hydr8gon
Posted on 07-02-20 07:05 PM Link | #1996
Technically you can run whatever you want on the ARM7, but accessing certain hardware must be done with the processor that its I/O registers are mapped to. For example, the ARM9 has access to the graphics engines, and the ARM7 has access to audio. You could manipulate audio data on the ARM9, but the ARM7 would still need to pass it to the hardware. Similarly, you could prepare a list of 3D geometry commands on the ARM7, but the ARM9 would need to send them to the geometry engine.

Most commercial games probably don't use the ARM7 much because they rely on Nintendo's SDK, which seems to prefer doing everything on the ARM9 whenever possible. If it wasn't for GBA backwards compatability, I bet they wouldn't have even included the ARM7 in the first place.

Sorer
Posted on 07-02-20 07:08 PM Link | #1997
I think someone should profile the DS version of Chrono Trigger I think It was supposed to be a GBA port that got converted to DS in the last minute (so it uses ARM7 the most).

Generic aka RSDuck
Posted on 07-02-20 07:32 PM Link | #1998
Posted by Sorer
I think someone should profile the DS version of Chrono Trigger I think It was supposed to be a GBA port that got converted to DS in the last minute (so it uses ARM7 the most).

I think it would still use the ARM9, because unless the games's code is written in ARM assembler and uses a ton of ARM7 quirks, there's no good reason not to go with the intended way.

____________________
Take me to your heart / never let me go!

Can't anybodyyyyyyy find meeeeee someone tooooo hate?

"clearly you need to mow more lawns and buy a better pc" - Hydr8gon


Main - General - About the ARM7 Coprocessor New reply

Page rendered in 0.026 seconds. (2048KB of memory used)
MySQL - queries: 29, rows: 86/86, time: 0.021 seconds.
[powered by Acmlm] Acmlmboard 2.064 (2018-07-20)
© 2005-2008 Acmlm, Xkeeper, blackhole89 et al.