aboutsummaryrefslogtreecommitdiff
path: root/libretro.c
diff options
context:
space:
mode:
authorTwinaphex2017-01-15 09:16:59 +0100
committerGitHub2017-01-15 09:16:59 +0100
commit0e8ec6b5f7ab59ad13970536c76e2c8c52a23965 (patch)
tree87330b0cb53dd4302071999a312c712672466550 /libretro.c
parenta25a25f9a1327a996fe4ff37d3bfb7e3c15d174e (diff)
parentf1ca19db63461fd36a5739b0b7bd172185811d50 (diff)
downloadsnes9x2005-0e8ec6b5f7ab59ad13970536c76e2c8c52a23965.tar.gz
snes9x2005-0e8ec6b5f7ab59ad13970536c76e2c8c52a23965.tar.bz2
snes9x2005-0e8ec6b5f7ab59ad13970536c76e2c8c52a23965.zip
Merge pull request #23 from jamsilva/master
Cleanups, fixes (including one for "Retroarch/RetroPie Super Mario Allstars")
Diffstat (limited to 'libretro.c')
-rw-r--r--libretro.c104
1 files changed, 5 insertions, 99 deletions
diff --git a/libretro.c b/libretro.c
index 65163f5..eb67db4 100644
--- a/libretro.c
+++ b/libretro.c
@@ -1,93 +1,4 @@
-/*******************************************************************************
- Snes9x - Portable Super Nintendo Entertainment System (TM) emulator.
-
- (c) Copyright 1996 - 2002 Gary Henderson (gary.henderson@ntlworld.com) and
- Jerremy Koot (jkoot@snes9x.com)
-
- (c) Copyright 2001 - 2004 John Weidman (jweidman@slip.net)
-
- (c) Copyright 2002 - 2004 Brad Jorsch (anomie@users.sourceforge.net),
- funkyass (funkyass@spam.shaw.ca),
- Joel Yliluoma (http://iki.fi/bisqwit/)
- Kris Bleakley (codeviolation@hotmail.com),
- Matthew Kendora,
- Nach (n-a-c-h@users.sourceforge.net),
- Peter Bortas (peter@bortas.org) and
- zones (kasumitokoduck@yahoo.com)
-
- C4 x86 assembler and some C emulation code
- (c) Copyright 2000 - 2003 zsKnight (zsknight@zsnes.com),
- _Demo_ (_demo_@zsnes.com), and Nach
-
- C4 C++ code
- (c) Copyright 2003 Brad Jorsch
-
- DSP-1 emulator code
- (c) Copyright 1998 - 2004 Ivar (ivar@snes9x.com), _Demo_, Gary Henderson,
- John Weidman, neviksti (neviksti@hotmail.com),
- Kris Bleakley, Andreas Naive
-
- DSP-2 emulator code
- (c) Copyright 2003 Kris Bleakley, John Weidman, neviksti, Matthew Kendora, and
- Lord Nightmare (lord_nightmare@users.sourceforge.net
-
- OBC1 emulator code
- (c) Copyright 2001 - 2004 zsKnight, pagefault (pagefault@zsnes.com) and
- Kris Bleakley
- Ported from x86 assembler to C by sanmaiwashi
-
- SPC7110 and RTC C++ emulator code
- (c) Copyright 2002 Matthew Kendora with research by
- zsKnight, John Weidman, and Dark Force
-
- S-DD1 C emulator code
- (c) Copyright 2003 Brad Jorsch with research by
- Andreas Naive and John Weidman
-
- S-RTC C emulator code
- (c) Copyright 2001 John Weidman
-
- ST010 C++ emulator code
- (c) Copyright 2003 Feather, Kris Bleakley, John Weidman and Matthew Kendora
-
- Super FX x86 assembler emulator code
- (c) Copyright 1998 - 2003 zsKnight, _Demo_, and pagefault
-
- Super FX C emulator code
- (c) Copyright 1997 - 1999 Ivar, Gary Henderson and John Weidman
-
-
- SH assembler code partly based on x86 assembler code
- (c) Copyright 2002 - 2004 Marcus Comstedt (marcus@mc.pp.se)
-
- (c) Copyright 2014 - 2016 Daniel De Matteis. (UNDER NO CIRCUMSTANCE
- WILL COMMERCIAL RIGHTS EVER BE APPROPRIATED TO ANY PARTY)
-
- Specific ports contains the works of other authors. See headers in
- individual files.
-
- Snes9x homepage: http://www.snes9x.com
-
- Permission to use, copy, modify and distribute Snes9x in both binary and
- source form, for non-commercial purposes, is hereby granted without fee,
- providing that this license information and copyright notice appear with
- all copies and any derived work.
-
- This software is provided 'as-is', without any express or implied
- warranty. In no event shall the authors be held liable for any damages
- arising from the use of this software.
-
- Snes9x is freeware for PERSONAL USE only. Commercial users should
- seek permission of the copyright holders first. Commercial use includes
- charging money for Snes9x or software derived from Snes9x.
-
- The copyright holders request that bug fixes and improvements to the code
- should be forwarded to them so everyone can benefit from the modifications
- in future versions.
-
- Super NES and Super Nintendo Entertainment System are trademarks of
- Nintendo Co., Limited and its subsidiary companies.
-*******************************************************************************/
+#include "copyright"
#include <stdio.h>
@@ -284,7 +195,10 @@ void _makepath(char* path, const char* drive, const char* dir,
}
else
*path = 0;
- strcat(path, fname);
+
+ if (fname)
+ strcat(path, fname);
+
if (ext && *ext)
{
strcat(path, ".");
@@ -411,7 +325,6 @@ void retro_init(void)
struct retro_log_callback log;
enum retro_pixel_format rgb565;
static const struct retro_variable vars[] = {
- { "catsfc_SwapJoypads", "Swap Joypads; disabled|enabled" },
{ "catsfc_VideoMode", "Video Mode; auto|NTSC|PAL" },
{ NULL, NULL },
};
@@ -499,11 +412,6 @@ static void check_variables(void)
{
struct retro_variable var;
- var.key = "catsfc_SwapJoypads";
- var.value = NULL;
- if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value)
- Settings.SwapJoypads = strcmp(var.value, "disabled");
-
var.key = "catsfc_VideoMode";
var.value = NULL;
if (environ_cb(RETRO_ENVIRONMENT_GET_VARIABLE, &var) && var.value)
@@ -804,7 +712,6 @@ bool retro_serialize(void* data, size_t size)
memcpy(buffer, &s7r, sizeof(s7r));
buffer += sizeof(s7r);
memcpy(buffer, &rtc_f9, sizeof(rtc_f9));
- buffer += sizeof(rtc_f9);
return true;
}
@@ -859,7 +766,6 @@ bool retro_unserialize(const void* data, size_t size)
memcpy(&s7r, buffer, sizeof(s7r));
buffer += sizeof(s7r);
memcpy(&rtc_f9, buffer, sizeof(rtc_f9));
- buffer += sizeof(rtc_f9);
S9xFixSA1AfterSnapshotLoad();
FixROMSpeed();