Hacking N64 Emulation on 3DS... Speculation

Wisenheimer

Well-Known Member
Member
Joined
Sep 23, 2013
Messages
377
Trophies
0
Age
35
XP
246
Country
United States
Honestly, the best chance of getting PS1 or N64 gaming on either the Vita or the 3DS is if someone figures out how to install Android. Even if it is just a bare-bones "homebrew" mode, there are already plenty of good open source emulators out there that could be reconfigured, including PS1 emulators that run pretty well on high end ARM 11 phones and N64 emulators that are in the realm of possibility if they are sufficiently tweaked.



The other option would be to recode them as 3DS applications, which would be a lot more work.

The Vita, of course, could end up being a good choice as it has a much higher end CPU, which is essential for easy emulation. Nintendo probably felt that moving to the more expensive, newer versions of ARM chips would do little for gaming and was not worth the cost. Still, it is a far sight better than the DS by a long shot. You see similar chips in phones from 2011 that are powerful enough to do a lot of good things.

The most exciting thing would be actual games, since the 3DS has quite a bit of GPU power which could make for some excellent homebrew games.
 

urisma

Active Member
Newcomer
Joined
Jun 28, 2011
Messages
26
Trophies
0
XP
55
Country
United States
Honestly, the best chance of getting PS1 or N64 gaming on either the Vita or the 3DS is if someone figures out how to install Android. Even if it is just a bare-bones "homebrew" mode, there are already plenty of good open source emulators out there that could be reconfigured, including PS1 emulators that run pretty well on high end ARM 11 phones and N64 emulators that are in the realm of possibility if they are sufficiently tweaked.



The other option would be to recode them as 3DS applications, which would be a lot more work.

The Vita, of course, could end up being a good choice as it has a much higher end CPU, which is essential for easy emulation. Nintendo probably felt that moving to the more expensive, newer versions of ARM chips would do little for gaming and was not worth the cost. Still, it is a far sight better than the DS by a long shot. You see similar chips in phones from 2011 that are powerful enough to do a lot of good things.

The most exciting thing would be actual games, since the 3DS has quite a bit of GPU power which could make for some excellent homebrew games.


It'd be much, much less work to port an n64 emulator to the 3DS compared to porting an entire operating system.
 
  • Like
Reactions: Foxi4

Foxi4

Endless Trash
Global Moderator
Joined
Sep 13, 2009
Messages
30,825
Trophies
3
Location
Gaming Grotto
XP
29,851
Country
Poland
It'd be much, much less work to port an n64 emulator to the 3DS compared to porting an entire operating system.
Wisenheimer's counting on a large margin of compatibility here since all things considered, you can "throw" Android at a whole lot of stuff and it'll work as long as you devise a launcher and the drivers are there - I'm far less optimistic about that. While on the PSVita it should (in theory) work perfectly fine since all the hardware is standard smartphone/tablet chips, with the 3DS things are customized, and as such scary and mysterious for the system kernel. :P
 

Oxybelis

Well-Known Member
Member
Joined
Jan 10, 2010
Messages
350
Trophies
0
XP
383
Country
A lot of people mention that 3DS is 2 core design but forget that PSP too. PSP has second core for system and media playback.
I'm pretty sure second core on 3DS is unavailable for applications at all (even name suggest this: syscore). At least with default operating system and no one will make own OS with dualboot. And cores likely are not same feature wise (lacking FPU for example).
Also I really doubt it has overclocking capability.
 

Wisenheimer

Well-Known Member
Member
Joined
Sep 23, 2013
Messages
377
Trophies
0
Age
35
XP
246
Country
United States
A lot of people mention that 3DS is 2 core design but forget that PSP too. PSP has second core for system and media playback.
I'm pretty sure second core on 3DS is unavailable for applications at all (even name suggest this: syscore). At least with default operating system and no one will make own OS with dualboot. And cores likely are not same feature wise (lacking FPU for example).
Also I really doubt it has overclocking capability.

You realize that pretty much any CPU can be overclocked, right? In the case of the 3DS CPU, it is probably severely under-clocked by default. This is pretty common practice with ARM CPU's. Also, I am fairly certain that there are already games out there that make use of the 3DS's second CPU. That is why some games have certain OS functions like Wifi disabled during play.

