summaryrefslogtreecommitdiff
path: root/emulators/arcem
diff options
context:
space:
mode:
authorcjep <cjep@pkgsrc.org>2002-03-31 21:41:31 +0000
committercjep <cjep@pkgsrc.org>2002-03-31 21:41:31 +0000
commitedee33aedd4de8ae843088c126776e000849f959 (patch)
treefff176c3bf84ccb6faadcd3b7ea5a179c343b6ad /emulators/arcem
parent090758c9bafb674f1873f920f993f7f6746f56c0 (diff)
downloadpkgsrc-edee33aedd4de8ae843088c126776e000849f959.tar.gz
Dave Gilbert's Acorn Archimedes Emulator including files to boot the
emulator with Linux.
Diffstat (limited to 'emulators/arcem')
-rw-r--r--emulators/arcem/DESCR2
-rw-r--r--emulators/arcem/MESSAGE18
-rw-r--r--emulators/arcem/Makefile32
-rw-r--r--emulators/arcem/PLIST10
-rw-r--r--emulators/arcem/distinfo10
-rw-r--r--emulators/arcem/patches/patch-aa36
-rw-r--r--emulators/arcem/patches/patch-ab46
7 files changed, 154 insertions, 0 deletions
diff --git a/emulators/arcem/DESCR b/emulators/arcem/DESCR
new file mode 100644
index 00000000000..67a40150895
--- /dev/null
+++ b/emulators/arcem/DESCR
@@ -0,0 +1,2 @@
+This package is Dave Gilbert's Acorn Archimedes emulator. Included
+is a Linux Boot ROM image and a Linux Hard Drive image.
diff --git a/emulators/arcem/MESSAGE b/emulators/arcem/MESSAGE
new file mode 100644
index 00000000000..7584d1d8dc5
--- /dev/null
+++ b/emulators/arcem/MESSAGE
@@ -0,0 +1,18 @@
+======================================================================
+$NetBSD: MESSAGE,v 1.1.1.1 2002/03/31 21:41:31 cjep Exp $
+
+When you run armul-arc, you need to be in a directory containing the
+armem files and the ROM file. The distribution is supplied with the
+Linux ROM and Hard Drive files from Dave Gilbert's site. The hard drive
+file needs to be writable by you. Also, you will need an
+.arcemrc file in your home directory e.g.
+
+ $ cp -R ${PREFIX}/share/arcem ~/Archimedes
+ $ cp ~/Archimedes/dot.arcemrc ~/.arcemrc
+ $ cd ~/Archimedes
+ $ chmod +w HardImage1
+ $ armul-arc
+
+See ${PREFIX}/share/arcem/README.OrElse for more details.
+
+======================================================================
diff --git a/emulators/arcem/Makefile b/emulators/arcem/Makefile
new file mode 100644
index 00000000000..219e9d6f9bf
--- /dev/null
+++ b/emulators/arcem/Makefile
@@ -0,0 +1,32 @@
+# $NetBSD: Makefile,v 1.1.1.1 2002/03/31 21:41:31 cjep Exp $
+#
+
+DISTNAME= arcem0.50
+PKGNAME= arcem-0.50
+CATEGORIES= emulators
+MASTER_SITES= ftp://ftp.arm.uk.linux.org/pub/linux/arcem/
+EXTRACT_SUFX= .tgz
+DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \
+ linux.rom.gz \
+ HardImage1.gz
+
+MAINTAINER= cjep@netbsd.org
+HOMEPAGE= ftp://ftp.arm.uk.linux.org/pub/linux/arcem/Index
+COMMENT= Dave Gilbert's Acorn Archimedes emulator
+
+WRKSRC= ${WRKDIR}/armul-arc
+
+post-install:
+ ${INSTALL_DATA_DIR} ${PREFIX}/share/arcem
+ ${INSTALL_DATA} ${WRKDIR}/linux.rom ${PREFIX}/share/arcem/ROM
+ ${INSTALL_DATA} ${WRKDIR}/HardImage1 ${PREFIX}/share/arcem/HardImage1
+ ${INSTALL_DATA} ${WRKSRC}/arch/dot.arcemrc \
+ ${PREFIX}/share/arcem/dot.arcemrc
+ ${INSTALL_DATA} ${WRKSRC}/hexcmos ${PREFIX}/share/arcem/hexcmos
+ ${INSTALL_DATA} ${WRKSRC}/hexcmos.2 ${PREFIX}/share/arcem/hexcmos.2
+ ${INSTALL_DATA} ${WRKSRC}/README ${PREFIX}/share/arcem/README
+ ${INSTALL_DATA} ${WRKSRC}/README.OrElse \
+ ${PREFIX}/share/arcem/README.OrElse
+
+.include "../../mk/x11.buildlink.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/emulators/arcem/PLIST b/emulators/arcem/PLIST
new file mode 100644
index 00000000000..cca59788a0b
--- /dev/null
+++ b/emulators/arcem/PLIST
@@ -0,0 +1,10 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2002/03/31 21:41:31 cjep Exp $
+bin/armul-arc
+share/arcem/ROM
+share/arcem/HardImage1
+share/arcem/dot.arcemrc
+share/arcem/hexcmos
+share/arcem/hexcmos.2
+share/arcem/README
+share/arcem/README.OrElse
+@dirrm share/arcem
diff --git a/emulators/arcem/distinfo b/emulators/arcem/distinfo
new file mode 100644
index 00000000000..3858fb52ae5
--- /dev/null
+++ b/emulators/arcem/distinfo
@@ -0,0 +1,10 @@
+$NetBSD: distinfo,v 1.1.1.1 2002/03/31 21:41:31 cjep Exp $
+
+SHA1 (arcem0.50.tgz) = 4c19c13971e7481b7b9d4538ab5c413769f08c2f
+Size (arcem0.50.tgz) = 113990 bytes
+SHA1 (linux.rom.gz) = 5a3ed7b8bf7e560d14ede14232e50a40a96f9147
+Size (linux.rom.gz) = 341085 bytes
+SHA1 (HardImage1.gz) = ab3c2ddd5a913a4051d4c21707e7701b27a103f3
+Size (HardImage1.gz) = 3545800 bytes
+SHA1 (patch-aa) = dd5ef10c7f455dd944fda3d14e4bd7780115b646
+SHA1 (patch-ab) = 4dbe031e69aabe04dbbcfca046b8d15ff2441a6f
diff --git a/emulators/arcem/patches/patch-aa b/emulators/arcem/patches/patch-aa
new file mode 100644
index 00000000000..683ae4fc28e
--- /dev/null
+++ b/emulators/arcem/patches/patch-aa
@@ -0,0 +1,36 @@
+$NetBSD: patch-aa,v 1.1.1.1 2002/03/31 21:41:31 cjep Exp $
+
+--- Makefile.orig Tue Aug 3 21:00:16 1999
++++ Makefile Sun Mar 31 21:34:25 2002
+@@ -22,13 +22,10 @@
+ #Default endianness of the emulated processor (LITTLEEND or BIGEND)
+ ENDIAN=LITTLEEND
+
+-prefix=/usr/local
+-CC = /home/dg/egcs/bin/gcc
+-# add -DHOST_BIGENDIAN for big endian hosts, eg. sun, sgi, hp
+-CFLAGS = -O6 -D$(ENDIAN) $(CFL) -Wall -Wno-return-type -DNOOS -DNOFPE -I/usr/X11/include
+-#CFLAGS = -g -D$(ENDIAN) $(CFL) -Wall -DNOOS -DNOFPE -I/usr/X11/include -DBENCHMARKEXIT
+-INSTALL_DIR = $(prefix)/bin
+-INSTALL=cp
++CFLAGS = -O6 -D$(ENDIAN) $(CFL) -Wall -Wno-return-type \
++ -DNOOS -DNOFPE -I${X11BASE}/include
++
++INSTALL_DIR = ${PREFIX}/bin
+
+ # Everything else should be ok as it is.
+
+@@ -56,10 +53,11 @@
+ all: armul-arc
+
+ install: all
+- $(INSTALL) armul $(INSTALL_DIR)
++ $(INSTALL) armul-arc $(INSTALL_DIR)
+
+ armul-arc: $(OBJS) $(MODEL).o
+- $(CC) $(CFLAGS) $(OBJS) $(MODEL).o -o $@ -L/usr/X11/lib -lm -lXext -lX11
++ $(CC) $(CFLAGS) $(OBJS) $(MODEL).o -o $@ -Wl,-R${X11BASE}/lib \
++ -L${X11BASE}/lib -lm -lXext -lX11
+
+ clean:
+ rm -f *.o arch/*.o armul-arc core *.bb *.bbg *.da
diff --git a/emulators/arcem/patches/patch-ab b/emulators/arcem/patches/patch-ab
new file mode 100644
index 00000000000..8e94500b2d1
--- /dev/null
+++ b/emulators/arcem/patches/patch-ab
@@ -0,0 +1,46 @@
+$NetBSD: patch-ab,v 1.1.1.1 2002/03/31 21:41:31 cjep Exp $
+
+--- arch/DispKbd.c.orig Tue Aug 3 21:00:17 1999
++++ arch/DispKbd.c Sun Mar 31 15:34:10 2002
+@@ -43,6 +43,41 @@
+ #define HD HOSTDISPLAY
+ #define DC DISPLAYCONTROL
+
++/* Endian */
++
++#ifndef HOST_BIGENDIAN
++
++#ifdef __Linux__
++#define __USE_BSD
++#include <endian.h>
++#if BYTE_ORDER == BIG_ENDIAN
++#define HOST_BIGENDIAN
++#endif
++#endif
++
++#ifdef __NetBSD__
++#include <sys/endian.h>
++#if BYTE_ORDER == BIG_ENDIAN
++#define HOST_BIGENDIAN
++#endif
++#endif
++
++#ifdef __APPLE__
++#include <nameser.h>
++#if BYTE_ORDER == BIG_ENDIAN
++#define HOST_BIGENDIAN
++#endif
++#endif
++
++#ifdef __sun__
++#include <sys/byteorder.h>
++#ifdef _BIG_ENDIAN
++#define HOST_BIGENDIAN
++#endif
++#endif
++
++#endif /* HOST_BIGENDIAN */
++
+ static unsigned AutoKey(ARMul_State *state);
+ unsigned DisplayKbd_XPoll(ARMul_State *state);
+