summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoe Peterson <lavajoe@gentoo.org>2008-06-26 23:50:49 +0000
committerJoe Peterson <lavajoe@gentoo.org>2008-06-26 23:50:49 +0000
commit7de2f4cb95e48b5abc7def3f276d5b5a06b90bc6 (patch)
tree7694a89b5c93be2d86a6fa905aa788f26bfac2ec /app-emulation/xtrs
parentVersion bump, bug #146871 (diff)
downloadhistorical-7de2f4cb95e48b5abc7def3f276d5b5a06b90bc6.tar.gz
historical-7de2f4cb95e48b5abc7def3f276d5b5a06b90bc6.tar.bz2
historical-7de2f4cb95e48b5abc7def3f276d5b5a06b90bc6.zip
Add upstream fix for kbwait; disable SIGIO; change default model back to 1
Package-Manager: portage-2.1.4.4
Diffstat (limited to 'app-emulation/xtrs')
-rw-r--r--app-emulation/xtrs/ChangeLog8
-rw-r--r--app-emulation/xtrs/Manifest14
-rw-r--r--app-emulation/xtrs/files/xtrs-4.9c-r2-gentoo.patch60
-rw-r--r--app-emulation/xtrs/xtrs-4.9c-r2.ebuild66
4 files changed, 136 insertions, 12 deletions
diff --git a/app-emulation/xtrs/ChangeLog b/app-emulation/xtrs/ChangeLog
index ba4c08093b3b..1457702de00c 100644
--- a/app-emulation/xtrs/ChangeLog
+++ b/app-emulation/xtrs/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for app-emulation/xtrs
# Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/xtrs/ChangeLog,v 1.27 2008/05/01 09:37:15 ulm Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/xtrs/ChangeLog,v 1.28 2008/06/26 23:50:48 lavajoe Exp $
+
+*xtrs-4.9c-r2 (26 Jun 2008)
+
+ 26 Jun 2008; Joe Peterson <lavajoe@gentoo.org>
+ +files/xtrs-4.9c-r2-gentoo.patch, +xtrs-4.9c-r2.ebuild:
+ Add upstream fix for kbwait; disable SIGIO; change default model back to 1
01 May 2008; Ulrich Mueller <ulm@gentoo.org> -xtrs-4.9c.ebuild:
Remove old.
diff --git a/app-emulation/xtrs/Manifest b/app-emulation/xtrs/Manifest
index 8f33d99d5c30..32c877a3fba4 100644
--- a/app-emulation/xtrs/Manifest
+++ b/app-emulation/xtrs/Manifest
@@ -1,17 +1,9 @@
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
AUX xtrs-4.9c-gentoo.patch 2650 RMD160 7e2b9bb228b2cc6ea0daacce4b82403b9c5f364a SHA1 373dcff9bb16a4b21f1eb78c17e89970b2c90007 SHA256 6b9a52848783854937e0f1508076f86da317e7a5c9bc553255597403101be07a
AUX xtrs-4.9c-newdos-datetime.patch 2750 RMD160 ac5f2be3ab48ebaddbabca2e40117cc0ef67abca SHA1 c8e295ae7f92ce34e7d976fdf131d8dd483b3282 SHA256 1aede5a158a5c0659714a024724500d27c77ff30198fee9db81009e223a5c592
+AUX xtrs-4.9c-r2-gentoo.patch 2264 RMD160 a742a68db2df5dfc3e8655a6bdac6167117c4df9 SHA1 5d8a37303f42ba11076f52b0353f9ff66ca9d3ac SHA256 9178f567f93c08324dbde8a24f35538f8a553d362423255aa97099233c6dbff4
DIST ld4-631.tar.gz 191393 RMD160 2460b1f5490039c02aaec8e1645b23c511b557d9 SHA1 2ad71c65e5b78fb2c67080ab332f723eb6f90be8 SHA256 7f810d5fe0ce5c2fdabf25b5631ed2c84b19301b2e4df452bc57ca1375a84650
DIST xtrs-4.9c.tar.gz 443651 RMD160 db6057adb8a648362856026b9e8b4edd9a43b117 SHA1 23b3440fca962104c7676c633974d413ef4d3b92 SHA256 a5071dee883b83d893467b913441f8bb75984d0d4e567eef0479d43891dfb978
EBUILD xtrs-4.9c-r1.ebuild 2206 RMD160 3affc377763fed0e4520ed82ee7e74027131d589 SHA1 6edfed85be942518c307a355eb701ee1dd3c641d SHA256 87a48418d7d752ffab638b0330fed0990b7a29fc863831abca4ec9d6fdee4948
-MISC ChangeLog 3353 RMD160 cb81114928b7305e6b52cdd49c781048fcb9976c SHA1 cf01d755b7af1757dfd88942a63e18d2399bbb76 SHA256 46e5a43a29cd243177a123296671c56d3996a0d96502be54bea10903b738aa9f
+EBUILD xtrs-4.9c-r2.ebuild 2269 RMD160 04c8fd69fa41882511e755090268dfd084ca903e SHA1 0015a4da92e7f0376525f999f5f900ade1f3b3db SHA256 cad5b07946c5c0172939f4e2f6cc773dc52c141431bb936c163bc3fe20527b48
+MISC ChangeLog 3571 RMD160 a4203b34dce69e442582411b264b04d6a25bdab4 SHA1 38c5a29193be235d46977cfbcdd711ac8ea00bb9 SHA256 b06f225229bcdaa45a2cb95f7457ad7afe96f64ad2689aa316af257e70d455db
MISC metadata.xml 1094 RMD160 dda41734a85d5e2278c3b9da004608c95eaed795 SHA1 10bb53b141c7b604eded49ac700f623cf5cec448 SHA256 b0b43b9f6f54c4b071843f5a4421017192432c4c139e1fc82435bf7a5dd744aa
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v1.4.9 (GNU/Linux)
-
-iEYEARECAAYFAkgZj1AACgkQOeoy/oIi7uz7GwCg1VLljrkkV+x1D0b2Perxu3eA
-lDwAoKwSbbgk4N/nFw+izTzQ0ZOgvqZM
-=jUca
------END PGP SIGNATURE-----
diff --git a/app-emulation/xtrs/files/xtrs-4.9c-r2-gentoo.patch b/app-emulation/xtrs/files/xtrs-4.9c-r2-gentoo.patch
new file mode 100644
index 000000000000..27f1ee1a0fcc
--- /dev/null
+++ b/app-emulation/xtrs/files/xtrs-4.9c-r2-gentoo.patch
@@ -0,0 +1,60 @@
+diff -Nurp xtrs-4.9c-orig/ChangeLog xtrs-4.9c/ChangeLog
+--- xtrs-4.9c-orig/ChangeLog 2006-05-14 18:55:28.000000000 -0600
++++ xtrs-4.9c/ChangeLog 2008-06-26 16:57:23.000000000 -0600
+@@ -1,3 +1,13 @@
++4.9c-Gentoo -- Thu Jun 26 16:57:16 MDT 2008 -- Joe Peterson <joe@skyrush.com>
++
++* Patched for Gentoo ebuild
++ - Added assignment to volatile variable in the z80 delay loop
++ (allows near-actual speed emulation with optimization)
++ - Fixed keyboard wait issue that caused CPU spinning (i.e. max
++ CPU usage) after using F10 (reset), F7, F8, or F9.
++ - Disable SIGIO
++ - Added NEWDOS/80 system date/time auto-initialization
++
+ 4.9c -- Sun May 14 17:54:25 PDT 2006 -- Tim Mann
+
+ * Fixed the new -e flag on import/cmd and export/cmd to actually
+diff -Nurp xtrs-4.9c-orig/Makefile xtrs-4.9c/Makefile
+--- xtrs-4.9c-orig/Makefile 2006-05-13 15:10:25.000000000 -0600
++++ xtrs-4.9c/Makefile 2008-06-26 16:48:15.000000000 -0600
+@@ -143,7 +143,7 @@ z80code: $(Z80CODE)
+ include Makefile.local
+
+ CFLAGS = $(DEBUG) $(ENDIAN) $(DEFAULT_ROM) $(READLINE) $(DISKDIR) $(IFLAGS) \
+- $(APPDEFAULTS) -DKBWAIT -DHAVE_SIGIO
++ $(APPDEFAULTS) -DKBWAIT
+ LIBS = $(XLIB) $(READLINELIBS) $(EXTRALIBS)
+
+ ZMACFLAGS = -h
+diff -Nurp xtrs-4.9c-orig/trs_keyboard.c xtrs-4.9c/trs_keyboard.c
+--- xtrs-4.9c-orig/trs_keyboard.c 2006-05-13 14:50:17.000000000 -0600
++++ xtrs-4.9c/trs_keyboard.c 2008-06-26 16:46:03.000000000 -0600
+@@ -998,12 +998,12 @@ int trs_next_key(int wait)
+ if ((z80_state.nmi && !z80_state.nmi_seen) ||
+ (z80_state.irq && z80_state.iff1) ||
+ trs_event_scheduled() || key_immediate) {
++ key_immediate = 0;
+ rval = -1;
+ break;
+ }
+ trs_paused = 1;
+- pause(); /* Wait for SIGALRM or SIGIO */
+- key_immediate = 0;
++ pause(); /* Wait for SIGALRM */
+ trs_get_event(0);
+ }
+ return rval;
+diff -Nurp xtrs-4.9c-orig/z80.c xtrs-4.9c/z80.c
+--- xtrs-4.9c-orig/z80.c 2005-05-22 00:57:01.000000000 -0600
++++ xtrs-4.9c/z80.c 2008-06-26 16:44:32.000000000 -0600
+@@ -3027,7 +3027,8 @@ int z80_run(int continuous)
+ #endif
+ /* Speed control */
+ if ((i = z80_state.delay)) {
+- while (--i) /*nothing*/;
++ volatile int dummy;
++ while (--i) dummy = i;
+ }
+
+ instruction = mem_read(REG_PC++);
diff --git a/app-emulation/xtrs/xtrs-4.9c-r2.ebuild b/app-emulation/xtrs/xtrs-4.9c-r2.ebuild
new file mode 100644
index 000000000000..63ee9a47c0e8
--- /dev/null
+++ b/app-emulation/xtrs/xtrs-4.9c-r2.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/xtrs/xtrs-4.9c-r2.ebuild,v 1.1 2008/06/26 23:50:48 lavajoe Exp $
+
+inherit eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="Radio Shack TRS-80 emulator"
+HOMEPAGE="http://www.tim-mann.org/xtrs.html"
+SRC_URI="http://www.tim-mann.org/trs80/${P}.tar.gz
+ http://home.gwi.net/~plemon/support/disks/xtrs/ld4-631.tar.gz"
+
+LICENSE="as-is"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~x86-fbsd"
+IUSE=""
+
+DEPEND="sys-libs/ncurses
+ sys-libs/readline
+ >=x11-libs/libX11-1.0.0"
+
+src_unpack() {
+ unpack ${P}.tar.gz
+ tar xzf "${DISTDIR}/ld4-631.tar.gz" disks || die "tar failed"
+
+ cd "${S}"
+ epatch "${FILESDIR}/${PF}-gentoo.patch"
+ epatch "${FILESDIR}/${P}-newdos-datetime.patch"
+}
+
+src_compile() {
+ use ppc && append-flags -Dbig_endian
+ emake CC="$(tc-getCC)" DEBUG="${CFLAGS}" \
+ DISKDIR="-DDISKDIR='\"/usr/share/xtrs\"'" \
+ DEFAULT_ROM="-DDEFAULT_ROM='\"/usr/share/xtrs/romimage\"' \
+ -DDEFAULT_ROM3='\"/usr/share/xtrs/romimage.m3\"' \
+ -DDEFAULT_ROM4P='\"/usr/share/xtrs/romimage.m4p\"'" \
+ || die "emake failed"
+}
+
+src_install() {
+ dodir /usr/bin /usr/share/xtrs/disks /usr/share/man/man1
+ emake PREFIX="${D}"/usr install || die "emake install failed"
+
+ insopts -m0444
+ insinto /usr/share/xtrs/disks
+ doins cpmutil.dsk utility.dsk "${WORKDIR}"/disks/ld4-631.dsk
+ dosym disks/ld4-631.dsk /usr/share/xtrs/disk4p-0
+ dosym disks/utility.dsk /usr/share/xtrs/disk4p-1
+
+ dodoc ChangeLog README xtrsrom4p.README cpmutil.html dskspec.html \
+ || die "dodoc failed"
+}
+
+pkg_postinst() {
+ ewarn "For copyright reasons, xtrs does not include actual ROM images."
+ ewarn "Because of this, unless you supply your own ROM, xtrs will"
+ ewarn "not function in any mode except 'Model 4p' mode (a minimal"
+ ewarn "free ROM is included for this), which can be run like this:"
+ ewarn " xtrs -model 4p"
+ elog ""
+ elog "If you already own a copy of the ROM software (e.g., if you have"
+ elog "a TRS-80 with this ROM), then you can make yourself a copy of this"
+ elog "for use with xtrs using utilities available on the web. You can"
+ elog "also often find various ROMs elsewhere. To load your own ROM,"
+ elog "specify the '-romfile' option."
+}