Also, similar chips from the same era can usually be clocked at around 1000 mhz, but tended to be clocked at 700Mhz or less to save battery power. It is unknown (at least to me) whether Nintendo has enabled developers to change the clock speed on the CPU and GPU. There is also the question of the power supply, as you have to have enough current capacity in the battery.

In fact, that is probably one of the reasons the Wii U's CPU is so dramatically under-clocked. They might not be able to boost all three cores to full factory stable specs with the power supply they have, although they can get around both the thermal and power requirement limits by only overclocking a single core.

Either Nintendo's engineers need to release the specs or hackers have to discover the capabilities by trial and error. One thing is certain: simply testing the frequency while running does not really tell you what the chip is capable of. It just tells you the speed it is running at at the time of the test.
 

Chaosruler

Well-Known Member
Member
Joined
Jun 5, 2009
Messages
495
Trophies
0
Age
32
Location
p1ngpong's dream
XP
912
Country
Israel
Eve
You realize that pretty much any CPU can be overclocked, right? In the case of the 3DS CPU, it is probably severely under-clocked by default. This is pretty common practice with ARM CPU's. Also, I am fairly certain that there are already games out there that make use of the 3DS's second CPU. That is why some games have certain OS functions like Wifi disabled during play.

Also, similar chips from the same era can usually be clocked at around 1000 mhz, but tended to be clocked at 700Mhz or less to save battery power. It is unknown (at least to me) whether Nintendo has enabled developers to change the clock speed on the CPU and GPU. There is also the question of the power supply, as you have to have enough current capacity in the battery.

In fact, that is probably one of the reasons the Wii U's CPU is so dramatically under-clocked. They might not be able to boost all three cores to full factory stable specs with the power supply they have, although they can get around both the thermal and power requirement limits by only overclocking a single core.

Either Nintendo's engineers need to release the specs or hackers have to discover the capabilities by trial and error. One thing is certain: simply testing the frequency while running does not really tell you what the chip is capable of. It just tells you the speed it is running at at the time of the test.
Even if theres a set oc profile for 3ds's cpu and gpu it won't make the difference between playable emulator or not, if it did it will be a matter of time and soft opting to fix that, ocing mostly just gets you the potential of higher fps at the cost of the processing units stability and tdp, not invent a whole new processing unit magically, 3ds though got the potential for n64 playable emulator HLE ofc
 

Oxybelis

Well-Known Member
Member
Joined
Jan 10, 2010
Messages
350
Trophies
0
XP
383
Country
You realize that pretty much any CPU can be overclocked, right? In the case of the 3DS CPU, it is probably severely under-clocked by default. This is pretty common practice with ARM CPU's. Also, I am fairly certain that there are already games out there that make use of the 3DS's second CPU. That is why some games have certain OS functions like Wifi disabled during play.

Also, similar chips from the same era can usually be clocked at around 1000 mhz, but tended to be clocked at 700Mhz or less to save battery power. It is unknown (at least to me) whether Nintendo has enabled developers to change the clock speed on the CPU and GPU. There is also the question of the power supply, as you have to have enough current capacity in the battery.

In fact, that is probably one of the reasons the Wii U's CPU is so dramatically under-clocked. They might not be able to boost all three cores to full factory stable specs with the power supply they have, although they can get around both the thermal and power requirement limits by only overclocking a single core.

Either Nintendo's engineers need to release the specs or hackers have to discover the capabilities by trial and error. One thing is certain: simply testing the frequency while running does not really tell you what the chip is capable of. It just tells you the speed it is running at at the time of the test.

I think you do not realise how CPU clocks work. You need special clock generator PLL that can do that. 3DS CPU maybe does not have this or it is limited to 268.

For example Wii U CPU can only have 2 frequencies: 729MHz and 1.24Ghz and to switch between them you need to reset CPU (aka system reboot to Wii mode).
 

Wisenheimer

Well-Known Member
Member
Joined
Sep 23, 2013
Messages
377
Trophies
0
Age
35
XP
246
Country
United States
I think you do not realise how CPU clocks work. You need special clock generator PLL that can do that. 3DS CPU maybe does not have this or it is limited to 268.

For example Wii U CPU can only have 2 frequencies: 729MHz and 1.24Ghz and to switch between them you need to reset CPU (aka system reboot to Wii mode).

Pretty much all modern computers have clock generators that can be altered, often via software. In fact, most modern processors can dynamically change the clock speed of each individual core based on thermal and electrical capacity and constraints.

