RetroPie-Setup/scriptmodules/emulators/gngeopi.sh

64 lines
2.1 KiB
Bash

#!/usr/bin/env bash
# This file is part of The RetroPie Project
#
# The RetroPie Project is the legal property of its developers, whose names are
# too numerous to list here. Please refer to the COPYRIGHT.md file distributed with this source.
#
# See the LICENSE.md file at the top-level directory of this distribution and
# at https://raw.githubusercontent.com/RetroPie/RetroPie-Setup/master/LICENSE.md
#
rp_module_id="gngeopi"
rp_module_desc="NeoGeo emulator GnGeoPi"
rp_module_help="ROM Extension: .zip\n\nCopy your GnGeoPi roms to $romdir/neogeo\n\nCopy the required BIOS file neogeo.zip BIOS to $romdir/neogeo"
rp_module_licence="NONCOM https://raw.githubusercontent.com/ymartel06/GnGeo-Pi/master/gngeo/COPYING"
rp_module_repo="git https://github.com/ymartel06/GnGeo-Pi.git master"
rp_module_section="opt"
rp_module_flags="!all arm !mali !kms"
function depends_gngeopi() {
getDepends libsdl1.2-dev
}
function sources_gngeopi() {
gitPullOrClone
}
function build_gngeopi() {
cd gngeo
chmod +x configure
./configure --disable-i386asm --prefix="$md_inst"
make clean
# not safe for building in parallel
make -j1
md_ret_require="$md_build/gngeo/src/gngeo"
}
function install_gngeopi() {
cd gngeo
make install
mkdir -p "$md_inst/neogeobios"
}
function configure_gngeopi() {
mkRomDir "arcade"
mkRomDir "neogeo"
# move old config to new location
moveConfigDir "$home/.gngeo" "$md_conf_root/neogeo"
if [[ ! -f "$md_conf_root/neogeo/gngeorc" ]]; then
# add default controls for keyboard p1/p2
cat > "$md_conf_root/neogeo/gngeorc" <<\_EOF_
p1control A=K122,B=K120,C=K97,D=K115,START=K49,COIN=K51,UP=K273,DOWN=K274,LEFT=K276,RIGHT=K275,MENU=K27
p2control A=K108,B=K59,C=K111,D=K112,START=K50,COIN=K52,UP=K264,DOWN=K261,LEFT=K260,RIGHT=K262,MENU=K27
_EOF_
chown -R "$__user":"$__group" "$md_conf_root/neogeo/gngeorc"
fi
addEmulator 0 "$md_id" "arcade" "$md_inst/bin/gngeo -i $romdir/neogeo -B $md_inst/neogeobios %ROM%"
addEmulator 0 "$md_id" "neogeo" "$md_inst/bin/gngeo -i $romdir/neogeo -B $md_inst/neogeobios %ROM%"
addSystem "arcade"
addSystem "neogeo"
}