summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndersonTorres <torres.anderson.85@protonmail.com>2020-12-08 13:09:41 -0300
committerAndersonTorres <torres.anderson.85@protonmail.com>2020-12-13 20:14:29 -0300
commit18c386ead1187efd91e147f5f1739f8425e56d0e (patch)
tree77b36cf43bf348d96df06cc9d59006b227f6e801
parente4a7c4268b2f6a4382bdd5e17265c7df145139f0 (diff)
dgen-sdl: init at 1.33
-rw-r--r--pkgs/misc/emulators/dgen-sdl/default.nix70
-rw-r--r--pkgs/top-level/all-packages.nix2
2 files changed, 72 insertions, 0 deletions
diff --git a/pkgs/misc/emulators/dgen-sdl/default.nix b/pkgs/misc/emulators/dgen-sdl/default.nix
new file mode 100644
index 000000000000..1eabf5b53b01
--- /dev/null
+++ b/pkgs/misc/emulators/dgen-sdl/default.nix
@@ -0,0 +1,70 @@
+{ stdenv
+, fetchurl
+, libarchive
+, doxygen
+, SDL
+}:
+
+let
+ pname = "dgen-sdl";
+ version = "1.33";
+in stdenv.mkDerivation {
+ inherit pname version;
+
+ src = fetchurl {
+ url = "https://sourceforge.net/projects/dgen/files/dgen/${version}/${pname}-${version}.tar.gz";
+ hash = "sha256-meLAYBfCKHPHf4gYbrzAmGckTrbgQsdjuwlLArje9h4=";
+ };
+
+ buildInputs = [ SDL libarchive ];
+
+ configureFlags = [
+ "--enable-joystick"
+ "--enable-debugger"
+ "--enable-debug-vdp"
+ "--enable-pico" # experimental
+ "--enable-vgmdump"
+ "--with-star=no" # Needs ASM support
+ "--with-musa"
+ "--with-cyclone=no" # Needs ASM support
+ "--with-mz80"
+ "--with-cz80"
+ "--with-drz80=no" # Needs ASM support
+ "--with-dz80"
+ ];
+
+ meta = with stdenv.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 (64‐bit, endian safe), runs in Windows using MinGW
+ - Screenshots, demos recording and playback
+ - Musashi (generic) and StarScream (x86‐only) CPU cores
+ - Cyclone 68000 and DrZ80 (both ARM‐only) CPU cores
+ - CZ80 (generic) and MZ80 (generic and x86‐only versions)
+ - 16‐bit, 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
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 8505664d1a80..f505766ea33b 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2000,6 +2000,8 @@ in
dlx = callPackage ../misc/emulators/dlx { };
+ dgen-sdl = callPackage ../misc/emulators/dgen-sdl { };
+
doitlive = callPackage ../tools/misc/doitlive { };
dokuwiki = callPackage ../servers/web-apps/dokuwiki { };