Homebrew The Truth behind GBA emulation

Status
Not open for further replies.

Normmatt

Former AKAIO Programmer
OP
Member
Joined
Dec 14, 2004
Messages
2,159
Trophies
0
Age
32
Website
normmatt.com
XP
1,897
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.
 
  • Like
Reactions: Margen67

DanTheManMS

aka Ricochet Otter
Member
Joined
Jun 2, 2007
Messages
4,423
Trophies
0
Age
32
Location
Georgia
XP
631
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.
 

HyoImowano

Well-Known Member
Member
Joined
Apr 27, 2007
Messages
307
Trophies
0
Website
Visit site
XP
303
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.
 

DanTheManMS

aka Ricochet Otter
Member
Joined
Jun 2, 2007
Messages
4,423
Trophies
0
Age
32
Location
Georgia
XP
631
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.
 

Normmatt

Former AKAIO Programmer
OP
Member
Joined
Dec 14, 2004
Messages
2,159
Trophies
0
Age
32
Website
normmatt.com
XP
1,897
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.
 

modshroom128

Well-Known Member
Member
Joined
Dec 24, 2006
Messages
1,009
Trophies
0
Website
modshroom128.imgur.com
XP
326
Country
United States
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.
fuuuk.gif
 

azotyp

Well-Known Member
Member
Joined
Feb 19, 2007
Messages
1,162
Trophies
0
Age
37
Location
Poland
Website
Visit site
XP
524
Country
Poland
All this is for nothing, so what if someone will ever be able to create a hypervisor
smile.gif
that can run gba games as in the post on main page says
QUOTE said:
The anonymous programmer is concerned about the implications of piracy so the concept demo will not be released
Which means, than he will never show it to the world eaven if he will finish it.
hate2.gif

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.
 

Opium

PogoShell it to me ™
Former Staff
Joined
Dec 22, 2002
Messages
8,201
Trophies
0
Age
34
Location
Australia
Website
www.gbatemp.net
XP
1,134
Country
Australia
All this is for nothing, so what if someone will ever be able to create a hypervisor
smile.gif
that can run gba games as in the post on main page says
QUOTE said:
The anonymous programmer is concerned about the implications of piracy so the concept demo will not be released
Which means, than he will never show it to the world eaven if he will finish it.
hate2.gif

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.

The point is, someone else could possibly create it and release it now that it's known to be possible.
 

CockroachMan

Scribbling around GBATemp's kitchen.
Member
Joined
Jan 14, 2006
Messages
3,887
Trophies
0
Age
36
Location
Brazil
Website
www.homembarata.com.br
XP
657
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.
 

Glacius0

Well-Known Member
Member
Joined
Nov 27, 2005
Messages
604
Trophies
0
Age
37
Location
The Netherlands
Website
Visit site
XP
205
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.
 

johnchan

Well-Known Member
Newcomer
Joined
Aug 15, 2007
Messages
88
Trophies
0
Website
Visit site
XP
99
Country
The point is, someone else could possibly create it and release it now that it's known to be possible.
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
nyanya.gif


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.
 

recover

Well-Known Member
Member
Joined
Aug 6, 2007
Messages
161
Trophies
0
Website
Visit site
XP
241
Country
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.
 

jalaneme

Female Gamer
Member
Joined
Nov 27, 2006
Messages
6,256
Trophies
0
Location
London
Website
www.youtube.com
XP
537
Country
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.
 

g.crow

beide mittelfinger hoch
Member
Joined
Feb 26, 2006
Messages
769
Trophies
0
Website
Visit site
XP
182
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
 

funem

Retro Powered..
Member
Joined
Nov 4, 2006
Messages
1,161
Trophies
0
Location
out of nowhere....
XP
456
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....
 
Status
Not open for further replies.
General chit-chat
Help Users
  • No one is chatting at the moment.
    KenniesNewName @ KenniesNewName: I might grab those Nreal Airs it would be dope with the SteamDeck