The Wii U's CPU is going to run at whatever speed Nintendo decided to clock it at. That is not some magical permanent number. If you look at CPU's that use similar architecture, it is pretty likely that the clock speed measured by these hacker groups probably do not represent anywhere near the actual clock speed the processor itself was designed to run stably.

Most processors can be under-clocked (to save power and heat) and overclocked (to maximize performance) and the trend in computing is to be able to do this on the fly and automatically. That was one of the big contributions of Intel's core processors.
 

Oxybelis

Well-Known Member
Member
Joined
Jan 10, 2010
Messages
350
Trophies
0
XP
383
Country
Pretty much all modern computers have clock generators that can be altered, often via software. In fact, most modern processors can dynamically change the clock speed of each individual core based on thermal and electrical capacity and constraints.
What about modern Intel processors? Most of them have locked down maximum clock multiplier.

The Wii U's CPU is going to run at whatever speed Nintendo decided to clock it at. That is not some magical permanent number. If you look at CPU's that use similar architecture, it is pretty likely that the clock speed measured by these hacker groups probably do not represent anywhere near the actual clock speed the processor itself was designed to run stably.
Wii U stays at 1.24 GHz clock in Wii U mode all the time. It can not change clock in realtime. You are not as knowledgeable as hackers.

Most processors can be under-clocked (to save power and heat) and overclocked (to maximize performance) and the trend in computing is to be able to do this on the fly and automatically. That was one of the big contributions of Intel's core processors.
We are not talking about general trends in computer area. I already gave you an example of Wii U CPU. Also Wii U CPU pretty much 1997 technology.
 

Foxi4

Endless Trash
Global Moderator
Joined
Sep 13, 2009
Messages
30,825
Trophies
3
Location
Gaming Grotto
XP
29,851
Country
Poland
We are not talking about general trends in computer area. I already gave you an example of Wii U CPU. Also Wii U CPU pretty much 1997 technology.
Let's not generalize - the Wii U's CPU is a heavily optimized and modified 1997 technology with a dash of modern technology in the form of the additional ARM flavour to it.

As for contemporary ARM chips, their clock speed can set via changing the stepping settings - it's called throttling. It's a technology implemented ages ago for the sake of power saving and flexibility. I'm willing to bet that the 3DS at the very least drops the stepping when in sleep mode to conserve battery life, and that means it might go up as well.
 
  • Like
Reactions: Wisenheimer

Wisenheimer

Well-Known Member
Member
Joined
Sep 23, 2013
Messages
377
Trophies
0
Age
35
XP
246
Country
United States
What about modern Intel processors? Most of them have locked down maximum clock multiplier.

Wii U stays at 1.24 GHz clock in Wii U mode all the time. It can not change clock in realtime. You are not as knowledgeable as hackers.

We are not talking about general trends in computer area. I already gave you an example of Wii U CPU. Also Wii U CPU pretty much 1997 technology.

I guess by that logic, the PS4's CPU is 1976's technology. Other PPC computers can change the clock speed at run time. I would wager, at the very least, a Wii U game can boost the clock speed upon boot. In fact, there have been rumors that some of the newer games do just that and they keep down the heat and power requirements by disabling or under-clocking two of the three cores.

And Intel chips have locked down maximum clock multipliers for the same reason that Nvidia cards have artificially reduced double-precision operations. They are trying to push you into buying premium products. Also, the turbo boost technology is part of the default operating specs and it actually makes it easier to overclock even the lower end chips.

But with the Wii U and the 3DS chip, it looks to me like they were severely under-clocked at launch, probably for reasons of power and heat. Since Nintendo won't release the specs on the bloody things, probably the most educated thing we can do is compare them to the architecture they were based on. The 3DS CPU was based on architecture designed for a maximum clock speed of 400-1000 Mhz. Those Motorola/IBM PPC chips similar to the one in the Wii U usually are clocked at over 3 Ghz, so I would strongly suspect that if heat and electricity were not an issue, they could be pushed that high without a problem.

In fact, looking at the Wii U in particular, I think the biggest issue would probably be the 75W standard power supply. Those PPC chips are not the most efficient ones on the planet.
 

Oxybelis

