Homebrew GBARunner2

Gericom

Well-Known Member
OP
Member
Joined
Jun 30, 2011
Messages
1,383
Trophies
2
Age
25
XP
4,725
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,725
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
613
Trophies
0
Age
45
XP
1,302
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,831
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,725
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
613
Trophies
0
Age
45
XP
1,302
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,831
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,971
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
613
Trophies
0
Age
45
XP
1,302
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,831
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
587
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,831
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
613
Trophies
0
Age
45
XP
1,302
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,831
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
  • SylverReZ @ SylverReZ:
    @Xdqwerty, Non-binary people are those who don't identify themselves exclusively as male or female.
  • cearp @ cearp:
    I don't identify as anything, unless I need to get on a plane then I show ID
    +3
  • AncientBoi @ AncientBoi:
    👈 [homo, queer, fag, coksuqr, etc......]
    +3
  • Xdqwerty @ Xdqwerty:
    @SylverReZ, I meant that I read that they can also identify as what i mentioned
    +2
  • BigOnYa @ BigOnYa:
    I identify as Long Rod Johnson, cause a cat called me that once.
    +2
  • AncientBoi @ AncientBoi:
    [takes a 👀 in your pants] Liar :angry:
    +3
  • Xdqwerty @ Xdqwerty:
    @SylverReZ, and thus that would make me non binary since i feel like a blend of both male and female
    +1
  • AncientBoi @ AncientBoi:
    @Xdqwerty only time will tell, what/whom you are. At 14, its a bit early to "Define" yourself. :)
    +3
  • Psionic Roshambo @ Psionic Roshambo:
    I only recently have learned who I am and how much I am capable of and I'm 50 lol
    +3
  • Psionic Roshambo @ Psionic Roshambo:
    A thousand epiphanies and unbelievable pain and growth.
    +2
  • Psionic Roshambo @ Psionic Roshambo:
    I wish I could sum it up for children to understand but it truly takes living a lifetime of learning
    +2
  • Psionic Roshambo @ Psionic Roshambo:
    It's more than knowledge it's understanding
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    Both are required
  • Xdqwerty @ Xdqwerty:
    @Psionic Roshambo, ask chatgpt or Google gémini to summarize it
  • Psionic Roshambo @ Psionic Roshambo:
    Lol summarize life's lessons
  • BigOnYa @ BigOnYa:
    My wifey tells me all the time "You need to grow the fuck up." Which I don't understand, cause I'm full grown already.
    +2
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, she means grow more
    +1
  • Xdqwerty @ Xdqwerty:
    Yawn
  • AncientBoi @ AncientBoi:
    farrrrrrrrrrrt
    +1
  • BigOnYa @ BigOnYa:
    @AncientBoi I imagine it don't make the fart sound anymore, probably sounds more like letting go of a balloon you just blew up.
    +3
  • SylverReZ @ SylverReZ:
    @BigOnYa, Tell her to grow a pair. :rofl2:
    +3
  • Xdqwerty @ Xdqwerty:
    @SylverReZ, you played any Sega genesis games?
  • BigOnYa @ BigOnYa:
    @Xdqwerty I remember getting a Genesis for Xmas, when I was your age, 13-14. Some cool games and good memories. Metal Gear, and Sonic were the games I played the most on it.
    BigOnYa @ BigOnYa: @Xdqwerty I remember getting a Genesis for Xmas, when I was your age, 13-14. Some cool games and...