Homebrew GPSP (gameplaySP) GBA Inquiry

  • Thread starter Thread starter Smoker1
  • Start date Start date
  • Views Views 6,017
  • Replies Replies 25
  • Likes Likes 2
  • Like
Reactions: VinsCool
Don't have a .cia build yet, but it works as a .3dsx. .cia is planned though.

I'm actually attempting to build it right now. After spending too long trying to figure out how to do this, I feel stupid that building is so easy lol. Btw, .3dsx is fine too. Preferred for me, actually. Any chance you could upload that? :)

EDIT: Build failed... Well dang...
 
I'm actually attempting to build it right now. After spending too long trying to figure out how to do this, I feel stupid that building is so easy lol. Btw, .3dsx is fine too. Preferred for me, actually. Any chance you could upload that? :)

EDIT: Build failed... Well dang...
IIRC building it isn't the problem, the problem is that if you just do a naive cia build, the cia will miss some features or something that the homebrew channel sets up for you, so it would run much slower. At least, that's what I remember seeing in some emulator thread.
 
Did you see about a .3ds Build?

I don't know how to build .3ds and I might have done something wrong trying to build the .3dsx. I have to go somewhere right now, so I don't have time to try to sort it out anyway. It would be better if someone else tries to build it.
 
After running lubuntu in Virtualbox and creating the build environment, I still can't build the .3dsx. Here's the code if someone wants to help.
root@brian-VirtualBox:~/Downloads# cd gpsp-master/3ds
root@brian-VirtualBox:~/Downloads/gpsp-master/3ds# make
arm_stub.s video_blend.s utils.s
gpspFont.bin
font.bin
font1.cpp
arm-none-eabi-g++ -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/font1.d -g -Wall -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/home/brian/Downloads/gpsp-master/3ds/include -I/opt/devkitPRO/libctru/include -I/home/brian/Downloads/gpsp-master/3ds/build -DARM11 -D_3DS -DARM_ARCH -DLIBKHAX_AS_LIB -w -fno-rtti -fno-exceptions -std=gnu++11 -w -c /home/brian/Downloads/gpsp-master/3ds/./font1.cpp -o font1.o
video.c
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/video.d -g -Wall -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/home/brian/Downloads/gpsp-master/3ds/include -I/opt/devkitPRO/libctru/include -I/home/brian/Downloads/gpsp-master/3ds/build -DARM11 -D_3DS -DARM_ARCH -DLIBKHAX_AS_LIB -w -c /home/brian/Downloads/gpsp-master/3ds/../video.c -o video.o
cheats.c
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/cheats.d -g -Wall -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/home/brian/Downloads/gpsp-master/3ds/include -I/opt/devkitPRO/libctru/include -I/home/brian/Downloads/gpsp-master/3ds/build -DARM11 -D_3DS -DARM_ARCH -DLIBKHAX_AS_LIB -w -c /home/brian/Downloads/gpsp-master/3ds/../cheats.c -o cheats.o
zip.c
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/zip.d -g -Wall -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/home/brian/Downloads/gpsp-master/3ds/include -I/opt/devkitPRO/libctru/include -I/home/brian/Downloads/gpsp-master/3ds/build -DARM11 -D_3DS -DARM_ARCH -DLIBKHAX_AS_LIB -w -c /home/brian/Downloads/gpsp-master/3ds/../zip.c -o zip.o
cpu.c
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/cpu.d -g -Wall -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/home/brian/Downloads/gpsp-master/3ds/include -I/opt/devkitPRO/libctru/include -I/home/brian/Downloads/gpsp-master/3ds/build -DARM11 -D_3DS -DARM_ARCH -DLIBKHAX_AS_LIB -w -Wno-unused-variable -Wno-unused-label -c /home/brian/Downloads/gpsp-master/3ds/../cpu.c -o cpu.o
gui.c
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/gui.d -g -Wall -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/home/brian/Downloads/gpsp-master/3ds/include -I/opt/devkitPRO/libctru/include -I/home/brian/Downloads/gpsp-master/3ds/build -DARM11 -D_3DS -DARM_ARCH -DLIBKHAX_AS_LIB -w -c /home/brian/Downloads/gpsp-master/3ds/../gui.c -o gui.o
cpu_threaded.c
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/cpu_threaded.d -g -Wall -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/home/brian/Downloads/gpsp-master/3ds/include -I/opt/devkitPRO/libctru/include -I/home/brian/Downloads/gpsp-master/3ds/build -DARM11 -D_3DS -DARM_ARCH -DLIBKHAX_AS_LIB -w -Wno-unused-variable -Wno-unused-label -c /home/brian/Downloads/gpsp-master/3ds/../cpu_threaded.c -o cpu_threaded.o
memory.c
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/memory.d -g -Wall -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/home/brian/Downloads/gpsp-master/3ds/include -I/opt/devkitPRO/libctru/include -I/home/brian/Downloads/gpsp-master/3ds/build -DARM11 -D_3DS -DARM_ARCH -DLIBKHAX_AS_LIB -w -c /home/brian/Downloads/gpsp-master/3ds/../memory.c -o memory.o
main.c
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/main.d -g -Wall -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/home/brian/Downloads/gpsp-master/3ds/include -I/opt/devkitPRO/libctru/include -I/home/brian/Downloads/gpsp-master/3ds/build -DARM11 -D_3DS -DARM_ARCH -DLIBKHAX_AS_LIB -w -c /home/brian/Downloads/gpsp-master/3ds/../main.c -o main.o
sound.c
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/sound.d -g -Wall -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/home/brian/Downloads/gpsp-master/3ds/include -I/opt/devkitPRO/libctru/include -I/home/brian/Downloads/gpsp-master/3ds/build -DARM11 -D_3DS -DARM_ARCH -DLIBKHAX_AS_LIB -w -c /home/brian/Downloads/gpsp-master/3ds/../sound.c -o sound.o
input.c
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/input.d -g -Wall -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/home/brian/Downloads/gpsp-master/3ds/include -I/opt/devkitPRO/libctru/include -I/home/brian/Downloads/gpsp-master/3ds/build -DARM11 -D_3DS -DARM_ARCH -DLIBKHAX_AS_LIB -w -c /home/brian/Downloads/gpsp-master/3ds/../input.c -o input.o
draw.c
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/draw.d -g -Wall -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/home/brian/Downloads/gpsp-master/3ds/include -I/opt/devkitPRO/libctru/include -I/home/brian/Downloads/gpsp-master/3ds/build -DARM11 -D_3DS -DARM_ARCH -DLIBKHAX_AS_LIB -w -c /home/brian/Downloads/gpsp-master/3ds/./draw.c -o draw.o
font.c
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/font.d -g -Wall -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/home/brian/Downloads/gpsp-master/3ds/include -I/opt/devkitPRO/libctru/include -I/home/brian/Downloads/gpsp-master/3ds/build -DARM11 -D_3DS -DARM_ARCH -DLIBKHAX_AS_LIB -w -c /home/brian/Downloads/gpsp-master/3ds/./font.c -o font.o
_3ds.c
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/_3ds.d -g -Wall -O3 -mword-relocations -fomit-frame-pointer -ffast-math -march=armv6k -mtune=mpcore -mfloat-abi=hard -I/home/brian/Downloads/gpsp-master/3ds/include -I/opt/devkitPRO/libctru/include -I/home/brian/Downloads/gpsp-master/3ds/build -DARM11 -D_3DS -DARM_ARCH -DLIBKHAX_AS_LIB -w -c /home/brian/Downloads/gpsp-master/3ds/./_3ds.c -o _3ds.o
arm_stub.s
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/arm_stub.d -x assembler-with-cpp -g -march=armv6k -mtune=mpcore -mfloat-abi=hard -c /home/brian/Downloads/gpsp-master/3ds/../arm/arm_stub.s -o arm_stub.o
video_blend.s
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/video_blend.d -x assembler-with-cpp -g -march=armv6k -mtune=mpcore -mfloat-abi=hard -c /home/brian/Downloads/gpsp-master/3ds/../arm/video_blend.s -o video_blend.o
utils.s
arm-none-eabi-gcc -MMD -MP -MF /home/brian/Downloads/gpsp-master/3ds/build/utils.d -x assembler-with-cpp -g -march=armv6k -mtune=mpcore -mfloat-abi=hard -c /home/brian/Downloads/gpsp-master/3ds/./utils.s -o utils.o
linking 3ds.elf
_3ds.o: In function `gpsp_plat_init':
/home/brian/Downloads/gpsp-master/3ds/./_3ds.c:89: undefined reference to `khaxInit'
collect2: error: ld returned 1 exit status
/opt/devkitPRO/devkitARM/3ds_rules:39: recipe for target '/home/brian/Downloads/gpsp-master/3ds/3ds.elf' failed
make[1]: *** [/home/brian/Downloads/gpsp-master/3ds/3ds.elf] Error 1
Makefile:127: recipe for target 'build' failed
make: *** [build] Error 2.
 
After running lubuntu in Virtualbox and creating the build environment, I still can't build the .3dsx. Here's the code if someone wants to help.
View attachment 19205
Same here :(
(except that I don't use a VM)
screen.png

The error is:
Code:
[...]_3ds.c:89: undefined reference to `khax init'
 
So I got it to build by removing the following in _3ds.c, but it won't launch when I try to boot it in Ninjhax. It shows up, though.

Code:
if(has_ninjhax)
    {
        khaxInit();

EDIT: Turns out libkhax is required for what the emulator needs to access...
 
The libkhax files aren't in the CitrAGB github, so grab libkhax from its own github and throw the files in the right places.
 

Site & Scene News

Popular threads in this forum