summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-emulation/fceultra')
-rw-r--r--games-emulation/fceultra/fceultra-0.81-r1.ebuild (renamed from games-emulation/fceultra/fceultra-081-r1.ebuild)2
-rw-r--r--games-emulation/fceultra/fceultra-0.93.ebuild (renamed from games-emulation/fceultra/fceultra-093.ebuild)2
-rw-r--r--games-emulation/fceultra/fceultra-096.ebuild57
-rw-r--r--games-emulation/fceultra/files/096-joystick.patch99
-rw-r--r--games-emulation/fceultra/files/096-stereo.patch87
-rw-r--r--games-emulation/fceultra/files/digest-fceultra-0.81-r1 (renamed from games-emulation/fceultra/files/digest-fceultra-081-r1)0
-rw-r--r--games-emulation/fceultra/files/digest-fceultra-0.93 (renamed from games-emulation/fceultra/files/digest-fceultra-093)0
-rw-r--r--games-emulation/fceultra/files/digest-fceultra-0961
8 files changed, 2 insertions, 246 deletions
diff --git a/games-emulation/fceultra/fceultra-081-r1.ebuild b/games-emulation/fceultra/fceultra-0.81-r1.ebuild
index d8133538c067..2419d8fc06d8 100644
--- a/games-emulation/fceultra/fceultra-081-r1.ebuild
+++ b/games-emulation/fceultra/fceultra-0.81-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2003 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/games-emulation/fceultra/fceultra-081-r1.ebuild,v 1.1 2003/09/17 10:07:04 msterret Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/fceultra/fceultra-0.81-r1.ebuild,v 1.1 2003/11/10 14:48:09 vapier Exp $
inherit gcc
diff --git a/games-emulation/fceultra/fceultra-093.ebuild b/games-emulation/fceultra/fceultra-0.93.ebuild
index cb425c861486..4d8df65b05a9 100644
--- a/games-emulation/fceultra/fceultra-093.ebuild
+++ b/games-emulation/fceultra/fceultra-0.93.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2003 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/games-emulation/fceultra/fceultra-093.ebuild,v 1.1 2003/09/09 16:26:50 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/fceultra/fceultra-0.93.ebuild,v 1.1 2003/11/10 14:48:09 vapier Exp $
inherit games gcc
diff --git a/games-emulation/fceultra/fceultra-096.ebuild b/games-emulation/fceultra/fceultra-096.ebuild
deleted file mode 100644
index 65b2450a2464..000000000000
--- a/games-emulation/fceultra/fceultra-096.ebuild
+++ /dev/null
@@ -1,57 +0,0 @@
-# Copyright 1999-2003 Gentoo Technologies, Inc.
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/games-emulation/fceultra/fceultra-096.ebuild,v 1.1 2003/09/09 16:26:50 vapier Exp $
-
-inherit games gcc eutils
-
-DESCRIPTION="A portable NES/Famicom emulator"
-HOMEPAGE="http://fceultra.sourceforge.net/"
-SRC_URI="http://fceultra.sourceforge.net/files/fceu${PV}src.tar.gz"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="-* ~x86"
-IUSE="sdl svga"
-
-# Because of code generation bugs, FCEUltra now depends on a version
-# of gcc greater than or equal to GCC 3.2.2.
-DEPEND="|| (
- svga? ( media-libs/svgalib )
- sdl? ( media-libs/libsdl )
- media-libs/libsdl
- )
- >=sys-devel/gcc-3.2.2
- sys-libs/zlib"
-
-S=${WORKDIR}/fceu
-
-src_unpack() {
- unpack ${A}
-
- cd ${S}
- epatch ${FILESDIR}/${PV}-stereo.patch
- epatch ${FILESDIR}/${PV}-joystick.patch
- sed -i \
- -e "s:\${TFLAGS}:\${TFLAGS} ${CFLAGS}:" \
- Makefile.base
-}
-
-src_compile() {
- if [ `use sdl` ] || [ -z "`use sdl``use svga`" ] ; then
- make -f Makefile.unixsdl || die "sdl make failed"
- mv fceu fceu-sdl
- make -f Makefile.unixsdl clean
- fi
- if [ `use svga` ] ; then
- make -f Makefile.linuxvga || die "svga make failed"
- mv fceu fceu-svga
- fi
-}
-
-src_install() {
- use sdl && dogamesbin fceu-sdl
- use svga && dogamesbin fceu-svga
- use sdl || use svga || dogamesbin fceu-sdl
- dodoc Documentation/{*,rel/readme-linux.txt}
- prepgamesdirs
-}
diff --git a/games-emulation/fceultra/files/096-joystick.patch b/games-emulation/fceultra/files/096-joystick.patch
deleted file mode 100644
index 40bb7457a1b0..000000000000
--- a/games-emulation/fceultra/files/096-joystick.patch
+++ /dev/null
@@ -1,99 +0,0 @@
---- drivers/cli/sdl-joystick.c.orig 2003-06-21 22:49:24.000000000 -0500
-+++ drivers/cli/sdl-joystick.c 2003-07-10 19:10:38.000000000 -0500
-@@ -143,20 +143,12 @@
- /* Configure a joystick axis. */
- void AConfig (int n, int a)
- {
-- Sint16 lastaxe[64];
-- int numaxes;
-- int axis;
-+ SDL_Event event;
-
- WNoInput();
-
- joyAMap[n][a] = a;
-
-- numaxes=SDL_JoystickNumAxes(jo[n]);
-- if(numaxes>64) numaxes=64;
--
-- for(axis=0;axis<numaxes;axis++) /* Pre-load. */
-- lastaxe[axis]=SDL_JoystickGetAxis(jo[n], axis);
--
- while (1)
- {
- uint8 t;
-@@ -167,31 +159,26 @@
- }
- else
- break;
--
-- SDL_JoystickUpdate();
--
-- for (axis=0;axis<numaxes;axis++) {
-- if (abs((Sint32)SDL_JoystickGetAxis(jo[n],axis)-lastaxe[axis]) > 8192) {
-- joyAMap[n][a] = axis;
-- /* 4096 should be good enough to account for any jitter. */
-- while (abs((Sint32)SDL_JoystickGetAxis(jo[n],axis)-lastaxe[axis]) > 4096) {
-- SDL_JoystickUpdate();
-- SDL_Delay(50);
-- }
-- goto endaconfig;
-- }
-- }
-- SDL_Delay(100);
-- }
--
-- endaconfig:
-- WNoInput();
-+
-+ SDL_JoystickUpdate();
-+ if (SDL_PollEvent(&event) && (event.type == SDL_JOYAXISMOTION))
-+ {
-+ // Make sure the joystick was moved by some significant amount
-+ if ((event.jaxis.value < -3000) || (event.jaxis.value > 3000))
-+ {
-+ joyAMap[n][a] = event.jaxis.axis;
-+ WNoInput();
-+ return;
-+ }
-+ }
-+ }
- return;
- }
-
- /* Configure a joystick button. */
- void BConfig (int n, int b)
- {
-+ SDL_Event event;
- WNoInput();
- joyBMap[n][b] = 0;
- while (1)
-@@ -206,23 +193,15 @@
- break;
-
- SDL_JoystickUpdate();
-+
-+ if (SDL_PollEvent(&event) && event.type == SDL_JOYBUTTONDOWN)
- {
-- int buttons;
-- for (buttons = SDL_JoystickNumButtons(jo[n])-1;buttons >= 0;buttons--) {
-- if (SDL_JoystickGetButton(jo[n],buttons)) {
-- joyBMap[n][b] = buttons+1;
-- while (SDL_JoystickGetButton(jo[n], buttons)) {
-- SDL_JoystickUpdate();
-- SDL_Delay(50);
-- }
-- goto endbconfig;
-- }
-- }
-+ joyBMap[n][b] = event.jbutton.button+1;
-+ WNoInput();
-+ return;
- }
-- SDL_Delay(100);
- }
-
-- endbconfig:
- WNoInput();
- return;
- }
diff --git a/games-emulation/fceultra/files/096-stereo.patch b/games-emulation/fceultra/files/096-stereo.patch
deleted file mode 100644
index f77f1acc66d7..000000000000
--- a/games-emulation/fceultra/files/096-stereo.patch
+++ /dev/null
@@ -1,87 +0,0 @@
---- drivers/common/unixdsp.c 2003-06-20 12:37:26.000000000 -0500
-+++ drivers/common/unixdsp.c 2003-07-06 21:58:21.000000000 -0500
-@@ -36,6 +36,7 @@
-
- static int format;
- static int dspfd;
-+static int fakestereo;
-
- // fsize is in samples, not bytes(gets translated before ioctl())
- int InitUNIXDSPSound(int *rate, int bits, int fsize, int nfrags, int dev)
-@@ -89,9 +90,19 @@
-
- if(ioctl(dspfd,SNDCTL_DSP_SETFRAGMENT,&x)==-1)
- printf("ERROR (continuing anyway)\n");
-- x=0;
-+
-+ // Set mono sound.
-+ // Some sound cards can only do stereo, so simulate stereo for these cards.
-+ x=1;
-+ fakestereo=0;
- printf("\n Setting mono sound...");
-- if(ioctl(dspfd,SNDCTL_DSP_STEREO,&x)==-1) goto __disperror;
-+ if(ioctl(dspfd,SNDCTL_DSP_CHANNELS,&x)==-1) goto __disperror;
-+ if(x == 2)
-+ {
-+ printf("\n Couldn't set mono, faking stereo...\n");
-+ fakestereo = 1;
-+ }
-+
- printf("\n Setting playback rate of %d hz...",*rate);
- if(ioctl(dspfd,SNDCTL_DSP_SPEED,rate)==-1) goto __disperror;
- printf("Set to %d hz\n",*rate);
-@@ -107,9 +119,10 @@
- }
-
- static int16 MBuffer[2048];
-+static int16 fakebuffer[4098];
- void WriteUNIXDSPSound(int32 *Buffer, int Count, int noblocking)
- {
-- int P,c;
-+ int P,c,i;
- int32 *src=Buffer;
-
- if(format)
-@@ -127,13 +140,35 @@
- c=Count<<1;
- }
-
--// noblocking=!noblocking; // speed testing
-- if(noblocking)
-+ // If a device can only support stereo, fake stereo by duplicating each item in the buffer.
-+ if(fakestereo)
-+ {
-+ for (i=0; i <= c; i++ )
-+ {
-+ fakebuffer[2*i] = MBuffer[i];
-+ fakebuffer[2*i+1] = MBuffer[i];
-+ }
-+ c = c * 2;
-+ // noblocking=!noblocking; // speed testing
-+ if(noblocking)
-+ {
-+ struct audio_buf_info ai;
-+ if(!ioctl(dspfd,SNDCTL_DSP_GETOSPACE,&ai))
-+ if(ai.bytes<c)
-+ return;
-+ }
-+ write(dspfd,(uint8 *)fakebuffer,c);
-+ }
-+ else
- {
-- struct audio_buf_info ai;
-- if(!ioctl(dspfd,SNDCTL_DSP_GETOSPACE,&ai))
-- if(ai.bytes<c)
-- return;
-+ // noblocking=!noblocking; // speed testing
-+ if(noblocking)
-+ {
-+ struct audio_buf_info ai;
-+ if(!ioctl(dspfd,SNDCTL_DSP_GETOSPACE,&ai))
-+ if(ai.bytes<c)
-+ return;
-+ }
-+ write(dspfd,(uint8 *)MBuffer,c);
- }
-- write(dspfd,(uint8 *)MBuffer,c);
- }
diff --git a/games-emulation/fceultra/files/digest-fceultra-081-r1 b/games-emulation/fceultra/files/digest-fceultra-0.81-r1
index 8722963963cc..8722963963cc 100644
--- a/games-emulation/fceultra/files/digest-fceultra-081-r1
+++ b/games-emulation/fceultra/files/digest-fceultra-0.81-r1
diff --git a/games-emulation/fceultra/files/digest-fceultra-093 b/games-emulation/fceultra/files/digest-fceultra-0.93
index 5f20e5cb2ae7..5f20e5cb2ae7 100644
--- a/games-emulation/fceultra/files/digest-fceultra-093
+++ b/games-emulation/fceultra/files/digest-fceultra-0.93
diff --git a/games-emulation/fceultra/files/digest-fceultra-096 b/games-emulation/fceultra/files/digest-fceultra-096
deleted file mode 100644
index 6c2edb8d8d09..000000000000
--- a/games-emulation/fceultra/files/digest-fceultra-096
+++ /dev/null
@@ -1 +0,0 @@
-MD5 26934713c1f64f20a3f4f8a2dba0f9fb fceu096src.tar.gz 476804