summaryrefslogtreecommitdiff
path: root/emulators/vice/patches/patch-ac
diff options
context:
space:
mode:
authordillo <dillo@pkgsrc.org>2006-06-29 22:56:34 +0000
committerdillo <dillo@pkgsrc.org>2006-06-29 22:56:34 +0000
commitdb642e6c0cfa1e02279d6411a12cb55045770934 (patch)
treec304e2a629b4b96647c1043375f96a2cd56adfa2 /emulators/vice/patches/patch-ac
parent503bb5bc9f7bc4056062d425f95790deafc5bfb9 (diff)
downloadpkgsrc-db642e6c0cfa1e02279d6411a12cb55045770934.tar.gz
Update to 1.19:
- Fixed "RESTORE key works only once" bug. - Fixed compilation with GCC4. - [C64] Fixed an opcode execute problem with the +60k expansion. - [C64] New c64 256k expansion support. - [VIC-II] Fixed switch from idle state to display state. - [VIC-II] Added missing DEN bit scrolling feature. - The experimental netplay feature has been extended to the Unix platforms for testing. - Added IPV6 support to netplay. - Fixed crash if settings are saved. - Fixed some Gnome1 annoyances (popup menus in status bar) - Rework of gnome save media (screenshot) dialog - Xaw Statusbar fixes and improvements (new buttons for recording). - Added various new screenshot formats. - Improved the image content lister to display at least the first part of a circular directory listing. - Made the tape routines able to cope with non-standard header sizes. XXX: should use SUBST framework instead of home-grown code. Updated during freeze to fix gcc4 compile problems, okayed by wiz.
Diffstat (limited to 'emulators/vice/patches/patch-ac')
-rw-r--r--emulators/vice/patches/patch-ac95
1 files changed, 20 insertions, 75 deletions
diff --git a/emulators/vice/patches/patch-ac b/emulators/vice/patches/patch-ac
index 94263ea32fc..a93000fe57b 100644
--- a/emulators/vice/patches/patch-ac
+++ b/emulators/vice/patches/patch-ac
@@ -1,104 +1,49 @@
-$NetBSD: patch-ac,v 1.14 2005/12/11 22:46:50 dillo Exp $
+$NetBSD: patch-ac,v 1.15 2006/06/29 22:56:34 dillo Exp $
---- src/sounddrv/soundsun.c.orig 2005-07-24 23:17:09.000000000 +0200
+--- src/sounddrv/soundsun.c.orig 2005-12-23 23:29:54.000000000 +0100
+++ src/sounddrv/soundsun.c
-@@ -61,8 +61,11 @@ static int sun_bufferspace(void);
-
- static int sun_fd = -1;
+@@ -63,7 +63,7 @@ static int sun_fd = -1;
static int sun_8bit = 0;
-+static int sun_channels = 1;
+ static int sun_channels = 1;
static int sun_bufsize = 0;
+-#if !defined(__NETBSD__)
+#if !defined(__NetBSD__)
static int sun_written = 0;
-+#endif
+ #endif
- static int toulaw8(SWORD data)
- {
-@@ -104,8 +107,10 @@ static int sun_init(const char *param, i
+@@ -107,7 +107,7 @@ static int sun_init(const char *param, i
int st;
struct audio_info info;
+-#if !defined(__NETBSD__)
+#if !defined(__NetBSD__)
/* No stereo capability. */
*channels = 1;
-+#endif
-
- if (!param) {
- if (getenv("AUDIODEV"))
-@@ -118,7 +123,7 @@ static int sun_init(const char *param, i
- return 1;
- AUDIO_INITINFO(&info);
- info.play.sample_rate = *speed;
-- info.play.channels = 1;
-+ info.play.channels = *channels;
- info.play.precision = 16;
- info.play.encoding = AUDIO_ENCODING_LINEAR;
- st = ioctl(sun_fd, AUDIO_SETINFO, &info);
-@@ -133,10 +138,14 @@ static int sun_init(const char *param, i
- goto fail;
- sun_8bit = 1;
- *speed = 8000;
-+ *channels = 1;
+ #endif
+@@ -142,7 +142,7 @@ static int sun_init(const char *param, i
log_message(LOG_DEFAULT, "Playing 8 bit ulaw at 8000Hz");
}
sun_bufsize = (*fragsize)*(*fragnr);
+-#if !defined(__NETBSD__)
+#if !defined(__NetBSD__)
sun_written = 0;
-+#endif
-+ sun_channels = *channels;
- return 0;
- fail:
- close(sun_fd);
-@@ -155,14 +164,16 @@ static int sun_write(SWORD *pbuf, size_t
- total = nr;
- }
- else
-- total = nr*sizeof(SWORD);
-+ total = nr*sizeof(SWORD)*sun_channels;
- for (i = 0; i < total; i += now)
- {
- now = write(sun_fd, (char *)pbuf + i, total - i);
+ #endif
+ sun_channels = *channels;
+@@ -171,7 +171,7 @@ static int sun_write(SWORD *pbuf, size_t
if (now <= 0)
return 1;
}
+-#if !defined(__NETBSD__)
+#if !defined(__NetBSD__)
sun_written += nr;
-+#endif
-
- while (sun_bufferspace() < 0)
- usleep(5000);
-@@ -172,7 +183,7 @@ static int sun_write(SWORD *pbuf, size_t
+ #endif
- static int sun_bufferspace(void)
- {
-- int st;
-+ int st, size;
- struct audio_info info;
- /* ioctl(fd, AUDIO_GET_STATUS, &info) yields number of played samples
- in info.play.samples. */
-@@ -180,10 +191,11 @@ static int sun_bufferspace(void)
- if (st < 0)
- return -1;
- #if defined(__NetBSD__)
-- if (!sun_8bit)
-- return sun_bufsize - (sun_written - info.play.samples / sizeof(SWORD));
--#endif
-+ size = (sun_8bit ? 1 : 2) * sun_channels;
-+ return sun_bufsize - info.play.seek / size;
-+#else
- return sun_bufsize - (sun_written - info.play.samples);
-+#endif
- }
-
- static void sun_close(void)
-@@ -192,7 +204,10 @@ static void sun_close(void)
+@@ -204,7 +204,7 @@ static void sun_close(void)
sun_fd = -1;
sun_8bit = 0;
sun_bufsize = 0;
+-#if !defined(__NETBSD__)
+#if !defined(__NetBSD__)
sun_written = 0;
-+#endif
-+ sun_channels = 1;
- }
-
-
+ #endif
+ sun_channels = 1;