summaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
authorwiz <wiz>2002-11-22 12:25:48 +0000
committerwiz <wiz>2002-11-22 12:25:48 +0000
commit89d0de3efe5b0a1035c9f29a49dd6078a4cf146f (patch)
tree93e22574aade38d64b2e7cceb7f40cc5e751ad3a /emulators
parent26e8bf8a808554095a3fed20779e95b27a1c91c6 (diff)
downloadpkgsrc-89d0de3efe5b0a1035c9f29a49dd6078a4cf146f.tar.gz
Update to 1.2.4, based on PR 19113 by Christian Groessler.
Some additional cleanup by me. Changes since 0.9.9* are too many to list here -- lots of new features.
Diffstat (limited to 'emulators')
-rw-r--r--emulators/atari800/DESCR46
-rw-r--r--emulators/atari800/Makefile53
-rw-r--r--emulators/atari800/PLIST3
-rw-r--r--emulators/atari800/distinfo11
-rw-r--r--emulators/atari800/files/atari800.cfg22
-rw-r--r--emulators/atari800/patches/patch-aa29
-rw-r--r--emulators/atari800/patches/patch-ab12
-rw-r--r--emulators/atari800/patches/patch-ac15
8 files changed, 91 insertions, 100 deletions
diff --git a/emulators/atari800/DESCR b/emulators/atari800/DESCR
index 163d2c004f6..d48d7407011 100644
--- a/emulators/atari800/DESCR
+++ b/emulators/atari800/DESCR
@@ -1,24 +1,24 @@
-Please refer to /usr/pkg/share/doc/atari (or equivalent on your
-system) for the distribution documents. A man page has also been
-installed. The system wide configuration file can be found at
-/usr/pkg/lib/atari/atari800.cfg (or similar) which you will probably
-want to copy to your home directory, at some stage, to personalise the
-settings.
+Atari 8-bit machine emulator for multiple platforms.
-If you're at all serious about your emulator then you SHOULD check out
-these URL's in the order they're written:
-
- http://www.signus.demon.co.uk/david/
- http://zippy.sonoma.edu/~kendrick/nbs/new_and_emu.html
- ftp://ftp.hackerz.com/hackerz/atari/web/index.html
- comp.sys.atari.8bit
-
-This should get you started and provide you with numerous links to
-other web sites.
-
-The ROM's for the Atari computers are, unfortunately, copyright. This
-port will attempt to down-load another freeware Atari emulator for DOS
-called PC Xformer 2.5 which contains copies of these ROM files. If you
-would like to take a further look at XF2.5 you should find it in your
-distfiles directory (if it successfully down-loaded :->). For more info
-on this emulator check out "http://www.halcyon.com/brasoft/".
+Major features:
+o Atari 400, 800, 600 XL, 800XL, 130XE, 5200 Games System.
+o 130XE compatible memory expansions: 320K, 576K, 1088K.
+o Optional 4K RAM between 0xc000 and 0xcfff in 400/800 mode.
+o Cycle-exact 6502 emulation, all unofficial instructions.
+o Cycle-exact NMI interrupts, scanline-based POKEY interrupts.
+o Scanline-based ANTIC emulation, all display modes, precise timing.
+o Player/Missile Graphics, exact priority control and collision detection.
+o Exact POKEY shift registers (sound and random number generator).
+o 8 disk drives, emulated at computer-to-drive communication
+ and fast patched SIO levels.
+o ATR, XFD, DCM, ATR.GZ and XFD.GZ disk images.
+o Direct loading of Atari executable files.
+o 24 cartridge types, raw and CART format.
+o Cassette player, raw and CAS images.
+o Printer support.
+o Files can be stored directly on your host computer via the H: device.
+o Current emulation state can be saved in a state file.
+o Sound support (possibility to redirect it to WAV files).
+o Stereo (two POKEYs) emulation.
+o Joystick controller using numeric keypad and real joystick support.
+o Screen snapshots (normal and interlaced) to PCX files.
diff --git a/emulators/atari800/Makefile b/emulators/atari800/Makefile
index a3cdfe295d8..1287719c242 100644
--- a/emulators/atari800/Makefile
+++ b/emulators/atari800/Makefile
@@ -1,13 +1,14 @@
-# $NetBSD: Makefile,v 1.14 2002/05/12 10:16:46 abs Exp $
+# $NetBSD: Makefile,v 1.15 2002/11/22 12:25:48 wiz Exp $
+#
-DISTNAME= Atari800-0.9.9a
-PKGNAME= atari800-0.9.9a
+DISTNAME= atari800-1.2.4
+WRKSRC= ${WRKDIR}/${DISTNAME}/src
CATEGORIES= emulators
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=atari800/}
-DISTFILES= a800s099a.zip xf25.zip
+DISTFILES= atari800-1.2.4.tar.gz xf25.zip
MAINTAINER= packages@netbsd.org
-HOMEPAGE= http://cas3.zlin.vutbr.cz/~stehlik/a800.htm
+HOMEPAGE= http://atari800.atari.org
COMMENT= Atari 8-bit computer, 5200 console emulator
BUILD_DEPENDS= unzip-[0-9]*:../../archivers/unzip
@@ -18,39 +19,45 @@ NO_SRC_ON_CDROM= ${RESTRICTED}
NO_BIN_ON_FTP= ${RESTRICTED}
NO_BIN_ON_CDROM= ${RESTRICTED}
-USE_X11= yes
-EXTRACT_CMD= unzip -Loq ${DOWNLOADED_DISTFILE}
+USE_BUILDLINK2= YES
+USE_GMAKE= YES
+USE_X11= YES
+
+EXTRACT_ONLY= atari800-1.2.4.tar.gz
MAKE_FLAGS= LDFLAGS="${LDFLAGS} -L${X11BASE}/lib" OBJ="atari_x11.o" \
CFLAGS="-c ${CFLAGS} -DPREFIX=\\\"${PREFIX}\\\""
#override HOME to avoid picking up a bad ${HOME}/.atari800 during the build
-MAKE_FLAGS+= HOME=${WRKSRC}
+MAKE_FLAGS+= HOME=${WRKSRC}
post-extract:
- @${FIND} ${WRKDIR} -type f -print | ${XARGS} ${CHMOD} 0644
- @${MV} ${WRKDIR}/Atari800-0.9.9a/* ${WRKSRC}/
+ @cd ${WRKDIR} && ${LOCALBASE}/bin/unzip -Lqo ${DISTDIR}/xf25.zip
do-build:
- @printf 'n\nn\ny\n' | (cd ${WRKSRC} && \
- ${MAKE} ${MAKE_FLAGS} -f Makefile.unix config.h >/dev/null)
- @${RM} -f ${WRKSRC}/atari_x11.o
- @cd ${WRKSRC} && ${MAKE} CPPFLAGS="-I${X11BASE}/include -DSHM" \
- LDLIBS="-lX11 -lXext -lm -lossaudio" ${MAKE_FLAGS} \
- -f Makefile.unix atari800
+ @cd ${WRKSRC} && LDFLAGS="-s -L${X11BASE}/lib -Wl,-R,${X11BASE}/lib" LIBS=-lossaudio ./configure --prefix=${PREFIX} --with-x --enable-MONITOR_BREAK --enable-MONITOR_HINTS --enable-MONITOR_ASSEMBLER --enable-SOUND --enable-SET_LED --target=x11-shm
+ @${ECHO} '#define PREFIX "${PREFIX}"' >> ${WRKSRC}/config.h
+ @cd ${WRKSRC} && ${GMAKE}
${MV} ${WRKSRC}/atari800 ${WRKSRC}/atari800-shm
- @${RM} -f ${WRKSRC}/atari_x11.o
- @cd ${WRKSRC} && ${MAKE} CPPFLAGS="-I${X11BASE}/include" \
- LDLIBS="-lX11 -lm -lossaudio" ${MAKE_FLAGS} \
- -f Makefile.unix atari800
+ @cd ${WRKSRC} && ${GMAKE} clean
+ @cd ${WRKSRC} && LDFLAGS="-s" LIBS=-lossaudio ./configure --prefix=${PREFIX} --enable-MONITOR_BREAK --enable-MONITOR_HINTS --enable-MONITOR_ASSEMBLER --enable-SOUND --enable-SET_LED --target=curses
+ @${ECHO} '#define PREFIX "${PREFIX}"' >> ${WRKSRC}/config.h
+ @cd ${WRKSRC} && ${GMAKE}
+ ${MV} ${WRKSRC}/atari800 ${WRKSRC}/atari800-curses
+ @cd ${WRKSRC} && ${GMAKE} clean
+ @cd ${WRKSRC} && LDFLAGS="-s -L${X11BASE}/lib -Wl,-R,${X11BASE}/lib" LIBS=-lossaudio ./configure --prefix=${PREFIX} --with-x --enable-MONITOR_BREAK --enable-MONITOR_HINTS --enable-MONITOR_ASSEMBLER --enable-SOUND --enable-SET_LED --target=x11
+ @${ECHO} '#define PREFIX "${PREFIX}"' >> ${WRKSRC}/config.h
+ @cd ${WRKSRC} && ${GMAKE}
${SED} -e 's,@PREFIX@,${PREFIX},g' <${FILESDIR}/atari800.cfg \
>${WRKSRC}/atari800.cfg
do-install:
- ${INSTALL_DATA_DIR} ${PREFIX}/share/atari800 ${PREFIX}/share/doc/atari800
+ ${INSTALL_DATA_DIR} ${PREFIX}/share/atari800
+ ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/atari800
${INSTALL_PROGRAM} ${WRKSRC}/atari800-shm ${WRKSRC}/atari800 \
- ${PREFIX}/bin/
+ ${WRKSRC}/atari800-curses ${PREFIX}/bin/
${INSTALL_DATA} ${WRKDIR}/*.rom ${WRKDIR}/*.xfd ${WRKDIR}/*.atr \
${WRKSRC}/atari800.cfg ${PREFIX}/share/atari800/
- ${INSTALL_DATA} ${WRKSRC}/README ${WRKSRC}/USAGE \
+ ${INSTALL_DATA} ${WRKDIR}/${DISTNAME}/DOC/README \
+ ${WRKDIR}/${DISTNAME}/DOC/USAGE \
${PREFIX}/share/doc/atari800
${INSTALL_DATA} ${WRKSRC}/atari800.man ${PREFIX}/man/man1/atari800.1
diff --git a/emulators/atari800/PLIST b/emulators/atari800/PLIST
index e2fa68fb189..536240f4da7 100644
--- a/emulators/atari800/PLIST
+++ b/emulators/atari800/PLIST
@@ -1,5 +1,6 @@
-@comment $NetBSD: PLIST,v 1.1 2001/10/31 23:52:12 zuntum Exp $
+@comment $NetBSD: PLIST,v 1.2 2002/11/22 12:25:48 wiz Exp $
bin/atari800
+bin/atari800-curses
bin/atari800-shm
man/man1/atari800.1
share/atari800/atari800.cfg
diff --git a/emulators/atari800/distinfo b/emulators/atari800/distinfo
index f4629c6696b..9828d4ee4fb 100644
--- a/emulators/atari800/distinfo
+++ b/emulators/atari800/distinfo
@@ -1,9 +1,8 @@
-$NetBSD: distinfo,v 1.2 2001/04/20 10:49:52 agc Exp $
+$NetBSD: distinfo,v 1.3 2002/11/22 12:25:48 wiz Exp $
-SHA1 (a800s099a.zip) = c976ab757babf9ed8c1e762c38c665730811ee6b
-Size (a800s099a.zip) = 377644 bytes
+SHA1 (atari800-1.2.4.tar.gz) = 4a2becbc87acafd4383d2bc98877c4926f71ccf1
+Size (atari800-1.2.4.tar.gz) = 478075 bytes
SHA1 (xf25.zip) = e65923fd3a4845c1c72d1677db0fda969187eb42
Size (xf25.zip) = 188942 bytes
-SHA1 (patch-aa) = 6f21a6286fda8286a2247cb3b96173d3b9753532
-SHA1 (patch-ab) = 36375d1837e71aaf81e201489b8da45d09ba3bf7
-SHA1 (patch-ac) = 1b544c8b40649b8b8d931f440d836ea1ab8455f8
+SHA1 (patch-aa) = fc27bbb36aaec9269db461b8c76b0fbf2e2f5fd9
+SHA1 (patch-ab) = b21e1c68588caa8eb9c191fd0ad5638136ae65e7
diff --git a/emulators/atari800/files/atari800.cfg b/emulators/atari800/files/atari800.cfg
index 414577e10e9..a51b4bdf78f 100644
--- a/emulators/atari800/files/atari800.cfg
+++ b/emulators/atari800/files/atari800.cfg
@@ -1,4 +1,4 @@
-Atari 800 Emulator, Version 0.9.8
+Atari 800 Emulator, Version 1.2.4
OS/A_ROM=
OS/B_ROM=@PREFIX@/share/atari800/atariosb.rom
XL/XE_ROM=@PREFIX@/share/atari800/atarixl.rom
@@ -6,17 +6,19 @@ BASIC_ROM=@PREFIX@/share/atari800/ataribas.rom
5200_ROM=
DISK_DIR=@PREFIX@/share/atari800/
ROM_DIR=@PREFIX@/share/atari800/
-H1_DIR=
-H2_DIR=
-H3_DIR=
-H4_DIR=
-EXE_DIR=
+H1_DIR=.
+H2_DIR=.
+H3_DIR=.
+H4_DIR=.
+HD_READ_ONLY=1
+EXE_DIR=.
STATE_DIR=
PRINT_COMMAND=lpr %s
SCREEN_REFRESH_RATIO=1
-DEFAULT_SYSTEM=Atari XL
+MACHINE_TYPE=Atari XL/XE
+RAM_SIZE=64
DEFAULT_TV_MODE=PAL
-HOLD_OPTION=1
-ENABLE_C000_RAM=0
-ENABLE_ROM_PATCH=1
+DISABLE_BASIC=1
ENABLE_SIO_PATCH=1
+ENABLE_H_PATCH=1
+ENABLE_P_PATCH=1
diff --git a/emulators/atari800/patches/patch-aa b/emulators/atari800/patches/patch-aa
index dd4469b3829..53894679190 100644
--- a/emulators/atari800/patches/patch-aa
+++ b/emulators/atari800/patches/patch-aa
@@ -1,25 +1,22 @@
-$NetBSD: patch-aa,v 1.1.1.1 1999/05/23 05:17:05 tv Exp $
+$NetBSD: patch-aa,v 1.2 2002/11/22 12:25:49 wiz Exp $
---- sound.c.orig Tue Dec 1 11:46:36 1998
-+++ sound.c Sun May 23 00:35:02 1999
-@@ -5,7 +5,7 @@
- #ifdef VOXWARE
+--- sound.c.orig Wed Aug 7 10:43:58 2002
++++ sound.c Wed Nov 20 15:50:44 2002
+@@ -7,7 +7,7 @@
+ #ifdef SOUND
#include <fcntl.h>
#include <sys/ioctl.h>
-#include <sys/soundcard.h>
+#include <soundcard.h>
#include "pokeysnd.h"
+ #include "log.h"
+@@ -20,7 +20,7 @@
-@@ -57,9 +57,9 @@
- unsigned int formats;
- int tmp;
+ #define DEFDSPRATE 22050
-- dsp_fd = open("/dev/dsp", O_WRONLY, 0777);
-+ dsp_fd = open("/dev/audio", O_WRONLY, 0777);
- if (dsp_fd == -1) {
-- perror("/dev/dsp");
-+ perror("/dev/audio");
- exit(1);
- }
- /*
+-static char *dspname = "/dev/dsp";
++static char *dspname = "/dev/audio";
+ static int dsprate = DEFDSPRATE;
+ static int fragstofill = 0;
+ static int snddelay = 60; /* delay in milliseconds */
diff --git a/emulators/atari800/patches/patch-ab b/emulators/atari800/patches/patch-ab
index 192977c8064..f9ceef6d1cc 100644
--- a/emulators/atari800/patches/patch-ab
+++ b/emulators/atari800/patches/patch-ab
@@ -1,11 +1,11 @@
-$NetBSD: patch-ab,v 1.1.1.1 1999/05/23 05:17:05 tv Exp $
+$NetBSD: patch-ab,v 1.2 2002/11/22 12:25:49 wiz Exp $
---- rt-config.c.orig Sun May 23 00:57:27 1999
-+++ rt-config.c Sun May 23 00:57:49 1999
-@@ -41,7 +41,7 @@
- extern int Ram256;
-
+--- rt-config.c.orig Sun Apr 7 21:35:40 2002
++++ rt-config.c Wed Nov 20 15:53:16 2002
+@@ -53,7 +53,7 @@
static char *rtconfig_filename1 = "atari800.cfg";
+ #endif
+
-static char *rtconfig_filename2 = "/etc/atari800.cfg";
+static char *rtconfig_filename2 = PREFIX "/share/atari800/atari800.cfg";
diff --git a/emulators/atari800/patches/patch-ac b/emulators/atari800/patches/patch-ac
deleted file mode 100644
index 5d8d3417b55..00000000000
--- a/emulators/atari800/patches/patch-ac
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-ac,v 1.1.1.1 1999/05/23 05:17:05 tv Exp $
-
---- atari800.man.orig Sun May 23 01:07:10 1999
-+++ atari800.man Sun May 23 01:15:31 1999
-@@ -117,8 +117,8 @@
- Runs the emulator in a huge window where each Atari 800 pixel is
- represented by a 3x3 X Window rectange.
- .TP
--\fB-sound
--Enable sound using the Network Audio System.
-+\fB-nosound
-+Disable sound (necessary if no audio device is available).
- .SS Amiga Options
- .TP
- \fB-ocs