Well-Known Member
Member
Joined
Jan 10, 2010
Messages
350
Trophies
0
XP
383
Country
I guess by that logic, the PS4's CPU is 1976's technology. Other PPC computers can change the clock speed at run time. I would wager, at the very least, a Wii U game can boost the clock speed upon boot. In fact, there have been rumors that some of the newer games do just that and they keep down the heat and power requirements by disabling or under-clocking two of the three cores.

And Intel chips have locked down maximum clock multipliers for the same reason that Nvidia cards have artificially reduced double-precision operations. They are trying to push you into buying premium products. Also, the turbo boost technology is part of the default operating specs and it actually makes it easier to overclock even the lower end chips.

But with the Wii U and the 3DS chip, it looks to me like they were severely under-clocked at launch, probably for reasons of power and heat. Since Nintendo won't release the specs on the bloody things, probably the most educated thing we can do is compare them to the architecture they were based on. The 3DS CPU was based on architecture designed for a maximum clock speed of 400-1000 Mhz. Those Motorola/IBM PPC chips similar to the one in the Wii U usually are clocked at over 3 Ghz, so I would strongly suspect that if heat and electricity were not an issue, they could be pushed that high without a problem.

In fact, looking at the Wii U in particular, I think the biggest issue would probably be the 75W standard power supply. Those PPC chips are not the most efficient ones on the planet.
Please stop making these ridiculous uneducated assumptions.
I am talking about microarchitectures.
PS4 chip is AMD Jaguar - a later half of 2013 microarchitecture. Wii U CPU is from PowerPC 750 line microarchitecture with some specific GameCube instructions. This microarchitecture was never meant to be over 3 Ghz. It has too short pipeline to achieve this frequency.

Even if 3DS is capable to up multiplier it will never reach 300% increase. Maximum a modest 33-100Mhz.
 

MyJoyConRunsHot

Well-Known Member
Member
Joined
Nov 28, 2011
Messages
410
Trophies
1
XP
1,440
Country
Canada
I'm very much aware of the MHz Myth, I know what Dhrystone MIPS is, I know what MIPS stands for. I also realize that DMIPS is an outdated benchmark, but unfortunately we don't have access to any better ones on the 3DS since it's simply not hacked to the point of coding one. It's no bitter truth to me, I'm very much aware of the issues you're pointing out.
Just take it with a grain of salt.

You're mistaking MIPS (Millions of Instructions per Second) with Dhrystone MIPS (a benchmark score).
No I didn't. MIPS is measurement of instructions per second, Dhrystone is simply a benchmark using this measurement across different architectures. Dhrystone relies on MIPS in the first place and still fails to accurately simulate real world software, especially compared to other benchmarks, that's why it's considered outdated.

MIPS is simply a measurement of how many instructions the processor can perform per second, more or less. Yes, CPU manufacturers will use the easiest-to-perform instructions and yes, they will bend the rules to "squeeze" as much MIPS as possible on their promotional material, but that doesn't make your point stand.
Oh, yes it does. A CPU that can push more instructions per cycle can push more IPS than it's higher frequency counterpart, and is indeed more powerful depending on the frequency gap.

A 266 MHz dual core ARM11 CPU is still not enough to properly emulate the N64, not by any stretch of the imagination. I'm yet to see a single device that efficiently emulates the platform with so little resources. And no, the smartphone you posted doesn't prove your point - the emulation was chugging and it was poor.

Most of the issue has been answered by others above me but to answer you question.
Some PS1 emu's running full speed with sound:
Motorola XT389

Specs:
ARM11 CPU 800Mhz
320MB RAM

HTC Touch Diamond


Specs:
ARM11 CPU 528Mhz
192MB RAM

HTC Touch Diamond 2

Specs:
ARM11 CPU 528Mhz
288MB RAM

Samsung Galaxy Ace

Specs:
ARM11 CPU 800Mhz
384 (accessible: 278)MB RAM

Nokia N95

Specs:
ARM11 Dual-CPU 332 Mhz
160 MB RAM

N64 emulators:
Samsung Galaxy Ace


Specs:
ARM11 CPU 800Mhz
384 (accessible: 278)MB RAM


They run pretty good to me even the PS1 on the weakest phone, but it's better to listen to Wienheimer on this topic because like he said, there needs to be CPU tests on the 3DS in order to tell if overclocking will affect heat and power consumption significantly and info on weather developers have control over frequency would be great too(266mhz could only be for the menu), after all, the ARM11 was deigned to run at 800Mhz-1Ghz. Examples like the Ace can give us a good foreshadow of what can be done with an ARM11 and we can speculate all month, but until we have real facts on the ground with a homebrew demonstration or learn how Nintendo is handling their CPU's this gen, and weather it's possible to overclock without problems, there is only evidence not proof.
 

