A PDP, IBM 1401, and Nova CPU simulator

This commit is contained in:
form 1998-11-12 13:13:09 +00:00
parent 834f1b75d4
commit 2176b97da2
7 changed files with 117 additions and 0 deletions

16
emulators/simh/Makefile Normal file
View File

@ -0,0 +1,16 @@
# $OpenBSD: Makefile,v 1.1.1.1 1998/11/12 13:13:09 form Exp $
# NetBSD: Makefile,v 1.2 1998/08/23 20:48:03 frueauf Exp
#
DISTNAME= sim_2.3c
PKGNAME= simh-2.3c
CATEGORIES= emulators
MASTER_SITES= ftp://minnie.cs.adfa.oz.au/pub/PDP-11/Sims/Supnik_2.3/sources/
MAINTAINER= form@OpenBSD.ORG
NO_WRKSUBDIR= yes
MAKEFILE= ${FILESDIR}/Makefile
.include <bsd.port.mk>

View File

@ -0,0 +1,56 @@
PRGS=i1401 nova pdp1 pdp4 pdp7 pdp8 pdp9 pdp11 pdp15
all: ${PRGS}
install:
@for file in ${PRGS}; do \
${BSD_INSTALL_PROGRAM} $$file ${PREFIX}/bin/simh-$$file; \
done
${BSD_INSTALL_DATA} simh_doc.txt ${PREFIX}/share/doc/
.SUFFIXES: .4o .7o .9o .15o
.c.4o:
${COMPILE.c} -o $@ -DPDP4 $<
.c.7o:
${COMPILE.c} -o $@ -DPDP7 $<
.c.9o:
${COMPILE.c} -o $@ -DPDP9 $<
.c.15o:
${COMPILE.c} -o $@ -DPDP15 $<
SCP=scp.o scp_tty.o
i1401: i1401_cd.o i1401_cpu.o i1401_iq.o i1401_lp.o i1401_mt.o i1401_sys.o \
${SCP}
${LINK.c} -o $@ $>
nova: nova_clk.o nova_cpu.o nova_dkp.o nova_dsk.o nova_lp.o nova_mta.o \
nova_pt.o nova_sys.o nova_tt.o ${SCP}
${LINK.c} -o $@ $> -lm
pdp1: pdp1_cpu.o pdp1_lp.o pdp1_stddev.o pdp1_sys.o ${SCP}
${LINK.c} -o $@ $>
pdp4: pdp18b_cpu.4o pdp18b_drm.4o pdp18b_lp.4o pdp18b_mt.4o pdp18b_rf.4o \
pdp18b_rp.4o pdp18b_stddev.4o pdp18b_sys.4o ${SCP}
${LINK.c} -o $@ $> -lm
pdp7: pdp18b_cpu.7o pdp18b_drm.7o pdp18b_lp.7o pdp18b_mt.7o pdp18b_rf.7o \
pdp18b_rp.7o pdp18b_stddev.7o pdp18b_sys.7o ${SCP}
${LINK.c} -o $@ $> -lm
pdp8: pdp8_clk.o pdp8_cpu.o pdp8_lp.o pdp8_mt.o pdp8_pt.o pdp8_rf.o \
pdp8_rk.o pdp8_rx.o pdp8_sys.o pdp8_tt.o ${SCP}
${LINK.c} -o $@ $> -lm
pdp9: pdp18b_cpu.9o pdp18b_drm.9o pdp18b_lp.9o pdp18b_mt.9o pdp18b_rf.9o \
pdp18b_rp.9o pdp18b_stddev.9o pdp18b_sys.9o ${SCP}
${LINK.c} -o $@ $> -lm
pdp11: pdp11_cpu.o pdp11_fp.o pdp11_lp.o pdp11_rk.o pdp11_rl.o pdp11_rp.o \
pdp11_rx.o pdp11_stddev.o pdp11_sys.o pdp11_tm.o ${SCP}
${LINK.c} -o $@ $> -lm
pdp15: pdp18b_cpu.15o pdp18b_drm.15o pdp18b_lp.15o pdp18b_mt.15o pdp18b_rf.15o \
pdp18b_rp.15o pdp18b_stddev.15o pdp18b_sys.15o ${SCP}
${LINK.c} -o $@ $> -lm

3
emulators/simh/files/md5 Normal file
View File

@ -0,0 +1,3 @@
$NetBSD: md5,v 1.1 1998/08/12 22:44:32 tv Exp $
MD5 (sim_2.3c.tar.gz) = baf872e8f1e68e8b4c2dfccadbe9738d

View File

@ -0,0 +1,29 @@
$NetBSD: patch-aa,v 1.2 1998/08/12 22:44:52 tv Exp $
--- scp.c.orig Wed Aug 12 18:21:13 1998
+++ scp.c Wed Aug 12 18:24:25 1998
@@ -240,6 +240,7 @@
do { printf ("sim> "); /* prompt */
cptr = read_line (cbuf, CBUFSIZE, stdin); /* read command line */
+ if (cptr == NULL) break; /* exit on eof */
stat = SCPE_UNK;
if (cptr == NULL) continue; /* ignore EOF */
if (*cptr == 0) continue; /* ignore blank */
@@ -254,6 +255,7 @@
detach_all (0);
ttclose ();
+puts("");
return 0;
}
@@ -879,7 +881,7 @@
(UNIT_ATT + UNIT_SEQ))
fseek (uptr -> fileref, uptr -> pos, SEEK_SET); } }
stop_cpu = 0;
-if ((int) signal (SIGINT, int_handler) == -1) { /* set WRU */
+if (signal (SIGINT, int_handler) == (void *)-1) { /* set WRU */
printf ("Simulator interrupt handler setup failed\n");
return SCPE_OK; }
if (ttrunstate () != SCPE_OK) { /* set console */

View File

@ -0,0 +1 @@
A PDP, IBM 1401, and Nova CPU simulator.

2
emulators/simh/pkg/DESCR Normal file
View File

@ -0,0 +1,2 @@
This package includes Bob Supnik's PDP-8, PDP-11, PDP-1, other 18b PDP,
Nova, and IBM 1401 simulators.

10
emulators/simh/pkg/PLIST Normal file
View File

@ -0,0 +1,10 @@
bin/simh-i1401
bin/simh-nova
bin/simh-pdp1
bin/simh-pdp4
bin/simh-pdp7
bin/simh-pdp8
bin/simh-pdp9
bin/simh-pdp11
bin/simh-pdp15
share/doc/simh_doc.txt