TM03/TE16のサポート - Page 1

2003.12.9

取り敢えず 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つ上の "../" にあるソースを見に行ってくれることです。 なので、 修正の必要なソースファイルだけ、 ローカルディレクトリにコピーして変更すれば良い。 作業が終った時に、 どのファイルを修正したか一発で分かります。

では、 オリジナルのソースに手を入れていきましょう。



PREV   NEXT