depot/pkgs/by-name/dg/dgen-sdl/package.nix
Luke Granger-Brown 57725ef3ec Squashed 'third_party/nixpkgs/' content from commit 76612b17c0ce
git-subtree-dir: third_party/nixpkgs
git-subtree-split: 76612b17c0ce71689921ca12d9ffdc9c23ce40b2
2024-11-10 23:59:47 +00:00

74 lines
2.1 KiB
Nix
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{ lib
, stdenv
, fetchurl
, libarchive
, SDL
}:
stdenv.mkDerivation rec {
pname = "dgen-sdl";
version = "1.33";
src = fetchurl {
url = "https://sourceforge.net/projects/dgen/files/dgen/${version}/${pname}-${version}.tar.gz";
hash = "sha256-meLAYBfCKHPHf4gYbrzAmGckTrbgQsdjuwlLArje9h4=";
};
buildInputs = [
SDL
libarchive
];
configureFlags = [
(lib.enableFeature (!stdenv.hostPlatform.isDarwin) "sdltest")
"--enable-debug-vdp"
"--enable-debugger"
"--enable-joystick"
"--enable-pico" # experimental
"--enable-vgmdump"
"--with-cyclone=no" # Needs ASM support
"--with-cz80"
"--with-drz80=no" # Needs ASM support
"--with-dz80"
"--with-musa"
"--with-mz80"
"--with-star=no" # Needs ASM support
];
env.NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-reserved-user-defined-literal";
meta = with lib; {
homepage = "https://dgen.sourceforge.net/";
description = "Sega Genesis/Mega Drive emulator";
longDescription = ''
DGen/SDL is a free, open source emulator for Sega Genesis/Mega Drive
systems. DGen was originally written by Dave, then ported to SDL by Joe
Groff and Phil K. Hornung in 1998.
It features:
- Game Genie/Hex codes support
- PAL/NTSC, fullscreen modes
- Joypad/joystick support
- Mouse support
- Highly configurable controls
- OpenGL textured video output
- Portable (64bit, endian safe), runs in Windows using MinGW
- Screenshots, demos recording and playback
- Musashi (generic) and StarScream (x86only) CPU cores
- Cyclone 68000 and DrZ80 (both ARMonly) CPU cores
- CZ80 (generic) and MZ80 (generic and x86only versions)
- 16bit, 8000 to 48000Hz sound output
- Support for 8, 15, 16, 24 and 32 bpp modes
- Archived/compressed ROMs support
- M68K debugger (contributed by Edd Barrett)
- Z80 debugger
- hqx and scale2x upscaling filters
- VGM dumping
'';
license = licenses.mit;
maintainers = with maintainers; [ AndersonTorres ];
platforms = with platforms; unix;
};
}
# TODO: implement configure options