● 取り敢えず SIMH を make してみる
というわけで、
取り敢えず SIMH を make できる環境をつくります。
別に好きにやればいいんだけど、
私は次のような
Makefile
を作りました。
$ cd ${SIMHDIR}
$ mkdir pdp11e
$ cd pdp11e
$ cat > Makefile
# $Id: page1.html,v 1.3 2003/12/10 11:44:02 fujita Exp $
vpath %.c ../PDP11
vpath %.c ../
PROG= pdp11e
SRCS=
SRCS+= pdp11_fp.c
SRCS+= pdp11_cpu.c
SRCS+= pdp11_dz.c
SRCS+= pdp11_cis.c
SRCS+= pdp11_lp.c
SRCS+= pdp11_rk.c
SRCS+= pdp11_rl.c
SRCS+= pdp11_rp.c
SRCS+= pdp11_rx.c
SRCS+= pdp11_stddev.c
SRCS+= pdp11_sys.c
SRCS+= pdp11_tc.c
SRCS+= pdp11_tm.c
SRCS+= pdp11_ts.c
SRCS+= pdp11_io.c
SRCS+= pdp11_rq.c
SRCS+= pdp11_tq.c
SRCS+= pdp11_pclk.c
SRCS+= pdp11_ry.c
SRCS+= pdp11_pt.c
SRCS+= pdp11_hk.c
SRCS+= pdp11_xq.c
SRCS+= pdp11_xu.c
SRCS+= scp.c
SRCS+= scp_tty.c
SRCS+= sim_sock.c
SRCS+= sim_tmxr.c
SRCS+= sim_ether.c
SRCS+= sim_tape.c
OBJS= $(SRCS:.c=.o)
CFLAGS= -g
CFLAGS+=-DVM_PDP11
CFLAGS+=-I./
CFLAGS+=-I../
CFLAGS+=-I../PDP11
#LDFLAGS=-L/usr/X11R6/lib
LIBS= -lm
all: ${PROG}
${PROG}: ${OBJS}
${CC} ${LDFLAGS} -o ${PROG} ${OBJS} ${LIBS}
CLEANFILES=
clean cleandir:
rm -f ${PROG} ${OBJS} ${CLEANFILES}
<CNTL-D>
$ make
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_fp.o ../PDP11/pdp11_fp.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_cpu.o ../PDP11/pdp11_cpu.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_dz.o ../PDP11/pdp11_dz.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_cis.o ../PDP11/pdp11_cis.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_lp.o ../PDP11/pdp11_lp.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_rk.o ../PDP11/pdp11_rk.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_rl.o ../PDP11/pdp11_rl.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_rp.o ../PDP11/pdp11_rp.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_rx.o ../PDP11/pdp11_rx.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_stddev.o ../PDP11/pdp11_stddev.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_sys.o ../PDP11/pdp11_sys.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_tc.o ../PDP11/pdp11_tc.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_tm.o ../PDP11/pdp11_tm.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_ts.o ../PDP11/pdp11_ts.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_io.o ../PDP11/pdp11_io.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_rq.o ../PDP11/pdp11_rq.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_tq.o ../PDP11/pdp11_tq.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_pclk.o ../PDP11/pdp11_pclk.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_ry.o ../PDP11/pdp11_ry.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_pt.o ../PDP11/pdp11_pt.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_hk.o ../PDP11/pdp11_hk.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_xq.o ../PDP11/pdp11_xq.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o pdp11_xu.o ../PDP11/pdp11_xu.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o scp.o ../scp.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o scp_tty.o ../scp_tty.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o sim_sock.o ../sim_sock.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o sim_tmxr.o ../sim_tmxr.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o sim_ether.o ../sim_ether.c
cc -g -DVM_PDP11 -I./ -I../ -I../PDP11 -c -o sim_tape.o ../sim_tape.c
cc -o pdp11e pdp11_fp.o pdp11_cpu.o pdp11_dz.o pdp11_cis.o pdp11_lp.o pdp11_rk.o pdp11_rl.o pdp11_rp.o pdp11_rx.o pdp11_stddev.o pdp11_sys.o pdp11_tc.o pdp11_tm.o pdp11_ts.o pdp11_io.o pdp11_rq.o pdp11_tq.o pdp11_pclk.o pdp11_ry.o pdp11_pt.o pdp11_hk.o pdp11_xq.o pdp11_xu.o scp.o scp_tty.o sim_sock.o sim_tmxr.o sim_ether.o sim_tape.o -lm
$ ./pdp11e
PDP-11 simulator V3.0-2
sim> quit
Goodbye
$
この Makefile の便利なところは、 ローカルディレクトリに該当するソースがなければ、 隣の "../PDP11/" や、1つ上の "../" にあるソースを見に行ってくれることです。 なので、 修正の必要なソースファイルだけ、 ローカルディレクトリにコピーして変更すれば良い。 作業が終った時に、 どのファイルを修正したか一発で分かります。
では、 オリジナルのソースに手を入れていきましょう。
|
|