The Truth behind GBA emulation

Discussion in 'NDS - Emulation and Homebrew' started by Normmatt, Jan 22, 2008.

Thread Status:
Not open for further replies.
Jan 22, 2008

The Truth behind GBA emulation by Normmatt at 4:57 AM (30,469 Views / 1 Likes) 168 replies

  1. Normmatt
    OP

    Member Normmatt Former AKAIO Programmer

    Joined:
    Dec 14, 2004
    Messages:
    2,135
    Country:
    New Zealand
    Now, I'm sure you've been told many many times that gba emulation on the nds is impossible well this is entirely untrue.

    It is however impossible to software emulate the gba on nds well at any descent frame rate anyway.

    It is possible to create a hypervisor using the mpu that translates the writes to the graphics and sound hardware of the gba to the nds hardware this however is hard to do which is why no one has done it well except for someone who will not under no circumstances release it because he does not condone piracy.

    Using the hypervisor approach you can get full speed, maybe even faster, not to mention you could potentially add things such as save states etc but first someone would need to create a hypervisor and release it to the public.

    I will not be creating a hypervisor but i thought i'd let others know that running GBA games from slot1 is not entirely impossible its just no one has bothered to code something that the nds hardware does natively and release it to the public.
     
    Margen67 likes this.


  2. Magnifico

    Member Magnifico GBAtemp Regular

    Joined:
    Jul 10, 2007
    Messages:
    106
    Country:
    United States
    ez flash expansion pack is less than 20 dollars, id actually be upset if someone wasted a lot of time on GBA emulation when its better SNES we need!
     
  3. DanTheManMS

    Member DanTheManMS aka Ricochet Otter

    Joined:
    Jun 2, 2007
    Messages:
    4,325
    Location:
    Georgia
    Country:
    United States
    Rather than making a lengthy reply questioning wtf a "hypervisor" is and how it differs from the definition of an emulator, I'll just say that it's been debated too long and doesn't need to be brought up again.

    Could software emulation be possible? Of course. Would it be playable? Heck no. Look at the DS emulator for the PSP; that's what I'm expecting a GBA emu for the DS would be like.
     
  4. HyoImowano

    Member HyoImowano GBAtemp Fan

    Joined:
    Apr 27, 2007
    Messages:
    304
    Country:
    United States
    A "hypervisor" as he is defining it is very similar to an emulator, yet still different. With an Emulator, you are virtually creating all the processors, ram, etc. in an actual system. With a "hypervisor", you are simply translating code written for the GBA into the DS's language, this is possible because the hardware is so similar, just like the Gamecube and Wii, they really are practically the same system with only minor upgrages, which is why it can still run Gamecube games to begin with.
     
  5. DanTheManMS

    Member DanTheManMS aka Ricochet Otter

    Joined:
    Jun 2, 2007
    Messages:
    4,325
    Location:
    Georgia
    Country:
    United States
    But when you run a GCN game, aren't you running it in GCN mode and not Wii mode? If so, then it's the same way as the DS.

    As I stated in another forum, the problem is that while the processor is the same, the ARM7 functions so differently in DS mode than it does in GBA mode that this "hypervisor" idea just doesn't seem possible. There are also a good number of GBA functions that have no direct DS equivalents, including some trig functions and access to the GBC sound core.

    Whatever, I'm done arguing.
     
  6. Normmatt
    OP

    Member Normmatt Former AKAIO Programmer

    Joined:
    Dec 14, 2004
    Messages:
    2,135
    Country:
    New Zealand
    ARM 7 code runs fine on the ARM9 and a hypervisor just translates the gba hardware to the nds hardware, so essentially it'd be running a gba game through the nds hardware.

    I never said sound would be easy and would probably need to be software emulated on the arm7 the trig functions (e.g. missing bios functions) shouldn't be hard as you can use your own custom bios on the arm9 so essentially you could use the gba bios itself.

    I'd assume the Wii uses a hypervisor to simulate GCN mode limiting the Wii hardware to what the GCN had.
     
  7. modshroom128

    Member modshroom128 GBAtemp Maniac

    Joined:
    Dec 24, 2006
    Messages:
    1,002
    Country:
    United States
    [​IMG]
     
  8. azotyp

    Member azotyp GBAtemp Maniac

    Joined:
    Feb 19, 2007
    Messages:
    1,175
    Location:
    Poland
    Country:
    Poland
    All this is for nothing, so what if someone will ever be able to create a hypervisor [​IMG] that can run gba games as in the post on main page says
    Which means, than he will never show it to the world eaven if he will finish it. [​IMG]
    And for the people who think that it is not such a big deal because ez flash rampack is cheap:
    Yeas it is cheap, but slot 2 devices eat horrible ammount of energy, and slot 1 devices dont. Thats why I'm interrested in this, but I doubt It will ever be shared with the world.
     
  9. Opium

    Former Staff Opium PogoShell it to me ™

    Joined:
    Dec 22, 2002
    Messages:
    8,185
    Location:
    Australia
    Country:
    Australia
    The point is, someone else could possibly create it and release it now that it's known to be possible.
     
  10. CockroachMan

    Member CockroachMan Scribbling around GBATemp's kitchen.

    Joined:
    Jan 14, 2006
    Messages:
    3,889
    Location:
    Brazil
    Country:
    Brazil
    The GCN and the Wii are different stuff.. they both use the same CPU.. but when in GCN mode the CPU clock and memory are limited.

    The DS, when in GBA mode, uses a different CPU and loads the game data from a different slot. When in GBA mode the game can't access the ARM9 CPU neither the Slot-2.
     
  11. Glacius0

    Member Glacius0 GBAtemp Advanced Fan

    Joined:
    Nov 27, 2005
    Messages:
    604
    Location:
    The Netherlands
    Country:
    Netherlands
    Implications of piracy?? Come on, it's dead-easy to pirate DS and someone's worried about GBA piracy??

    Also, wanting to run GBA through DS is a very lazy and cheap thing to want. You can just buy a cheap slot2 solution which does it better than emulation ever could.
     
  12. johnchan

    Newcomer johnchan Advanced Member

    Joined:
    Aug 15, 2007
    Messages:
    88
    Country:
    I would think that anybody who is actually capable of developing such a piece of software would already know that its possible and wouldn't need to be enlightened by a forum thread [​IMG]

    As stated above, ARM7 code runs fine on the ARM9 and as the ARM9 has a very simple MMU (the protection unit) you could configure it to throw an exception any time the software tries to access a memory mapped register. Then the exception handler could decode the address/data and act accordingly. It would still be difficult to get the performance up to a standard which would allow for full speed "emulation". The graphics hardware is similar on NDS/GBA - that is, in general the GBA hardware is a subset of the NDS hardware. This means that with some translating of data, it'd be possible to utilise graphic hardware without much software processing overhead.
     
  13. recover

    Member recover GBAtemp Regular

    Joined:
    Aug 6, 2007
    Messages:
    161
    Country:
    Sweden
    Pics or it didn't happen!!
    Seriously though, if an anonymous user has done this, then that person can release an anonymous video with the proof of concept.
     
  14. hamchan

    Newcomer hamchan Advanced Member

    Joined:
    Apr 26, 2007
    Messages:
    64
    Location:
    Australia, Sydney NSW
    Country:
    Australia
    its cool if it is actually created, would benefit a hell of a lot of people.
    Not me though, i got an M3 Lite a year ago lol
     
  15. faceless

    Member faceless pink sugar heart attack

    Joined:
    Jan 5, 2003
    Messages:
    567
    Country:
    United States
    this is one of those things that someone would do just to prove a point... why waste time on it???
     
  16. helpme

    Member helpme GBAtemp Fan

    Joined:
    Nov 23, 2005
    Messages:
    478
    Location:
    uk
    Country:
    United Kingdom
    if they dont condone piracy why get your friend to even bring it up on a flash cart forum? [​IMG]
     
  17. Athlon-pv

    Member Athlon-pv GBAtemp Advanced Fan

    Joined:
    Feb 25, 2005
    Messages:
    621
    Country:
    United States
    You mean not lcensed developer kits right [​IMG]
     
  18. jalaneme

    Member jalaneme Female Gamer

    Joined:
    Nov 27, 2006
    Messages:
    6,247
    Location:
    London
    Country:
    United Kingdom
    who cares about this emulation when most people have a gameboy advance already or slot 2 device, why bother? the "anonymous" developer of this exploit can keep his silly programming, and even so someone else will catch on and develop it for themselves now they know it's possible.
     
  19. g.crow

    Member g.crow beide mittelfinger hoch

    Joined:
    Feb 26, 2006
    Messages:
    770
    Country:
    United States
    so someone says his friend has coded a proof-of-concept but wont show to anyone... and it gets a news on the frontpage? lol
     
  20. funem

    Member funem Retro Powered..

    Joined:
    Nov 4, 2006
    Messages:
    1,160
    Location:
    out of nowhere....
    Country:
    United Kingdom
    I take it in a nutshell its like the first PC N64 emulator UltraHLE which didnt actully emulate as such, it translated code as opposed to all the other emulators out there which "emulate" the console ?

    Oh and without the actual proof, not being rude or anything, I could make the same claim....
     
Thread Status:
Not open for further replies.

Share This Page