The emulator is now almost completely Unicode - this means all paths and file names used can now use non-Latin characters;
Fixed several NVR- and ROM-related bugs in the process of doing the above.
This commit is contained in:
30
src/vid_s3.c
30
src/vid_s3.c
@@ -2063,7 +2063,7 @@ static int vram_sizes[] =
|
||||
3 /*8 MB*/
|
||||
};
|
||||
|
||||
static void *s3_init(char *bios_fn, int chip)
|
||||
static void *s3_init(wchar_t *bios_fn, int chip)
|
||||
{
|
||||
s3_t *s3 = malloc(sizeof(s3_t));
|
||||
svga_t *svga = &s3->svga;
|
||||
@@ -2124,7 +2124,7 @@ static void *s3_init(char *bios_fn, int chip)
|
||||
return s3;
|
||||
}
|
||||
|
||||
void *s3_vision864_init(char *bios_fn)
|
||||
void *s3_vision864_init(wchar_t *bios_fn)
|
||||
{
|
||||
s3_t *s3 = s3_init(bios_fn, S3_VISION864);
|
||||
|
||||
@@ -2140,29 +2140,29 @@ void *s3_vision864_init(char *bios_fn)
|
||||
|
||||
void *s3_bahamas64_init()
|
||||
{
|
||||
s3_t *s3 = s3_vision864_init("roms/bahamas64.BIN");
|
||||
s3_t *s3 = s3_vision864_init(L"roms/bahamas64.BIN");
|
||||
return s3;
|
||||
}
|
||||
|
||||
void *s3_phoenix_vision864_init()
|
||||
{
|
||||
s3_t *s3 = s3_vision864_init("roms/86c864p.bin");
|
||||
s3_t *s3 = s3_vision864_init(L"roms/86c864p.bin");
|
||||
return s3;
|
||||
}
|
||||
|
||||
int s3_bahamas64_available()
|
||||
{
|
||||
return rom_present("roms/bahamas64.BIN");
|
||||
return rom_present(L"roms/bahamas64.BIN");
|
||||
}
|
||||
|
||||
int s3_phoenix_vision864_available()
|
||||
{
|
||||
return rom_present("roms/86c864p.bin");
|
||||
return rom_present(L"roms/86c864p.bin");
|
||||
}
|
||||
|
||||
void *s3_phoenix_trio32_init()
|
||||
{
|
||||
s3_t *s3 = s3_init("roms/86C732P.bin", S3_TRIO32);
|
||||
s3_t *s3 = s3_init(L"roms/86C732P.bin", S3_TRIO32);
|
||||
|
||||
s3->id = 0xe1; /*Trio32*/
|
||||
s3->id_ext = 0x10;
|
||||
@@ -2177,10 +2177,10 @@ void *s3_phoenix_trio32_init()
|
||||
|
||||
int s3_phoenix_trio32_available()
|
||||
{
|
||||
return rom_present("roms/86C732P.bin");
|
||||
return rom_present(L"roms/86C732P.bin");
|
||||
}
|
||||
|
||||
void *s3_trio64_init(char *bios_fn)
|
||||
void *s3_trio64_init(wchar_t *bios_fn)
|
||||
{
|
||||
int card_id = 0;
|
||||
s3_t *s3 = s3_init(bios_fn, S3_TRIO64);
|
||||
@@ -2206,35 +2206,35 @@ void *s3_trio64_init(char *bios_fn)
|
||||
|
||||
void *s3_9fx_init()
|
||||
{
|
||||
s3_t *s3 = s3_trio64_init("roms/s3_764.bin");
|
||||
s3_t *s3 = s3_trio64_init(L"roms/s3_764.bin");
|
||||
return s3;
|
||||
}
|
||||
|
||||
void *s3_phoenix_trio64_init()
|
||||
{
|
||||
s3_t *s3 = s3_trio64_init("roms/86C764X1.bin");
|
||||
s3_t *s3 = s3_trio64_init(L"roms/86C764X1.bin");
|
||||
return s3;
|
||||
}
|
||||
|
||||
void *s3_diamond_stealth64_init()
|
||||
{
|
||||
s3_t *s3 = s3_trio64_init("roms/STEALT64.BIN");
|
||||
s3_t *s3 = s3_trio64_init(L"roms/STEALT64.BIN");
|
||||
return s3;
|
||||
}
|
||||
|
||||
int s3_9fx_available()
|
||||
{
|
||||
return rom_present("roms/s3_764.bin");
|
||||
return rom_present(L"roms/s3_764.bin");
|
||||
}
|
||||
|
||||
int s3_phoenix_trio64_available()
|
||||
{
|
||||
return rom_present("roms/86C764X1.bin");
|
||||
return rom_present(L"roms/86C764X1.bin");
|
||||
}
|
||||
|
||||
int s3_diamond_stealth64_available()
|
||||
{
|
||||
return rom_present("roms/STEALT64.BIN");
|
||||
return rom_present(L"roms/STEALT64.BIN");
|
||||
}
|
||||
|
||||
void s3_close(void *p)
|
||||
|
||||
Reference in New Issue
Block a user