mirror of
https://github.com/ekeeke/Genesis-Plus-GX.git
synced 2024-09-10 16:53:15 +02:00
Don't assume slash is appended at the end of the system dir
This commit is contained in:
parent
42ddead260
commit
04998786ca
@ -824,6 +824,7 @@ size_t retro_get_memory_size(unsigned id)
|
||||
void retro_init(void)
|
||||
{
|
||||
const char *dir = NULL;
|
||||
char slash[6];
|
||||
unsigned level;
|
||||
#if defined(USE_NTSC)
|
||||
sms_ntsc = calloc(1, sizeof(sms_ntsc_t));
|
||||
@ -834,20 +835,25 @@ void retro_init(void)
|
||||
|
||||
if (environ_cb(RETRO_ENVIRONMENT_GET_SYSTEM_DIRECTORY, &dir) && dir)
|
||||
{
|
||||
snprintf(CD_BRAM_EU, sizeof(CD_BRAM_EU), "%sscd_E.brm", dir);
|
||||
snprintf(CD_BRAM_US, sizeof(CD_BRAM_US), "%sscd_U.brm", dir);
|
||||
snprintf(CD_BRAM_JP, sizeof(CD_BRAM_JP), "%sscd_J.brm", dir);
|
||||
snprintf(CD_BIOS_EU, sizeof(CD_BIOS_EU), "%sbios_CD_E.bin", dir);
|
||||
snprintf(CD_BIOS_US, sizeof(CD_BIOS_US), "%sbios_CD_U.bin", dir);
|
||||
snprintf(CD_BIOS_JP, sizeof(CD_BIOS_JP), "%sbios_CD_J.bin", dir);
|
||||
snprintf(MS_BIOS_EU, sizeof(MS_BIOS_EU), "%sbios_E.sms", dir);
|
||||
snprintf(MS_BIOS_US, sizeof(MS_BIOS_US), "%sbios_U.sms", dir);
|
||||
snprintf(MS_BIOS_JP, sizeof(MS_BIOS_JP), "%sbios_J.sms", dir);
|
||||
snprintf(GG_BIOS, sizeof(GG_BIOS), "%sbios.gg", dir);
|
||||
snprintf(SK_ROM, sizeof(SK_ROM), "%ssk.bin", dir);
|
||||
snprintf(SK_UPMEM, sizeof(SK_UPMEM), "%ssk2chip.bin", dir);
|
||||
snprintf(GG_ROM, sizeof(GG_ROM), "%sggenie.bin", dir);
|
||||
snprintf(AR_ROM, sizeof(AR_ROM), "%sareplay.bin", dir);
|
||||
#ifdef _XBOX
|
||||
snprintf(slash, sizeof(slash), "\\");
|
||||
#else
|
||||
snprintf(slash, sizeof(slash), "/");
|
||||
#endif
|
||||
snprintf(CD_BRAM_EU, sizeof(CD_BRAM_EU), "%s%sscd_E.brm", dir, slash);
|
||||
snprintf(CD_BRAM_US, sizeof(CD_BRAM_US), "%s%sscd_U.brm", dir, slash);
|
||||
snprintf(CD_BRAM_JP, sizeof(CD_BRAM_JP), "%s%sscd_J.brm", dir, slash);
|
||||
snprintf(CD_BIOS_EU, sizeof(CD_BIOS_EU), "%s%sbios_CD_E.bin", dir, slash);
|
||||
snprintf(CD_BIOS_US, sizeof(CD_BIOS_US), "%s%sbios_CD_U.bin", dir, slash);
|
||||
snprintf(CD_BIOS_JP, sizeof(CD_BIOS_JP), "%s%sbios_CD_J.bin", dir, slash);
|
||||
snprintf(MS_BIOS_EU, sizeof(MS_BIOS_EU), "%s%sbios_E.sms", dir, slash);
|
||||
snprintf(MS_BIOS_US, sizeof(MS_BIOS_US), "%s%sbios_U.sms", dir, slash);
|
||||
snprintf(MS_BIOS_JP, sizeof(MS_BIOS_JP), "%s%sbios_J.sms", dir, slash);
|
||||
snprintf(GG_BIOS, sizeof(GG_BIOS), "%s%sbios.gg", dir, slash);
|
||||
snprintf(SK_ROM, sizeof(SK_ROM), "%s%ssk.bin", dir, slash);
|
||||
snprintf(SK_UPMEM, sizeof(SK_UPMEM), "%s%ssk2chip.bin", dir, slash);
|
||||
snprintf(GG_ROM, sizeof(GG_ROM), "%s%sggenie.bin", dir, slash);
|
||||
snprintf(AR_ROM, sizeof(AR_ROM), "%s%sareplay.bin", dir, slash);
|
||||
fprintf(stderr, "Sega CD EU BRAM should be located at: %s\n", CD_BRAM_EU);
|
||||
fprintf(stderr, "Sega CD US BRAM should be located at: %s\n", CD_BRAM_US);
|
||||
fprintf(stderr, "Sega CD JP BRAM should be located at: %s\n", CD_BRAM_JP);
|
||||
|
@ -84,6 +84,12 @@ void blip_add( blip_buffer_t* s, int clocks, int delta )
|
||||
|
||||
int blip_clocks_needed( const blip_buffer_t* s, int samples )
|
||||
{
|
||||
#ifdef __LIBRETRO__
|
||||
/* int fixed_needed */
|
||||
if (samples > s->size)
|
||||
samples = s->size;
|
||||
#endif
|
||||
|
||||
/* Fixed-point number of samples needed in addition to those in buffer */
|
||||
int fixed_needed = samples * time_unit - s->offset;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user