Need help with file I/O for Gamecube homebrew

GateGuy

Active Member
OP
Newcomer
Joined
Nov 14, 2019
Messages
30
Trophies
0
XP
202
Country
United States
I have a Wii homebrew game that I also ported to Gamecube. It runs fine in Dolphin, except external files (in this case, sound effects and music) are not loading. On Wii, these files would be loaded through, say, sd:/apps/my_game/my_sound.wav, but I don't know the equivalent path for Gamecube, and there's surprisingly little information I could find about Gamecube homebrew. Specifically, I want to load these assets from a Gamecube SD to memory card adapter in slot B. According to some repos of old homebrew apps, the root might be sd:/ or cardb:/, but I don't have any way of testing this. I don't have a Gamecube, I haven't been able to successfully run Gamecube homebrew on my Wii, and I have no Gamecube SD access in Dolphin, so the game runs without the loaded audio.

Basically, what is the best way to save/load external assets in a Gamecube homebrew app; what path should I use? Here's the game in question, which currently attempts to load assets from sd:/Trogdor-RB:
https://github.com/Mode8fx/Trogdor-Reburninated/releases/tag/v2.1
 

Extrems

GameCube Wizard
Member
Joined
Jan 17, 2013
Messages
432
Trophies
1
Location
Quebec, Canada
Website
www.extremscorner.org
XP
3,033
Country
Canada
Dolphin doesn't emulate SD cards in SPI mode, so it's impossible to test with it.

The following paths can exist with libogc:
  • carda:/ - for an SD Card Adapter in Memory Slot A
  • cardb:/ - for an SD Card Adapter in Memory Slot B
  • sd:/ - for an SD Card Adapter in Serial Port 2 (SD2SP2)
Additionally with libogc2:
  • dvd:/ - for the GC Loader
Since you're using fatInitDefault(), I suggest using just plain /.
That function will chdir to the first device available (order varies between libogc and libogc2), or the path given in argv[0] if available (it is with the current version of Swiss).
 
Last edited by Extrems,

GateGuy

Active Member
OP
Newcomer
Joined
Nov 14, 2019
Messages
30
Trophies
0
XP
202
Country
United States
Dolphin doesn't emulate SD cards in SPI mode, so it's impossible to test with it.

The following paths can exist with libogc:
  • carda:/ - for an SD Card Adapter in Memory Slot A
  • cardb:/ - for an SD Card Adapter in Memory Slot B
  • sd:/ - for an SD Card Adapter in Serial Port 2 (SD2SP2)
Additionally with libogc2:
  • dvd:/ - for the GC Loader
Since you're using fatInitDefault(), I suggest using just plain /.
That function will chdir to the first device available (order varies between libogc and libogc2), or the path given in argv[0] if available (it is with the current version of Swiss).
So just using / would be ideal, and the user's method of running homebrew will take care of pulling from the correct device?

In that case, I recompiled it to set /Trogdor-RB/ as root; do you have a few minutes to run this version with the audio from the release version and see if there's audio? I'd really appreciate it. There should be a "Trogador" voice clip after the instructions menu appears, and music in the Options menu.
 

Attachments

  • boot.zip
    2.5 MB · Views: 9

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • S @ salazarcosplay:
    hunter x hunter
  • S @ salazarcosplay:
    he has not allowed anyone to continue it for him for example
  • Xdqwerty @ Xdqwerty:
    @salazarcosplay, theres a dragon ball af mod for budokai 3
  • Xdqwerty @ Xdqwerty:
    updated ship of harkinian, gonna install some hd texture pack
  • Xdqwerty @ Xdqwerty:
    I might download rayman revolution for my ps3
  • BigOnYa @ BigOnYa:
    I may try the new ram site, and download more RAM to my Switch. Not sure if ddr3 is the right ram
    for it tho. Edit- no it uses floppy Ram, just like @AncientBoi
    +1
  • Xdqwerty @ Xdqwerty:
    aeiou
  • BigOnYa @ BigOnYa:
    And sometimes Z
  • SylverReZ @ SylverReZ:
    @K3Nv2, MAGA supporters be wearing tin foil hats lol.
    +1
  • Xdqwerty @ Xdqwerty:
    @SylverReZ, whats maga?
  • BigOnYa @ BigOnYa:
    It stands for Maniacs Against General Acceptance
    +1
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, people rejecting general consensus about stuff?
    +1
  • BigOnYa @ BigOnYa:
    Yup, nuh its really just Trump followers
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, im not american so i dont care about trump
    +1
  • Xdqwerty @ Xdqwerty:
    or us elections
  • BigOnYa @ BigOnYa:
    Me niether, us north Koreans don't care
  • Xdqwerty @ Xdqwerty:
    good night
  • BakerMan @ BakerMan:
    i don't care either, even if i'm american
  • BakerMan @ BakerMan:
    truth be told, i agree with psi, i dislike both candidates, but i'd probably vote trump simply because the economy was better during his presidency
  • AngryCinnabon @ AngryCinnabon:
    Just be careful, if trump ends up winning and using project 2025 America might really change...for the worse.
  • AngryCinnabon @ AngryCinnabon:
    I'm not american and even that sends shivers down my spine.
  • AngryCinnabon @ AngryCinnabon:
    anything that offers trump an opportunity to become an actual dictator
    is bad in my book, i could care less if it wasn't for that...
  • K3Nv2 @ K3Nv2:
    Canada: America's Russia
  • NinStar @ NinStar:
    people are so dramatic that I can't even tell if they are being serious
    NinStar @ NinStar: people are so dramatic that I can't even tell if they are being serious