6 Commits

Author SHA1 Message Date
clobber 7f8027bab7 Bump version in order for sparkle updater to work. Core is still 1.7.4 2014-05-30 15:36:21 -05:00
clobber e1506fed7b Add OEGameCoreOptions for multi-system options and required bios/system files per core
Options:
OEGameCoreHasGlitches - Compatibility and graphics issues; core is WIP. Shows warning at core launch.
OEGameCoreRequiresFiles - Needs bios or system files. Use OERequiredFiles array of dictionaries.
OEGameCoreSaveStatesNotSupported - Save states are not supported. Disables save UI in HUD.
OEGameCoreSupportsCheatCode - Cheat codes are supported. Enables cheat UI in HUD.
2014-05-26 02:05:51 -05:00
clobber d6337fb5b3 Build fix for new compiler/xcode 5.1 2014-04-21 17:59:33 -05:00
clobber 818519ea85 Add error: parameter to -loadFileAtPath: method. 2014-02-08 14:23:46 -08:00
Alexander Strange 7c14330152 Compilation speed: enable modules 2014-01-19 22:36:37 -08:00
clobber 61eb9a6b5d Update spakle update URL and remove DSA key 2013-12-21 21:32:20 -06:00
6 changed files with 94 additions and 72 deletions
+1 -1
View File
@@ -224,7 +224,7 @@ static void writeSaveFile(const char* path, int type)
retro_run();
}
- (BOOL)loadFileAtPath: (NSString*) path
- (BOOL)loadFileAtPath:(NSString *)path error:(NSError **)error
{
memset(pad, 0, sizeof(int16_t) * 10);
+24 -14
View File
@@ -37,8 +37,6 @@
/* Begin PBXBuildFile section */
82287C09101E9C2C0072172D /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 82287C08101E9C2C0072172D /* libz.dylib */; };
82287C39101E9DB40072172D /* GenPlusGameCore.m in Sources */ = {isa = PBXBuildFile; fileRef = 82287C34101E9DB40072172D /* GenPlusGameCore.m */; };
8230C7F110AFCBA200412F24 /* config.yaml in CopyFiles */ = {isa = PBXBuildFile; fileRef = 8230C7E510AFCB6200412F24 /* config.yaml */; };
8230C81910AFCCB700412F24 /* dsa_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = 8230C81810AFCCB700412F24 /* dsa_pub.pem */; };
8D5B49B0048680CD000E48DA /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; };
8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */; };
941FF4F9162A4BAE005A9427 /* eeprom_93c.c in Sources */ = {isa = PBXBuildFile; fileRef = 941FF4F3162A4BAE005A9427 /* eeprom_93c.c */; };
@@ -122,7 +120,6 @@
dstPath = "";
dstSubfolderSpec = 16;
files = (
8230C7F110AFCBA200412F24 /* config.yaml in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -133,12 +130,9 @@
089C167EFE841241C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
089C167FFE841241C02AAC07 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
32DBCF630370AF2F00C91783 /* GenesisPlus_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GenesisPlus_Prefix.pch; sourceTree = "<group>"; };
82287C08101E9C2C0072172D /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; };
82287C33101E9DB40072172D /* GenPlusGameCore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GenPlusGameCore.h; sourceTree = "<group>"; };
82287C34101E9DB40072172D /* GenPlusGameCore.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GenPlusGameCore.m; sourceTree = "<group>"; };
8230C7E510AFCB6200412F24 /* config.yaml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = config.yaml; sourceTree = "<group>"; };
8230C81810AFCCB700412F24 /* dsa_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = dsa_pub.pem; sourceTree = "<group>"; };
825C7E44101FAB7F0072187B /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; };
8D5B49B6048680CD000E48DA /* GenesisPlus.oecoreplugin */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = GenesisPlus.oecoreplugin; sourceTree = BUILT_PRODUCTS_DIR; };
8D5B49B7048680CD000E48DA /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
@@ -308,8 +302,6 @@
089C167CFE841241C02AAC07 /* Resources */ = {
isa = PBXGroup;
children = (
8230C81810AFCCB700412F24 /* dsa_pub.pem */,
8230C7E510AFCB6200412F24 /* config.yaml */,
8D5B49B7048680CD000E48DA /* Info.plist */,
089C167DFE841241C02AAC07 /* InfoPlist.strings */,
);
@@ -359,7 +351,6 @@
32C88E010371C26100C91783 /* Other Sources */ = {
isa = PBXGroup;
children = (
32DBCF630370AF2F00C91783 /* GenesisPlus_Prefix.pch */,
);
name = "Other Sources";
sourceTree = "<group>";
@@ -590,7 +581,7 @@
isa = PBXProject;
attributes = {
BuildIndependentTargetsInParallel = YES;
LastUpgradeCheck = 0430;
LastUpgradeCheck = 0500;
};
buildConfigurationList = 1DEB913E08733D840010E9CD /* Build configuration list for PBXProject "GenesisPlus" */;
compatibilityVersion = "Xcode 3.2";
@@ -616,7 +607,6 @@
buildActionMask = 2147483647;
files = (
8D5B49B0048680CD000E48DA /* InfoPlist.strings in Resources */,
8230C81910AFCCB700412F24 /* dsa_pub.pem in Resources */,
94ED8A9814CF933700FF8901 /* imageformat.txt in Resources */,
94ED8A9B14CF933700FF8901 /* svpdoc.txt in Resources */,
94ED8B2B14CF933800FF8901 /* changes.txt in Resources */,
@@ -746,6 +736,7 @@
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = YES;
CLANG_ENABLE_OBJC_ARC = YES;
COMBINE_HIDPI_IMAGES = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
HEADER_SEARCH_PATHS = (
"\"$(SRCROOT)/../OpenEmu\"/**",
@@ -782,6 +773,7 @@
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = YES;
CLANG_ENABLE_OBJC_ARC = YES;
COMBINE_HIDPI_IMAGES = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
HEADER_SEARCH_PATHS = (
"\"$(SRCROOT)/../OpenEmu\"/**",
@@ -816,7 +808,13 @@
1DEB913F08733D840010E9CD /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
CLANG_ENABLE_MODULES = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
GCC_C_LANGUAGE_STANDARD = c99;
GCC_INCREASE_PRECOMPILED_HEADER_SHARING = YES;
@@ -824,8 +822,12 @@
GCC_SYMBOLS_PRIVATE_EXTERN = YES;
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.7;
ONLY_ACTIVE_ARCH = YES;
OTHER_CFLAGS = "-DOSD_CPU_H";
SDKROOT = macosx;
};
@@ -834,7 +836,13 @@
1DEB914008733D840010E9CD /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
CLANG_ENABLE_MODULES = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
DEAD_CODE_STRIPPING = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
GCC_C_LANGUAGE_STANDARD = c99;
@@ -843,6 +851,9 @@
GCC_SYMBOLS_PRIVATE_EXTERN = YES;
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.7;
OTHER_CFLAGS = "-DOSD_CPU_H";
@@ -880,7 +891,6 @@
8230C7D310AFCB0600412F24 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
INSTALL_PATH = "\"$(USER_LIBRARY_DIR)/Application Support/OpenEmu/Cores\"";
PRODUCT_NAME = Distribution;
SKIP_INSTALL = YES;
+50 -8
View File
@@ -19,17 +19,61 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1.7.4</string>
<string>1.7.4.1</string>
<key>NSPrincipalClass</key>
<string>OEGameCoreController</string>
<key>OEGameCoreClass</key>
<string>GenPlusGameCore</string>
<key>OEGameCoreOptions</key>
<dict>
<key>openemu.system.scd</key>
<dict>
<key>OEGameCoreRequiresFiles</key>
<true/>
<key>OEGameCoreSupportsCheatCode</key>
<true/>
<key>OERequiredFiles</key>
<array>
<dict>
<key>Description</key>
<string>Mega-CD Model 1 (EU 921027) BIOS 1.00</string>
<key>MD5</key>
<string>e66fa1dc5820d254611fdcdba0662372</string>
<key>Name</key>
<string>BIOS_CD_E.bin</string>
<key>Size</key>
<integer>131072</integer>
</dict>
<dict>
<key>Description</key>
<string>Sega CD Model 1 (US 921011) BIOS 1.10</string>
<key>MD5</key>
<string>2efd74e3232ff260e371b99f84024f7f</string>
<key>Name</key>
<string>BIOS_CD_U.bin</string>
<key>Size</key>
<integer>131072</integer>
</dict>
<dict>
<key>Description</key>
<string>Mega-CD Model 1 (JP 911217) BIOS 1.00p</string>
<key>MD5</key>
<string>278a9397d192149e84e820ac621a8edd</string>
<key>Name</key>
<string>BIOS_CD_J.bin</string>
<key>Size</key>
<integer>131072</integer>
</dict>
</array>
</dict>
<key>openemu.system.sg</key>
<dict>
<key>OEGameCoreSupportsCheatCode</key>
<true/>
</dict>
</dict>
<key>OEGameCorePlayerCount</key>
<string>2</string>
<key>OEGameCoreRequiresFiles</key>
<true/>
<key>OEGameCoreSupportsCheatCode</key>
<true/>
<key>OEProjectURL</key>
<string>http://code.google.com/p/genplus-gx</string>
<key>OESystemIdentifiers</key>
@@ -40,8 +84,6 @@
<key>SUEnableAutomaticChecks</key>
<string>1</string>
<key>SUFeedURL</key>
<string>http://openemu.org/updater/genesisplus_appcast.xml</string>
<key>SUPublicDSAKeyFile</key>
<string>dsa_pub.pem</string>
<string>https://raw.github.com/OpenEmu/OpenEmu-Update/master/genesisplus_appcast.xml</string>
</dict>
</plist>
-10
View File
@@ -1,10 +0,0 @@
build_now: 'YES'
create_core_path: 'YES'
download_base_url: http://github.com/downloads/openemu/openemu/
release_notes_base_url: http://openemu.org/category/releasenotes/genesisplus/
appcast_basefolder: '/Users/jweinberg/Desktop/Appcast'
appcast_xml_name: 'genesisplus_appcast.xml'
keychain_privkey_name: 'Sparkle Private Key'
css_file_name: 'rnotes.css'
bundle_extension: 'oecoreplugin'
-20
View File
@@ -1,20 +0,0 @@
-----BEGIN PUBLIC KEY-----
MIIDOjCCAi0GByqGSM44BAEwggIgAoIBAQD/nSuLzikeU6MrymSPr34AiU2RDJz6
0pm/3PPs27f6QTtbUAvGC13q6XWrE3HJU8Gz7RM0EJZGpiwb86LgqOJhjfQ7WKse
uaGdbHnvJEFsGqpKX7rnUWaWO3HAsKzDx4HzJqKupFEbTbzXl/GT3JMm+a3PXA3S
kyATydRPrX583Ih8iHO1zQs1pwp2AnUvaQXvp4QOLFWheH5napkDZBjc9B7H38dg
f4c0QqEXJw0lJbG26FxhpOWMiXwpWpOHSfb+XtmzpeTDIHxKPLMEdf2wc+xNC/M9
GdVBfM7+hCEhl1JGqNWPpT7ZzciX8Cxg+5/MIfx+BQ7xQ4wo1SN7y1bZAhUAuBcT
+ZsHbLXlR3uGHLIMg8boUKcCggEAGKgD56/tB6siFr5zEY+RTozPLmbBEcvhz5/p
hAQo7z7ODimZAA1MN1J7Hv7o1S5D9dpZuOnGhiXaN3Z50WdePb9LVH7twrB8v3Xn
ZOEHpumYNcYhvXrIx8LbhnMZmU27xSnrOQF9UfokRxGnXkNmlIwjT0NWqZCqQZwM
wVj1Bgld3YV7CpGTF3aGM6a0pk9LBB71PoczXAx0Cum87ouXXy3c8F/82RF9tgXE
ZBQ+7K2QXYPv9smbYDB+ZlsQ4VTOi3AReG5AeHTVWha3uaSFxY5vKpfau31iMRuT
b1VQ2HVynBpemwhAw4FFvj5dm94aN0Rrvq9BKM09DL4zoOlLogOCAQUAAoIBAE8B
I8z38GdbtswSoSV5JZ9z9cBMj/7x/sHi5ED9v1M8MD6AcxJSbo2cbK98xA3A9U22
6XFHthGReVLa0dyN3Ov+GhBdf8b4CBuebAAS4z8du2EvUFtwDUHorLIo2Qtq2SYR
wpznpB9+3g+z+8GZbzZkdm2mFBKa6GItj82qfEHwxB40aEBx7uQXzM3TH0rV8sMq
u91aAVUQuoiG2/IYWc5O34kKMlHUTt6+uuJiSG0ax8ysWE5XltCfSh/VJcGrzKU6
ZjGBzh8j5+KSXgoe9TuKlsnN5HDCZKaFTCvrxq889HJj0/ks4UrIF+meEyJvDt4P
O4HHoKRtUdLEBMcY0JA=
-----END PUBLIC KEY-----
+19 -19
View File
@@ -124,7 +124,7 @@ static const uint8 shift_table[] = { 6, 7, 0, 8 };
static const uint8 col_mask_table[] = { 0x0F, 0x1F, 0x0F, 0x3F };
static const uint16 row_mask_table[] = { 0x0FF, 0x1FF, 0x2FF, 0x3FF };
static uint8 border; /* Border color index */
static uint8 bordrr; /* Border color index */
static uint8 pending; /* Pending write flag */
static uint8 code; /* Code register */
static uint8 dma_type; /* DMA mode */
@@ -218,7 +218,7 @@ void vdp_reset(void)
addr_latch = 0;
code = 0;
pending = 0;
border = 0;
bordrr = 0;
hint_pending = 0;
vint_pending = 0;
dmafill = 0;
@@ -517,7 +517,7 @@ int vdp_context_load(uint8 *state, uint8 version)
bg_list_index = 0x800;
/* reinitialize palette */
color_update_m5(0, *(uint16 *)&cram[border << 1]);
color_update_m5(0, *(uint16 *)&cram[bordrr << 1]);
for(i = 1; i < 0x40; i++)
{
color_update_m5(i, *(uint16 *)&cram[i << 1]);
@@ -533,7 +533,7 @@ int vdp_context_load(uint8 *state, uint8 version)
{
color_update_m4(i, *(uint16 *)&cram[i << 1]);
}
color_update_m4(0x40, *(uint16 *)&cram[(0x10 | (border & 0x0F)) << 1]);
color_update_m4(0x40, *(uint16 *)&cram[(0x10 | (bordrr & 0x0F)) << 1]);
}
/* invalidate cache */
@@ -1137,7 +1137,7 @@ void vdp_sms_ctrl_w(unsigned int data)
{
color_update_m4(i, *(uint16 *)&cram[i << 1]);
}
color_update_m4(0x40, *(uint16 *)&cram[(0x10 | (border & 0x0F)) << 1]);
color_update_m4(0x40, *(uint16 *)&cram[(0x10 | (bordrr & 0x0F)) << 1]);
}
}
}
@@ -1583,7 +1583,7 @@ static void vdp_reg_w(unsigned int r, unsigned int d, unsigned int cycles)
if (reg[1] & 0x04)
{
/* Mode 5 */
color_update_m5(0x00, *(uint16 *)&cram[border << 1]);
color_update_m5(0x00, *(uint16 *)&cram[bordrr << 1]);
for (i = 1; i < 0x40; i++)
{
color_update_m5(i, *(uint16 *)&cram[i << 1]);
@@ -1596,7 +1596,7 @@ static void vdp_reg_w(unsigned int r, unsigned int d, unsigned int cycles)
{
color_update_m4(i, *(uint16 *)&cram[i << 1]);
}
color_update_m4(0x40, *(uint16 *)&cram[(0x10 | (border & 0x0F)) << 1]);
color_update_m4(0x40, *(uint16 *)&cram[(0x10 | (bordrr & 0x0F)) << 1]);
}
}
}
@@ -1749,7 +1749,7 @@ static void vdp_reg_w(unsigned int r, unsigned int d, unsigned int cycles)
}
/* Reset color palette */
color_update_m5(0x00, *(uint16 *)&cram[border << 1]);
color_update_m5(0x00, *(uint16 *)&cram[bordrr << 1]);
for (i = 1; i < 0x40; i++)
{
color_update_m5(i, *(uint16 *)&cram[i << 1]);
@@ -1800,7 +1800,7 @@ static void vdp_reg_w(unsigned int r, unsigned int d, unsigned int cycles)
{
color_update_m4(i, *(uint16 *)&cram[i << 1]);
}
color_update_m4(0x40, *(uint16 *)&cram[(0x10 | (border & 0x0F)) << 1]);
color_update_m4(0x40, *(uint16 *)&cram[(0x10 | (bordrr & 0x0F)) << 1]);
/* Mode 4 bus access */
vdp_68k_data_w = vdp_68k_data_w_m4;
@@ -1910,10 +1910,10 @@ static void vdp_reg_w(unsigned int r, unsigned int d, unsigned int cycles)
/* Check if backdrop color changed */
d &= 0x3F;
if (d != border)
if (d != bordrr)
{
/* Update backdrop color */
border = d;
bordrr = d;
/* Reset palette entry */
if (reg[1] & 4)
@@ -1990,7 +1990,7 @@ static void vdp_reg_w(unsigned int r, unsigned int d, unsigned int cycles)
{
/* Reset color palette */
int i;
color_update_m5(0x00, *(uint16 *)&cram[border << 1]);
color_update_m5(0x00, *(uint16 *)&cram[bordrr << 1]);
for (i = 1; i < 0x40; i++)
{
color_update_m5(i, *(uint16 *)&cram[i << 1]);
@@ -2269,7 +2269,7 @@ static void vdp_bus_w(unsigned int data)
}
/* Update backdrop color */
if (index == border)
if (index == bordrr)
{
color_update_m5(0x00, data);
}
@@ -2382,7 +2382,7 @@ static void vdp_68k_data_w_m4(unsigned int data)
color_update_m4(index, data);
/* Update backdrop color */
if (index == (0x10 | (border & 0x0F)))
if (index == (0x10 | (bordrr & 0x0F)))
{
color_update_m4(0x40, data);
}
@@ -2612,7 +2612,7 @@ static void vdp_z80_data_w_m4(unsigned int data)
color_update_m4(index, data);
/* Update backdrop color */
if (index == (0x10 | (border & 0x0F)))
if (index == (0x10 | (bordrr & 0x0F)))
{
color_update_m4(0x40, data);
}
@@ -2712,7 +2712,7 @@ static void vdp_z80_data_w_m5(unsigned int data)
}
/* Update backdrop color */
if (index == border)
if (index == bordrr)
{
color_update_m5(0x00, data);
}
@@ -2875,7 +2875,7 @@ static void vdp_z80_data_w_ms(unsigned int data)
color_update_m4(index, data);
/* Update backdrop color */
if (index == (0x10 | (border & 0x0F)))
if (index == (0x10 | (bordrr & 0x0F)))
{
color_update_m4(0x40, data);
}
@@ -2947,7 +2947,7 @@ static void vdp_z80_data_w_gg(unsigned int data)
color_update_m4(index, data);
/* Update backdrop color */
if (index == (0x10 | (border & 0x0F)))
if (index == (0x10 | (bordrr & 0x0F)))
{
color_update_m4(0x40, data);
}
@@ -3218,7 +3218,7 @@ static void vdp_dma_fill(unsigned int length)
}
/* Update backdrop color */
if (index == border)
if (index == bordrr)
{
color_update_m5(0x00, data);
}