Looking for ponèSound example code in libyaul

Hi everybody. Happy New Year from a new face!

I recently decided giving Yaul a shot (my goal is to create a "Raylib4Saturn", using the same function signatures and macros from the actual Raylib library so that one would theoretically only have to write a few lines of code to port a project over) and while I'm generally happy with it, the almost complete lack of documentation is frustrating and makes me consider going back to JoEngine.

I've been trying to use ponèSound but, thus far, to no avail.

Whenever I call `cd_init();`, Mednafen blesses me with a CPU Address error so I suppose there's something I need to initiate prior to calling cd_init?

Screenshot from 2025-01-01 23-51-11.png
 
Oh, ponesound's CD init calls SBL functions to initialize the CD drive. That flat-out will not work with Yaul. @romulo or @mrkowftw have been able to get past that. The same goes for loading files; the SBL CD system references have to be replaced with Yaul compatible ones. (that means the driver cannot be loaded without patches for yaul). Yaul does not include SEGA_CDC library, so ponesound's handling of CD-DA is completely useless here.
 
Oh, ponesound's CD init calls SBL functions to initialize the CD drive. That flat-out will not work with Yaul. @romulo or @mrkowftw have been able to get past that. The same goes for loading files; the SBL CD system references have to be replaced with Yaul compatible ones. (that means the driver cannot be loaded without patches for yaul). Yaul does not include SEGA_CDC library, so ponesound's handling of CD-DA is completely useless here.
Ah. Ok. Didn't know that. So in essence, you can't mix Yaul with any other Sega Saturn library that uses SBL/SGL. Got it.
I think I'll return to JoEngine for the time being then, since this was only supposed to be a fun side-project and I don't have the time to re-invent the wheel on my own.

EDIT: Actually, screw that. 30 minutes in and I'm already overwhelmed by all the choices JoEngine wants to make for me. It's not a good match for what I wanna do, as much as I otherwise enjoy JoEngine. Guess I'll just have to stick with Yaul and either learn the ropes of SCSP programming myself or find the patience to wait for others to chime in with a solution. The alternative is to use SGL/SBL directly but that doesn't spark much joy either. I'm in this weird place where all my choices are either too high level or too low level. Lol
 
Last edited:
Back
Top