Homebrew 3dsgba

Status
Not open for further replies.

DarkFlare69

Well-Known Member
Member
Joined
Dec 8, 2014
Messages
5,147
Trophies
2
Location
Chicago
XP
4,750
Country
United States
^

This definetely has great potential. You were fully able to emulate the GBA.. just not at a playable speed. I know in minecraft theres a mod where you can setthe game speed, maybe you could do something similar to this.
Code:
function procCmd(cmd) {
    cmd = cmd.toLowerCase();
    if (cmd == "speed"){
        ModPE.setGameSpeed(100);
        print("Game Speed Set!");
    } 
}

Take out the if statement and the print statement. And this is in javascript if you cant tell. So maybe do something similar to this with the emulator.
 
  • Like
Reactions: Jockel

Normmatt

Former AKAIO Programmer
Member
Joined
Dec 14, 2004
Messages
2,161
Trophies
1
Age
33
Website
normmatt.com
XP
2,189
Country
New Zealand
^

This definetely has great potential. You were fully able to emulate the GBA.. just not at a playable speed. I know in minecraft theres a mod where you can setthe game speed, maybe you could do something similar to this.
Code:
function procCmd(cmd) {
    cmd = cmd.toLowerCase();
    if (cmd == "speed"){
        ModPE.setGameSpeed(100);
        print("Game Speed Set!");
    }
}

Take out the if statement and the print statement. And this is in javascript if you cant tell. So maybe do something similar to this with the emulator.


facepalm.gif
 

piratesephiroth

I wish I could read
Member
Joined
Sep 5, 2013
Messages
3,453
Trophies
2
Age
103
XP
3,233
Country
Brazil
^

This definetely has great potential. You were fully able to emulate the GBA.. just not at a playable speed. I know in minecraft theres a mod where you can setthe game speed, maybe you could do something similar to this.
Code:
function procCmd(cmd) {
    cmd = cmd.toLowerCase();
    if (cmd == "speed"){
        ModPE.setGameSpeed(100);
        print("Game Speed Set!");
    }
}

Take out the if statement and the print statement. And this is in javascript if you cant tell. So maybe do something similar to this with the emulator.
That might be crazy enough to potato
 

DarkFlare69

Well-Known Member
Member
Joined
Dec 8, 2014
Messages
5,147
Trophies
2
Location
Chicago
XP
4,750
Country
United States
Okay I'm being serious. What's so fucking funny? I might not be as good at this shit as you guys, but you don't have to be dicks about it. Learn some social skills please.
 
  • Like
Reactions: Purple_Shyguy

sj33

Well-Known Member
Member
Joined
Oct 22, 2013
Messages
4,072
Trophies
2
XP
4,726
Country
Japan
I'm actually not a coder. I'll explain though. The emulator speed isn't slow because of some setting or missing code, it's slow because the emulator is still at an extremely early stage of development and thus extremely unoptimised. It's essentially already running at 100% speed as per the current limitations of the emulator.

Unfortunately, speeds ups can only come through optimisations of the emulator, not some arbitrary speed-up code like the above. If it was that simple, it would be the first thing people would do.
 

Arisotura

rise of melonism
Member
Joined
Dec 5, 2009
Messages
839
Trophies
1
Age
30
Location
center of the Sun
Website
kuribo64.net
XP
2,498
Country
France
Well, it would already be known if making an emulator fast was just matter of using some magical setSpeed() function.


Since you brought up Minecraft, I think it's worth mentioning that Minecraft is time-based. The actual game speed is independent from the framerate it runs at.
 

jamieyello

Professional Dumbass
Member
Joined
Mar 11, 2013
Messages
385
Trophies
0
XP
556
Country
United States
Okay I'm being serious. What's so fucking funny? I might not be as good at this shit as you guys, but you don't have to be dicks about it. Learn some social skills please.
Twas worthy of a facepalm, nothing entirely personal. It was deserved though. If there was a set speed function that let you go over 100% your 3ds might catch fire. It's like running GTA V on a snes by setting "setspeed()" to 80,000,000.

The closest thing to a function that "sets speed" would probably be frame skipping.
 
  • Like
Reactions: loco365

DarkFlare69

Well-Known Member
Member
Joined
Dec 8, 2014
Messages
5,147
Trophies
2
Location
Chicago
XP
4,750
Country
United States
Okay
Twas worthy of a facepalm, nothing entirely personal. It was deserved though. If there was a set speed function that let you go over 100% your 3ds might catch fire. It's like running GTA V on a snes by setting "setspeed()" to 80,000,000.

The closest thing to a function that "sets speed" would probably be frame skipping.
I see. That's okay then lol.

This is probably another retarded question, but have you tried looking at like PC GBA emulators to see how they run at full speed?
 

sj33

Well-Known Member
Member
Joined
Oct 22, 2013
Messages
4,072
Trophies
2
XP
4,726
Country
Japan
This emulator is actually based on a PC GBA emulator - it's a port of VBA-M. It runs at full speed on the PC because the code is already heavily optimised for that architecture and also the hardware itself is typically more powerful. The 3DS uses a completely different architecture (ARM, instead of x86) meaning much has to be recoded, and even the directly portable code will have to be changed, modified or optimised for the 3DS hardware. This takes time.
 

CalebW

Fellow Temper
Member
Joined
Jun 29, 2012
Messages
638
Trophies
0
Location
Texas
XP
545
Country
United States
Okay
I see. That's okay then lol.

This is probably another retarded question, but have you tried looking at like PC GBA emulators to see how they run at full speed?
Speed has to do with hardware, so obviously, pcs has faster and better processors. Plus, a PC is open to developers, nobody has to RE and they usually have access to most everything thing the system has to offer.
 

shinyquagsire23

SALT/Sm4sh Leak Guy
Member
Joined
Nov 18, 2012
Messages
1,977
Trophies
2
Age
26
Location
Las Vegas
XP
3,765
Country
United States
Okay
I see. That's okay then lol.

This is probably another retarded question, but have you tried looking at like PC GBA emulators to see how they run at full speed?

As of now, the main reason PC emulators are full speed is because they are hundreds of times more powerful than the 3DS (no surprise there). As such, most PC's can handle interpretation of instructions relatively will, with no slowdowns at all, especially considering that the GBA is only 16MHz vs a 1.5+GHz PC. On the other hand, the 3DS is only 268MHz vs 16MHz GBA, so that's not a whole lot to work with. However, there may be an opportunity to advance this a lot in the future through dynamic recompilation, or dynrec.

Basically dynrec is where you translate instructions from one architecture to another. For Dolphin, this would be from PPC to x86. This is usually faster than interpretation since you can mass convert instructions and also cache frequently called routines and run it all natively. With the 3DS though, we have a HUGE advantage: We'd only have to recompile from ARM to ARM, which, in itself, is super easy, much easier than ARM to MIPS or PPC or x86. So we'd have a much better chance doing that and getting full speed, and that's actually more or less why AGB_FIRM exists, so that it can use recompilation over interpretation (although since it's a FIRM is more or less visualization since they can just map the needed memory areas of the GBA and handle rendering in another thread).
 
Status
Not open for further replies.

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: Yeah search softonic