From 5453c4734c277a36b2e4e4cfb1959d2b609875fb Mon Sep 17 00:00:00 2001 From: Benjamin FRANCOIS Date: Fri, 9 Mar 2018 14:08:55 -0800 Subject: [PATCH] genesis_plus_gx_libretro: new recipe for a libretro core (#2297) which can emulate the following systems: * Megadrive / Genesis * Master System * Game Gear * SG-1000 --- .../genesis_plus_gx_libretro.info.in | 50 ++++++++++++++++ ...sis_plus_gx_libretro-1.7.4_20180303.recipe | 57 +++++++++++++++++++ .../licenses/GenesisPlusGX | 38 +++++++++++++ .../genesis_plus_gx_libretro/licenses/LIBCHDR | 27 +++++++++ .../genesis_plus_gx_libretro/licenses/Xiph | 30 ++++++++++ 5 files changed, 202 insertions(+) create mode 100644 games-emulation/genesis_plus_gx_libretro/additional-files/genesis_plus_gx_libretro.info.in create mode 100644 games-emulation/genesis_plus_gx_libretro/genesis_plus_gx_libretro-1.7.4_20180303.recipe create mode 100644 games-emulation/genesis_plus_gx_libretro/licenses/GenesisPlusGX create mode 100644 games-emulation/genesis_plus_gx_libretro/licenses/LIBCHDR create mode 100644 games-emulation/genesis_plus_gx_libretro/licenses/Xiph diff --git a/games-emulation/genesis_plus_gx_libretro/additional-files/genesis_plus_gx_libretro.info.in b/games-emulation/genesis_plus_gx_libretro/additional-files/genesis_plus_gx_libretro.info.in new file mode 100644 index 000000000..bf33274f8 --- /dev/null +++ b/games-emulation/genesis_plus_gx_libretro/additional-files/genesis_plus_gx_libretro.info.in @@ -0,0 +1,50 @@ +display_name = "Sega - MS/GG/MD/CD (Genesis Plus GX)" +authors = "Charles McDonald|Eke-Eke" +supported_extensions = "mdx|md|smd|gen|bin|cue|iso|sms|gg|sg|68k|chd" +corename = "Genesis Plus GX" +manufacturer = "Sega" +categories = "Emulator" +systemname = "Sega 8/16-bit (Various)" +database = "Sega - Game Gear|Sega - Master System - Mark III|Sega - Mega-CD - Sega CD|Sega - Mega Drive - Genesis|Sega - PICO|Sega - SG-1000" +license = "Non-commercial" +permissions = "" +display_version = "@DISPLAY_VERSION@" +supports_no_game = "false" +firmware_count = 12 +firmware0_desc = "bios_MD.bin (Mega Drive startup ROM)" +firmware0_path = "bios_MD.bin" +firmware0_opt = "true" +firmware1_desc = "bios_CD_E.bin (MegaCD EU BIOS)" +firmware1_path = "bios_CD_E.bin" +firmware1_opt = "false" +firmware2_desc = "bios_CD_U.bin (SegaCD US BIOS)" +firmware2_path = "bios_CD_U.bin" +firmware2_opt = "false" +firmware3_desc = "bios_CD_J.bin (MegaCD JP BIOS)" +firmware3_path = "bios_CD_J.bin" +firmware3_opt = "false" +firmware4_desc = "bios_E.sms (MasterSystem EU BIOS)" +firmware4_path = "bios_E.sms" +firmware4_opt = "true" +firmware5_desc = "bios_U.sms (MasterSystem US BIOS)" +firmware5_path = "bios_U.sms" +firmware5_opt = "true" +firmware6_desc = "bios_J.sms (MasterSystem JP BIOS)" +firmware6_path = "bios_J.sms" +firmware6_opt = "true" +firmware7_desc = "bios.gg (GameGear BIOS)" +firmware7_path = "bios.gg" +firmware7_opt = "true" +firmware8_desc = "sk.bin (Sonic & Knuckles ROM)" +firmware8_path = "sk.bin" +firmware8_opt = "true" +firmware9_desc = "sk2chip.bin (Sonic & Knuckles UPMEM ROM)" +firmware9_path = "sk2chip.bin" +firmware9_opt = "true" +firmware10_desc = "areplay.bin (Action Replay ROM)" +firmware10_path = "areplay.bin" +firmware10_opt = "true" +firmware11_desc = "ggenie.bin (Game Genie ROM)" +firmware11_path = "ggenie.bin" +firmware11_opt = "true" +notes = "(!) sk2chip.bin (md5): b4e76e416b887f4e7413ba76fa735f16|(!) sk.bin (md5): 4ea493ea4e9f6c9ebfccbdb15110367e" diff --git a/games-emulation/genesis_plus_gx_libretro/genesis_plus_gx_libretro-1.7.4_20180303.recipe b/games-emulation/genesis_plus_gx_libretro/genesis_plus_gx_libretro-1.7.4_20180303.recipe new file mode 100644 index 000000000..3d413b297 --- /dev/null +++ b/games-emulation/genesis_plus_gx_libretro/genesis_plus_gx_libretro-1.7.4_20180303.recipe @@ -0,0 +1,57 @@ +SUMMARY="A port of Genesis Plus GX, a Sega 8/16bit emulator to the libretro API" +DESCRIPTION="Genesis Plus GX is a Sega Genesis, Mega-CD, Game Gear, SG-1000 \ +and Master System (Mark-III) emulator. Its main focuses are accuracy and \ +performance. It is based off the original Genesis Plus by Charles McDonald." +HOMEPAGE="https://github.com/ekeeke/Genesis-Plus-GX" +COPYRIGHT="1998-2018 Charles McDonald, Eke-eke, the libretro team" +LICENSE="GenesisPlusGX + GNU LGPL v2.1 + LIBCHDR + LibPNG + Xiph + Zlib" +REVISION="1" +srcGitRev="0aa222ecd8d2d0f0c5b60b9f571ff7292cc68f6b" +SOURCE_URI="https://github.com/libretro/Genesis-Plus-GX/archive/$srcGitRev.tar.gz" +CHECKSUM_SHA256="b2151852914ff0420159a0e60c46e33102ad12b18c6db45742ce152e13851f18" +SOURCE_FILENAME="libretro-genesis-plus-gx-${portVersion/_/-}-$srcGitRev.tar.gz" +SOURCE_DIR="Genesis-Plus-GX-$srcGitRev" +ADDITIONAL_FILES="genesis_plus_gx_libretro.info.in" + +ARCHITECTURES="!x86_gcc2 ?x86 x86_64" +SECONDARY_ARCHITECTURES="x86" + +PROVIDES=" + genesis_plus_gx_libretro$secondaryArchSuffix = $portVersion + addon:genesis_plus_gx_libretro$secondaryArchSuffix = $portVersion + " +REQUIRES=" + haiku$secondaryArchSuffix + retroarch$secondaryArchSuffix + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + " +BUILD_PREREQUIRES=" + cmd:gcc$secondaryArchSuffix + cmd:make + " + +BUILD() +{ + sed -e "s/@DISPLAY_VERSION@/v${portVersion/_/-}/" \ + $portDir/additional-files/genesis_plus_gx_libretro.info.in \ + > genesis_plus_gx_libretro.info + make -f Makefile.libretro $jobArgs +} + +INSTALL() +{ + install -m 0755 -d "$docDir" + install -m 0644 -t "$docDir" README.md LICENSE.txt + install -m 0755 -d "$addOnsDir"/libretro + install -m 0644 -t "$addOnsDir"/libretro \ + genesis_plus_gx_libretro.info \ + genesis_plus_gx_libretro.so +} diff --git a/games-emulation/genesis_plus_gx_libretro/licenses/GenesisPlusGX b/games-emulation/genesis_plus_gx_libretro/licenses/GenesisPlusGX new file mode 100644 index 000000000..c9c68eda2 --- /dev/null +++ b/games-emulation/genesis_plus_gx_libretro/licenses/GenesisPlusGX @@ -0,0 +1,38 @@ + +Unless otherwise explicitly stated, all code in Genesis Plus GX is released +under the following license: + +Copyright (c) 1998-2003 Charles MacDonald +Copyright (c) 2007-2017 Eke-Eke +Some portions copyright Nicola Salmoria and the MAME team +All rights reserved. + +Redistribution and use of this code or any derivative works are permitted +provided that the following conditions are met: + +* Redistributions may not be sold, nor may they be used in a commercial +product or activity. + +* Redistributions that are modified from the original source must include the +complete source code, including the source code for all components used by a +binary built from the modified sources. However, as a special exception, the +source code distributed need not include anything that is normally distributed +(in either source or binary form) with the major components (compiler, kernel, +and so on) of the operating system on which the executable runs, unless that +component itself accompanies the executable. + +* Redistributions must reproduce the above copyright notice, this list of +conditions and the following disclaimer in the documentation and/or other +materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE +LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. diff --git a/games-emulation/genesis_plus_gx_libretro/licenses/LIBCHDR b/games-emulation/genesis_plus_gx_libretro/licenses/LIBCHDR new file mode 100644 index 000000000..3ba03ab8e --- /dev/null +++ b/games-emulation/genesis_plus_gx_libretro/licenses/LIBCHDR @@ -0,0 +1,27 @@ +MAME CHD interface +------------------ +Copyright Aaron Giles +Copyright Romain Tisserand +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + Neither the name of the nor the + names of its contributors may be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/games-emulation/genesis_plus_gx_libretro/licenses/Xiph b/games-emulation/genesis_plus_gx_libretro/licenses/Xiph new file mode 100644 index 000000000..ce8d016c3 --- /dev/null +++ b/games-emulation/genesis_plus_gx_libretro/licenses/Xiph @@ -0,0 +1,30 @@ +TREMOR library and FLAC codec distributed under the following license: + +Copyright (c) 2002, Xiph.org Foundation + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +- Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +- Redistributions in binary form must reproduce the above copyright +notice, this list of conditions and the following disclaimer in the +documentation and/or other materials provided with the distribution. + +- Neither the name of the Xiph.org Foundation nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION +OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.