The Real Jdbye

*is birb*
Member
Joined
Mar 17, 2010
Messages
23,328
Trophies
4
Location
Space
XP
13,904
Country
Norway
Possible, definite yes. But whether the majority of games will run full speed or not is another issue entirely.
PSP did not run N64 games very well at all (read: slow and buggy) so I don't expect the 3DS to run them anywhere near perfect though it should hopefully be better than the PSP.
 

Foxi4

Endless Trash
Global Moderator
Joined
Sep 13, 2009
Messages
30,825
Trophies
3
Location
Gaming Grotto
XP
29,851
Country
Poland
Fair enough, let's not draw false conclusions and pull out PS1 emulators when we already know that the hardware is moderately easy to emulate. ;) You did post a couple N64 emulators, so hey. As I said, there probably will be a PoC emulator out for the 3DS eventually, my only "issue" from the very start of this conversation is the premise that it could be full speed at the stock 3DS settings, which I find to be false. It might be "playable", but certainly not full speed, which is why we had the whole Virtual Console argument earlier. ;)
 

MyJoyConRunsHot

Well-Known Member
Member
Joined
Nov 28, 2011
Messages
410
Trophies
1
XP
1,440
Country
Canada
Fair enough, let's not draw false conclusions and pull out PS1 emulators when we already know that the hardware is moderately easy to emulate. ;) You did post a couple N64 emulators, so hey. As I said, there probably will be a PoC emulator out for the 3DS eventually, my only "issue" from the very start of this conversation is the premise that it could be full speed at the stock 3DS settings, which I find to be false. It might be "playable", but certainly not full speed, which is why we had the whole Virtual Console argument earlier. ;)

Weel some of the phones are clocked pretty close to 3DS stock settings and still run PS1 full speed, that's why I posted them up, the PS1 and N64 are not that far off in complexity hence why most devices that can't run N64 properly also can't run PS1 properly either.
 

Foxi4

Endless Trash
Global Moderator
Joined
Sep 13, 2009
Messages
30,825
Trophies
3
Location
Gaming Grotto
XP
29,851
Country
Poland
Weel some of the phones are clocked pretty close to 3DS stock settings and still run PS1 full speed, that's why I posted them up, the PS1 and N64 are not that far off in complexity hence why most devices that can't run N64 properly also can't run PS1 properly either.
There's a world of difference between PS1 and N64 complexity. We've had PS1 emulators going full speed years before N64 ones, the N64 is considered way harder emulate. Hell, my 2005 Windows Mobile 5 smartphone could emulate the PS1 at playable speeds, but wouldn't even touch N64.
 

MyJoyConRunsHot

Well-Known Member
Member
Joined
Nov 28, 2011
Messages
410
Trophies
1
XP
1,440
Country
Canada
There's a world of difference between PS1 and N64 complexity. We've had PS1 emulators going full speed years before N64 ones, the N64 is considered way harder emulate. Hell, my 2005 Windows Mobile 5 smartphone could emulate the PS1 at playable speeds, but wouldn't even touch N64.

That doesn't dismiss the fact that most devices like the Wii homebrew chocked on both systems. Several recent iphones, samsung, and HTC phones have trouble with both systems. I will find videos to show you.
 

Foxi4

Endless Trash
Global Moderator
Joined
Sep 13, 2009
Messages
30,825
Trophies
3
Location
Gaming Grotto
XP
29,851
Country
Poland
That doesn't dismiss the fact that most devices like the Wii homebrew chocked on both systems. Several recent iphones, samsung, and HTC phones have trouble with both systems. I will find videos to show you.
You don't have to, I'm well-aware of issues with emulator ports. All I'm saying is that the PS1 is much less complex and requires less resources, that's all. Keep in mind that lots of N64 games use custom microcode for the graphics chip, so emulation has to be spot-on or else the games are going to glitch terribly. With the PS1, matters are more straight-forward and simplified.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • Xdqwerty
    what are you looking at?
  • BakerMan
    I rather enjoy a life of taking it easy. I haven't reached that life yet though.
    Xdqwerty @ Xdqwerty: and i heard obs makes gd lag alot