I've used Phil's instructions to set up a build area with a Makefile.
You can run make build from the top to build things.
This commit is contained in:
@@ -5,7 +5,10 @@ SYSDIR=sys
|
|||||||
CMDDIR=bin
|
CMDDIR=bin
|
||||||
TESTDIR=tests
|
TESTDIR=tests
|
||||||
|
|
||||||
all: sys cmd others tests
|
all: sys cmd others tests build
|
||||||
|
|
||||||
|
build: cmd others
|
||||||
|
cd build && make
|
||||||
|
|
||||||
runsh: all
|
runsh: all
|
||||||
cd bin && ../tools/a7out sh
|
cd bin && ../tools/a7out sh
|
||||||
@@ -40,22 +43,20 @@ cmd: dirs
|
|||||||
# $(AS) $(ASARGS) -o $(CMDDIR)/dsksav src/cmd/dsksav.s
|
# $(AS) $(ASARGS) -o $(CMDDIR)/dsksav src/cmd/dsksav.s
|
||||||
# $(AS) $(ASARGS) -o $(CMDDIR)/dsw src/cmd/dsw.s
|
# $(AS) $(ASARGS) -o $(CMDDIR)/dsw src/cmd/dsw.s
|
||||||
$(AS) $(ASARGS) -o $(CMDDIR)/ed src/cmd/ed2.s src/cmd/ed1.s
|
$(AS) $(ASARGS) -o $(CMDDIR)/ed src/cmd/ed2.s src/cmd/ed1.s
|
||||||
# $(AS) $(ASARGS) -o $(CMDDIR)/init src/cmd/init.s
|
$(AS) $(ASARGS) -o $(CMDDIR)/init src/cmd/init.s
|
||||||
|
|
||||||
others: dirs
|
others: dirs
|
||||||
$(AS) $(ASARGS) -o $(CMDDIR)/sh src/other/pbsh.s
|
$(AS) $(ASARGS) -o $(CMDDIR)/sh src/other/pbsh.s
|
||||||
$(AS) $(ASARGS) -o $(CMDDIR)/ops src/other/ops.s
|
|
||||||
|
|
||||||
# wkt apps
|
# wkt apps
|
||||||
$(AS) $(ASARGS) -o $(CMDDIR)/wktls src/other/wktls.s
|
$(AS) $(ASARGS) -o $(CMDDIR)/ls src/other/wktls.s
|
||||||
$(AS) $(ASARGS) -o $(CMDDIR)/wktcat src/other/wktcat.s
|
$(AS) $(ASARGS) -o $(CMDDIR)/wktcat src/other/wktcat.s
|
||||||
$(AS) $(ASARGS) -o $(CMDDIR)/wktcp src/other/wktcp.s
|
$(AS) $(ASARGS) -o $(CMDDIR)/wktcp src/other/wktcp.s
|
||||||
$(AS) $(ASARGS) -o $(CMDDIR)/wktdate src/other/wktdate.s
|
$(AS) $(ASARGS) -o $(CMDDIR)/date src/other/wktdate.s
|
||||||
$(AS) $(ASARGS) -o $(CMDDIR)/wktln src/other/wktln.s
|
$(AS) $(ASARGS) -o $(CMDDIR)/ln src/other/wktln.s
|
||||||
$(AS) $(ASARGS) -o $(CMDDIR)/wktls src/other/wktls.s
|
$(AS) $(ASARGS) -o $(CMDDIR)/ls src/other/wktls.s
|
||||||
$(AS) $(ASARGS) -o $(CMDDIR)/wktmv src/other/wktmv.s
|
$(AS) $(ASARGS) -o $(CMDDIR)/mv src/other/wktmv.s
|
||||||
$(AS) $(ASARGS) -o $(CMDDIR)/wktopr src/other/wktopr.s
|
$(AS) $(ASARGS) -o $(CMDDIR)/stat src/other/wktstat.s
|
||||||
$(AS) $(ASARGS) -o $(CMDDIR)/wktstat src/other/wktstat.s
|
|
||||||
|
|
||||||
tests: dirs
|
tests: dirs
|
||||||
$(AS) $(ASARGS) -o $(TESTDIR)/decimal_out src/tests/decimal_out.s
|
$(AS) $(ASARGS) -o $(TESTDIR)/decimal_out src/tests/decimal_out.s
|
||||||
@@ -75,3 +76,4 @@ clean:
|
|||||||
rm -rf $(SYSDIR)/*
|
rm -rf $(SYSDIR)/*
|
||||||
rm -rf $(CMDDIR)/*
|
rm -rf $(CMDDIR)/*
|
||||||
rm -rf $(TESTDIR)/*
|
rm -rf $(TESTDIR)/*
|
||||||
|
cd build && make clean
|
||||||
|
|||||||
@@ -0,0 +1,20 @@
|
|||||||
|
# Build the kernel, the filesystem and run SimH
|
||||||
|
|
||||||
|
AS=../tools/as7
|
||||||
|
MKFS=../tools/mkfs7
|
||||||
|
SYS=../src/sys
|
||||||
|
|
||||||
|
all: a.rim image.fs
|
||||||
|
|
||||||
|
run: a.rim image.fs
|
||||||
|
pdp7 unixv0.simh
|
||||||
|
|
||||||
|
a.rim:
|
||||||
|
$(AS) -f rim -o a.rim $(SYS)/sop.s $(SYS)/s[1-8].s
|
||||||
|
$(AS) -f list -o a.lst $(SYS)/sop.s $(SYS)/s[1-8].s
|
||||||
|
|
||||||
|
image.fs:
|
||||||
|
$(MKFS) --debug --format simh proto
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f a.rim image.fs a.lst
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
ken:ken:ken:12
|
||||||
|
dmr:dmr:dmr:14
|
||||||
+44
@@ -0,0 +1,44 @@
|
|||||||
|
# Prototype file for PDP-7 Unix filesystem layout
|
||||||
|
#
|
||||||
|
# Entries are one of:
|
||||||
|
# filename f[r-][w-][r-][r-] uid local_file_to_insert
|
||||||
|
# dirname d[r-][w-][r-][r-] uid [inumber]
|
||||||
|
# device i[r-][w-][r-][r-] uid inumber
|
||||||
|
# link l---- inumber
|
||||||
|
#
|
||||||
|
# The top directory's name is ignored
|
||||||
|
# Numeric values are in decimal
|
||||||
|
# Contents of each directory ends with a $ on a line by itself
|
||||||
|
# Format was inspired by 6th Edition mkfs
|
||||||
|
#
|
||||||
|
dd drw-- -1 2
|
||||||
|
system drw-- -1 3
|
||||||
|
init frwr- -1 ../bin/init
|
||||||
|
password frw-- -1 password
|
||||||
|
ttyin irwr- -1 6
|
||||||
|
keyboard irwr- -1 7
|
||||||
|
pptin irwr- -1 8
|
||||||
|
ttyout irwr- -1 10
|
||||||
|
display irwr- -1 11
|
||||||
|
pptout irwr- -1 12
|
||||||
|
sh frwr- -1 ../bin/sh
|
||||||
|
$
|
||||||
|
|
||||||
|
as frwr- -1 ../bin/as
|
||||||
|
cat frwr- -1 ../bin/cat
|
||||||
|
chmod frwr- -1 ../bin/chmod
|
||||||
|
chown frwr- -1 ../bin/chown
|
||||||
|
chrm frwr- -1 ../bin/chrm
|
||||||
|
cp frwr- -1 ../bin/cp
|
||||||
|
date frwr- -1 ../bin/date
|
||||||
|
ds frwr- -1 ../bin/ds
|
||||||
|
ln frwr- -1 ../bin/ln
|
||||||
|
ls frwr- -1 ../bin/ls
|
||||||
|
mv frwr- -1 ../bin/mv
|
||||||
|
stat frwr- -1 ../bin/stat
|
||||||
|
ken drwr- 10
|
||||||
|
system l---- 3
|
||||||
|
$
|
||||||
|
dmr drwr- 12
|
||||||
|
system l---- 3
|
||||||
|
$
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
set rb ena
|
||||||
|
att rb image.fs
|
||||||
|
load -S a.rim
|
||||||
|
show dev
|
||||||
|
dep pc 0100
|
||||||
Reference in New Issue
Block a user