Homebrew GBARunner2

Gericom

Well-Known Member
OP
Member
Joined
Jun 30, 2011
Messages
1,383
Trophies
2
Age
25
XP
4,720
Country
Netherlands
Hi friends,

Having been very busy with my work during the development and evolution of GBARunner2

So, this time, I would like to participate in the testing campaign for GBARunner3

My problem is that I don't know how to compile a .nds file from its source code.

So my questions are:

- Where can I find the tools needed to compile a .nds file and what are they?

- Is there a short, easy tutorial that gets straight to the point by showing step by step the commands to use to compile a .nds file?

And in the worst case (and I specify the worst case, because I would still like to learn how to compile), would someone agree to share an already compiled version of GBAR3 by private message?

For my part, I am running Windows 11 Arium and to test I would like to use my DS Lite with an R4 SDHC Gold Pro 2016.

I also have an N3DS and an Old 3DS but if I have to spend time on a romset, I prefer to use my DS Lite, its limitation in terms of capacity, can, I think, quickly reveal a basic romset of compatible roms.

Thanks in advance.
Hello @Gericom,

I would like to participate in the GBARunner3 testing program. But in order for me to do so, I'd like to ask you a few questions.

- Could you explain on how to compile the latest test build?
- What are the prerequisites/libraries needed?

For testing, I am currently using a Nintendo DSi with TWLMenu++, Unlaunch and HiyaCFW. I am also using a 2DS with a R4 SDHC Gold Pro 2021 cartridge.

Many thanks. :)
To compile. Make sure you're using windows and have a recent version of devkitarm/libnds.
Clone the repo recursively (with submodules)
Run make in the code folder (don't use multiple threads)
This should produce bootstrap.nds in the bootstrap folder.

Next place your gba bios in /_gba/bios.bin
If you're running without frontend place your rom as /rom.gba
With twilight as frontend you need:
-TwilightMenu++ `26.1.1` or higher
- `GBARunner3.nds` inside `\_nds\TWiLightMenu\emulators`
-`GBARUNNER3_TEST = 1` under the `[SRLOADER]` section in `\_nds\TWiLightMenu\settings.ini`
 

Gericom

Well-Known Member
OP
Member
Joined
Jun 30, 2011
Messages
1,383
Trophies
2
Age
25
XP
4,720
Country
Netherlands
I ended up giving @SylverReZ some binaries I compiled for now since they're on Linux. I also tried compiling on my Arch Linux install to the same result others are running into. GBARunner3 is looking good so far, and I'm looking forward to further improvements over time. :)
Yeah it's an annoying issue. Fixing the issue would mean I have to store many pointers in different memory initially and then copy them as 16 bit to dtcm which would be very inconvenient. I don't understand why the behavior isn't consistent between windows and linux here though. There's no reason for this platform difference.
 
  • Like
Reactions: Zense and SylverReZ

Indy13

