diff --git a/pkgs/misc/emulators/retroarch/cores.nix b/pkgs/misc/emulators/retroarch/cores.nix index afebebbf3c06..70c3e4f71a9c 100644 --- a/pkgs/misc/emulators/retroarch/cores.nix +++ b/pkgs/misc/emulators/retroarch/cores.nix @@ -246,6 +246,29 @@ in ]; }; + bsnes-hd = + let + # linux = bsd + # https://github.com/DerKoun/bsnes-hd/blob/f0b6cf34e9780d53516977ed2de64137a8bcc3c5/bsnes/GNUmakefile#L37 + platform = if stdenv.isDarwin then "macos" else "linux"; + in + mkLibRetroCore { + core = "bsnes-hd-beta"; + src = getCoreSrc "bsnes-hd"; + version = "unstable-2021-11-22"; + description = "Port of bsnes-hd to libretro"; + license = lib.licenses.gpl3Only; + makefile = "GNUmakefile"; + makeFlags = [ + "-C" + "bsnes" + "target=libretro" + "platform=${platform}" + ]; + extraBuildInputs = [ xorg.libX11 xorg.libXext ]; + postBuild = "cd bsnes/out"; + }; + bsnes-mercury = mkLibRetroCore { core = "bsnes-mercury-accuracy"; src = getCoreSrc "bsnes-mercury"; diff --git a/pkgs/misc/emulators/retroarch/hashes.json b/pkgs/misc/emulators/retroarch/hashes.json index 3c19ffb0603c..50ba46dd0cb1 100644 --- a/pkgs/misc/emulators/retroarch/hashes.json +++ b/pkgs/misc/emulators/retroarch/hashes.json @@ -97,6 +97,13 @@ "sha256": "VNSeTRryrX2/V38GGXTRLuDEQqDUmX2DUOHAKLxJezU=", "fetchSubmodules": false }, + "bsnes-hd": { + "owner": "DerKoun", + "repo": "bsnes-hd", + "rev": "65f24e56c37f46bb752190024bd4058e64ad77d1", + "sha256": "1dk2i71NOLeTTOZjVll8wrkr5dIH5bGSGUeeHqWjZHE=", + "fetchSubmodules": false + }, "bsnes-mercury": { "owner": "libretro", "repo": "bsnes-mercury", diff --git a/pkgs/misc/emulators/retroarch/update.py b/pkgs/misc/emulators/retroarch/update.py index 062ff44c8008..2a623cb5062f 100755 --- a/pkgs/misc/emulators/retroarch/update.py +++ b/pkgs/misc/emulators/retroarch/update.py @@ -24,6 +24,7 @@ CORES = { "beetle-wswan": {"repo": "beetle-wswan-libretro"}, "bluemsx": {"repo": "bluemsx-libretro"}, "bsnes": {"repo": "bsnes-libretro"}, + "bsnes-hd": {"repo": "bsnes-hd", "owner": "DerKoun"}, "bsnes-mercury": {"repo": "bsnes-mercury"}, "citra": {"repo": "citra", "fetch_submodules": True}, "desmume": {"repo": "desmume"},