nixpkgs/pkgs/misc/emulators/dgen-sdl/default.nix
Profpatsch 4a7f99d55d treewide: with stdenv.lib; in meta -> with lib;
Part of: https://github.com/NixOS/nixpkgs/issues/108938

meta = with stdenv.lib;

is a widely used pattern. We want to slowly remove
the `stdenv.lib` indirection and encourage people
to use `lib` directly. Thus let’s start with the meta
field.

This used a rewriting script to mostly automatically
replace all occurances of this pattern, and add the
`lib` argument to the package header if it doesn’t
exist yet.

The script in its current form is available at
https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
2021-01-11 10:38:22 +01:00

70 lines
2 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
, 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 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