summaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
authoragc <agc>2001-03-23 16:20:55 +0000
committeragc <agc>2001-03-23 16:20:55 +0000
commit9f1adc9d7992ba54ffc73fb0acedb13dc44a4215 (patch)
treec24675f11e7036236bc773f989d4ddf553a5a7bd /emulators
parent965517418c70231ec008b55977f06d403633d88d (diff)
downloadpkgsrc-9f1adc9d7992ba54ffc73fb0acedb13dc44a4215.tar.gz
Patches from Wofgang Solfrank:
"Disabling the O_SYNC option when opening printer or punch. Change the timeout value from 1 usec to 10 msec in the timer thread. At least with unproven-pthreads, the comment above that is wrong when stating that a 1 usec timeout would be stretched to the next system clock tick. A minor correction to the computation of the SIO rate. With these changes, I get a decent performance of the system and can actually get MVS to run." Require the fixed version of unproven-pthreads. Bump the hercules version number.
Diffstat (limited to 'emulators')
-rw-r--r--emulators/hercules/Makefile5
-rw-r--r--emulators/hercules/files/patch-sum6
-rw-r--r--emulators/hercules/patches/patch-aj29
-rw-r--r--emulators/hercules/patches/patch-ak18
-rw-r--r--emulators/hercules/patches/patch-al18
-rw-r--r--emulators/hercules/patches/patch-am20
6 files changed, 93 insertions, 3 deletions
diff --git a/emulators/hercules/Makefile b/emulators/hercules/Makefile
index cbc3f087c2e..c710908310f 100644
--- a/emulators/hercules/Makefile
+++ b/emulators/hercules/Makefile
@@ -1,6 +1,7 @@
-# $NetBSD: Makefile,v 1.5 2001/02/25 04:17:45 hubertf Exp $
+# $NetBSD: Makefile,v 1.6 2001/03/23 16:20:55 agc Exp $
DISTNAME= hercules-2.11
+PKGNAME= ${DISTNAME}nb1
CATEGORIES= emulators
MASTER_SITES= http://www.conmicro.cx/hercules/
@@ -8,7 +9,7 @@ MAINTAINER= packages@netbsd.org
HOMEPAGE= http://www.conmicro.cx/hercules/
COMMENT= s370 emulator
-DEPENDS= unproven-pthreads-*:../../devel/unproven-pthreads
+DEPENDS= unproven-pthreads>0.17nb1:../../devel/unproven-pthreads
DEPENDS+= hercules-images-*:../../emulators/hercules-images
USE_GMAKE= yes
diff --git a/emulators/hercules/files/patch-sum b/emulators/hercules/files/patch-sum
index d82da8c617b..5eee2d98be7 100644
--- a/emulators/hercules/files/patch-sum
+++ b/emulators/hercules/files/patch-sum
@@ -1,4 +1,4 @@
-$NetBSD: patch-sum,v 1.6 2001/03/09 16:37:34 agc Exp $
+$NetBSD: patch-sum,v 1.7 2001/03/23 16:20:55 agc Exp $
SHA1 (patch-aa) = 18abe2558a76b68e14fa4253b1ea78b96360e2ab
SHA1 (patch-ab) = ea2802d8752411e964ba150d3a54f64a40fc2e70
@@ -9,3 +9,7 @@ SHA1 (patch-af) = 759ad1ee2737ed8021b5a5fd956851677e99879a
SHA1 (patch-ag) = 88b26f01e69f6d87d0374c986aefed0e937e7735
SHA1 (patch-ah) = ede54de0b63ebf02a9589cc57a5c41d4693ee8ef
SHA1 (patch-ai) = 1df78a54ea2a81ac552587d170f88d2923956664
+SHA1 (patch-aj) = b4beda52ced42d6d58f02b24c0eaf56109eab092
+SHA1 (patch-ak) = b727b0fad00ee546854cfbc4342e4c759fe7b0d2
+SHA1 (patch-al) = 60d90ed9c1476b8fcf0a905a8316f3aec9108169
+SHA1 (patch-am) = 4626f39156ac2beccd9911f795aff6f9fe7b997b
diff --git a/emulators/hercules/patches/patch-aj b/emulators/hercules/patches/patch-aj
new file mode 100644
index 00000000000..2d4c961a452
--- /dev/null
+++ b/emulators/hercules/patches/patch-aj
@@ -0,0 +1,29 @@
+$NetBSD: patch-aj,v 1.1 2001/03/23 16:20:56 agc Exp $
+
+Patch from Wofgang Solfrank:
+
+"Change the timeout value from 1 usec to 10 msec in the timer thread.
+At least with unproven-pthreads, the comment above that is wrong
+when stating that a 1 usec timeout would be stretched to the next
+system clock tick."
+
+--- timer.c.orig Thu Feb 8 20:02:41 2001
++++ timer.c Fri Mar 23 16:01:53 2001
+@@ -319,7 +319,7 @@
+ /* Calculate instructions/millisecond for this CPU */
+ regs->mipsrate =
+ (regs->instcount - regs->prevcount) / msecctr;
+- regs->siosrate = regs->siocount;
++ regs->siosrate = regs->siocount * 1000 / msecctr;
+
+ /* Save the instruction counter */
+ regs->prevcount = regs->instcount;
+@@ -336,7 +336,7 @@
+ /* Sleep for one system clock tick by specifying a one-microsecond
+ delay, which will get stretched out to the next clock tick */
+ tv.tv_sec = 0;
+- tv.tv_usec = 1;
++ tv.tv_usec = 10000;
+ select (0, NULL, NULL, NULL, &tv);
+
+ } /* end while */
diff --git a/emulators/hercules/patches/patch-ak b/emulators/hercules/patches/patch-ak
new file mode 100644
index 00000000000..256d4d0b6eb
--- /dev/null
+++ b/emulators/hercules/patches/patch-ak
@@ -0,0 +1,18 @@
+$NetBSD: patch-ak,v 1.1 2001/03/23 16:20:56 agc Exp $
+
+Patch from WOlfgang Solfrank:
+
+Disabling the O_SYNC option when opening printer or punch.
+
+
+--- printer.c.orig Sun Jan 28 18:05:41 2001
++++ printer.c Fri Mar 23 16:01:53 2001
+@@ -149,7 +149,7 @@
+ if (dev->fd < 0 && !IS_CCW_SENSE(code))
+ {
+ rc = open (dev->filename,
+- O_WRONLY | O_CREAT | O_TRUNC | O_SYNC,
++ O_WRONLY | O_CREAT | O_TRUNC,
+ S_IRUSR | S_IWUSR | S_IRGRP);
+ if (rc < 0)
+ {
diff --git a/emulators/hercules/patches/patch-al b/emulators/hercules/patches/patch-al
new file mode 100644
index 00000000000..d0d46903ffa
--- /dev/null
+++ b/emulators/hercules/patches/patch-al
@@ -0,0 +1,18 @@
+$NetBSD: patch-al,v 1.1 2001/03/23 16:20:56 agc Exp $
+
+Patch from Wolfgang Solfrank:
+
+A minor correction to the computation of the SIO rate.
+
+--- console.c.orig Sun Feb 11 03:52:30 2001
++++ console.c Fri Mar 23 16:01:53 2001
+@@ -1257,7 +1257,8 @@
+ } /* end for(dev) */
+
+ /* Wait for a file descriptor to become ready */
+-#ifdef WIN32
++#ifndef __notdef__
++/*#ifdef WIN32*/
+ {
+ struct timeval tv={0,500000}; /* half a second */
+ rc = select ( maxfd+1, &readset, NULL, NULL, &tv );
diff --git a/emulators/hercules/patches/patch-am b/emulators/hercules/patches/patch-am
new file mode 100644
index 00000000000..b73123135e7
--- /dev/null
+++ b/emulators/hercules/patches/patch-am
@@ -0,0 +1,20 @@
+$NetBSD: patch-am,v 1.1 2001/03/23 16:20:56 agc Exp $
+
+Patch from Wolfgang Solfrank:
+
+Disabling the O_SYNC option when opening printer or punch.
+
+--- cardpch.c.orig Sun Jan 28 18:05:38 2001
++++ cardpch.c Fri Mar 23 16:01:53 2001
+@@ -155,9 +155,9 @@
+ {
+ rc = open (dev->filename,
+ #ifdef WIN32
+- O_WRONLY | O_CREAT | O_TRUNC | O_SYNC | O_BINARY,
++ O_WRONLY | O_CREAT | O_TRUNC | O_BINARY,
+ #else /* WIN32 */
+- O_WRONLY | O_CREAT | O_TRUNC | O_SYNC,
++ O_WRONLY | O_CREAT | O_TRUNC,
+ #endif /* WIN32 */
+ S_IRUSR | S_IWUSR | S_IRGRP);
+ if (rc < 0)