Well-Known Member
Member
Joined
Jan 26, 2017
Messages
611
Trophies
0
Age
45
XP
1,292
Country
France
To compile. Make sure you're using windows and have a recent version of devkitarm/libnds.
Clone the repo recursively (with submodules)
Run make in the code folder (don't use multiple threads)
This should produce bootstrap.nds in the bootstrap folder.
when I run the "Make" command I get this error message, I've probably missed something but I'm too new to this type of exercise to know what it is exactly.

I have downloaded and installed the latest version of devkitarm/libnds as well as the latest version of python and visual studio code (just in case, the latter two may not be necessary)

here is what I got from Github :
gbar3.png

and this is what I get when I run the "make" command from the Code directory:
compile result.png


Also, the version I'm currently using of GBAR2 that works on my flashcard is a version named arm7dldi_ds, so I assume to get the same result with GBAR3, I need to compile an ARM7 version, correct?
 
Last edited by Indy13,

DSoryu

GBA/NDS Maniac
Member
Joined
May 5, 2010
Messages
2,375
Trophies
2
Location
In my house
XP
4,829
Country
Mexico
when I run the "Make" command I get this error message, I've probably missed something but I'm too new to this type of exercise to know what it is exactly.

I have downloaded and installed the latest version of devkitarm/libnds as well as the latest version of python and visual studio code (just in case, the latter two may not be necessary)

here is what I got from Github :
View attachment 399934

and this is what I get when I run the "make" command from the Code directory:
View attachment 399935


Also, the version I'm currently using of GBAR2 that works on my flashcard is a version named arm7dldi_ds, so I assume to get the same result with GBAR3, I need to compile an ARM7 version, correct?
Yo need to run the "make" command inside the `code` folder
 

Gericom

Well-Known Member
OP
Member
Joined
Jun 30, 2011
Messages
1,383
Trophies
2
Age
25
XP
4,720
Country
Netherlands
when I run the "Make" command I get this error message, I've probably missed something but I'm too new to this type of exercise to know what it is exactly.

I have downloaded and installed the latest version of devkitarm/libnds as well as the latest version of python and visual studio code (just in case, the latter two may not be necessary)

here is what I got from Github :
View attachment 399934

and this is what I get when I run the "make" command from the Code directory:
View attachment 399935


Also, the version I'm currently using of GBAR2 that works on my flashcard is a version named arm7dldi_ds, so I assume to get the same result with GBAR3, I need to compile an ARM7 version, correct?
I think you didn't clone with submodules
git clone --recurse-submodules
 

Indy13

Well-Known Member
Member
Joined
Jan 26, 2017
Messages
611
Trophies
0
Age
45
XP
1,292
Country
France
Yo need to run the "make" command inside the `code` folder
I think that's what I did but maybe I was wrong, I don't know here are the commands I typed to look for the "make" in Code folder :
commandcode.png


I think you didn't clone with submodules
git clone --recurse-submodules
Here's what I did and what I uploaded to Github :
gbar3git.png
I'm sorry guys for making such beginner mistakes but this is really all new to me both compiling a file but also using Github:blush:
Thank you for taking the time to help me, it's really nice
 

DSoryu

GBA/NDS Maniac
Member
Joined
May 5, 2010
Messages
2,375
Trophies
2
Location
In my house
XP
4,829
Country
Mexico
I think that's what I did but maybe I was wrong, I don't know here are the commands I typed to look for the "make" in Code folder :
View attachment 399976



Here's what I did and what I uploaded to Github :
View attachment 399977
I'm sorry guys for making such beginner mistakes but this is really all new to me both compiling a file but also using Github:blush:
Thank you for taking the time to help me, it's really nice

No worries haha, it would be ideal to clone recursively like Gericom said, by tipping this on the CMD:

Code:
git clone --recurse-submodules

Because your files have libtwl module missing. A "manual" way to do this is by downloading and adding this inside

Code:
code\libs\libtwl
 

AkikoKumagara

The Coolest Bear Around
Member
Joined
Jan 4, 2017
Messages
1,543
Trophies
1
Website
thebearsden.web.fc2.com
XP
3,968
Country
United States
Downloading the zip won't work. Here's some instructions I wrote up previously.

The gist of it is to install DevkitPro w/ NDS presets (other settings optional), clone the GBARunner3 repo with modules (git clone --recurse-submodules https://github.com/Gericom/GBARunner3.git), then run the MSys2 included with DevkitPro, navigate to your GBARunner3 repo inside of MSys2, and run make in the code directory there.

You should run the "git clone" command inside of your Command Prompt or Terminal.
 
  • Like
Reactions: Indy13

Indy13

Well-Known Member
Member
Joined
Jan 26, 2017
Messages
611
Trophies
0
Age
45
XP
1,292
Country
France
thanks again for all your advice guys, I think I made progress, I got two .nds files, one called bootstrap.nds which I renamed GBARunner3 and one called TEST.nds, I tried both but I think I figured out that only the bootstrap.nds file was needed, so I applied two methods to try it.

the first by following Gericom's instructions for TWL++ (for information I installed the latest version on my R4), I put the bios in the _gba directory, the emulator with the other emulators and I modified the file TWL++ settings

For the second method, I put the bootstrap.nds file (GBAR3), the bios and a game in the same directory.

For both launch methods, when I try to launch a game, only the bios seems to launch

Using TWL++, I use the same directories that I used with GBAR2, that is to say a directory at the root containing subdirectories where my games are stored

I also tried to launch a game from a gba directory placed in roms\gba but I always get the same result, only the bios seems to launch and I get stuck on the GAME BOY logo
 

DSoryu

GBA/NDS Maniac
Member
Joined
May 5, 2010
Messages
2,375
Trophies
2
Location
In my house
XP
4,829
Country
Mexico
thanks again for all your advice guys, I think I made progress, I got two .nds files, one called bootstrap.nds which I renamed GBARunner3 and one called TEST.nds, I tried both but I think I figured out that only the bootstrap.nds file was needed, so I applied two methods to try it.

the first by following Gericom's instructions for TWL++ (for information I installed the latest version on my R4), I put the bios in the _gba directory, the emulator with the other emulators and I modified the file TWL++ settings

For the second method, I put the bootstrap.nds file (GBAR3), the bios and a game in the same directory.

For both launch methods, when I try to launch a game, only the bios seems to launch

Using TWL++, I use the same directories that I used with GBAR2, that is to say a directory at the root containing subdirectories where my games are stored

I also tried to launch a game from a gba directory placed in roms\gba but I always get the same result, only the bios seems to launch and I get stuck on the GAME BOY logo

Are you using a flashcard or a DSi SD card? And yeah, the correct build is "bootstrap.nds", you just need to rename it to "GBARunner3.nds", the "test" binaries are only meant for development purposes.

I'll write the instructions again just in case:

To have GBARunner3 test builds loading GBA roms in TwilightMenu++ you need:

-TwilightMenu++ 26.1.1 or higher
-GBARunner3.nds inside \_nds\TWiLightMenu\emulators
-GBA bios bios.bin inside \_gba
-GBARUNNER3_TEST = 1 under the [SRLOADER] section in \_nds\TWiLightMenu\settings.ini
 
  • Like
Reactions: Indy13

mrparrot2

Well-Known Member
Member
Joined
Nov 29, 2021
Messages
110
Trophies
0
Age
29
Location
SP, Brazil
XP
585
Country
Brazil
Can someone attach this test version of GBARunner3? I want to check if:

1. The forest section in Shinning Soul is now displaying correctly (game breaking bug).
2. The tiles in the Pokemon Emerald market is being displayed correctly.
3. The forest section of Super Mario World is saving correctly.

Which are the issues I found in GBARunner2.
 

DSoryu

GBA/NDS Maniac
Member
Joined
May 5, 2010
Messages
2,375
Trophies
2
Location
In my house
XP
4,829
Country
Mexico
Can someone attach this test version of GBARunner3? I want to check if:

1. The forest section in Shinning Soul is now displaying correctly (game breaking bug).
2. The tiles in the Pokemon Emerald market is being displayed correctly.
3. The forest section of Super Mario World is saving correctly.

Which are the issues I found in GBARunner2.

1.Fixed
2.Pokémon Emerald has "hicode", which hasn't been implemented yet, making the game currently unbootable.
3.It never had saving issues reported with GBARunner2
 
  • Like
Reactions: Zense

Indy13

Well-Known Member
Member
Joined
Jan 26, 2017
Messages
611
Trophies
0
Age
45
XP
1,292
Country
France
Are you using a flashcard or a DSi SD card? And yeah, the correct build is "bootstrap.nds", you just need to rename it to "GBARunner3.nds", the "test" binaries are only meant for development purposes.
I'm using a flashcard with a DS Lite
 

DSoryu

GBA/NDS Maniac
Member
Joined
May 5, 2010
Messages
2,375
Trophies
2
Location
In my house
XP
4,829
Country
Mexico
Well, just passing by to share the great news.

Mother 3 has been finally fixed and runs on GBARunner3

1698874301561.png

You can build the latest develop commit to try it out and report your testing results in the compatibility list.

Note: There are still minor sound issues that might get fixed eventually, keep in mind that this is still in initial development stages.

https://github.com/Gericom/GBARunner3/commit/356ee568fedb3e56e54bb7a09f7befbb4eb8ff95
 

zandatsu

Well-Known Member
Newcomer
Joined
Oct 6, 2022
Messages
57
Trophies
0
Age
25
Location
Manila
XP
321
Country
Philippines
It's been changed to GBARunner3.nds
I got a problem, mine is showing only green screen when i'm runnin GBARunner3.nds
i put the bios.bin is in the root of my sdcard and its still showing green screen
I'm actually using ds lite
Post automatically merged:

IMG_20231120_083259.jpg

My GBARunner3 is finally working, sadly the pokemon emerald only shows white screen.
Post automatically merged:

IMG_20231120_084318.jpg

This is my card, running YSmenu.
 
Last edited by zandatsu,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Psionic Roshambo @ Psionic Roshambo: 90K it's fine lol