1
0
mirror of https://github.com/livingcomputermuseum/pdp7-unix.git synced 2026-02-18 13:37:59 +00:00

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:
Warren Toomey
2016-03-10 17:02:46 +10:00
parent 86135be03e
commit 947d44a681
5 changed files with 83 additions and 10 deletions

View File

@@ -5,7 +5,10 @@ SYSDIR=sys
CMDDIR=bin
TESTDIR=tests
all: sys cmd others tests
all: sys cmd others tests build
build: cmd others
cd build && make
runsh: all
cd bin && ../tools/a7out sh
@@ -40,22 +43,20 @@ cmd: dirs
# $(AS) $(ASARGS) -o $(CMDDIR)/dsksav src/cmd/dsksav.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)/init src/cmd/init.s
$(AS) $(ASARGS) -o $(CMDDIR)/init src/cmd/init.s
others: dirs
$(AS) $(ASARGS) -o $(CMDDIR)/sh src/other/pbsh.s
$(AS) $(ASARGS) -o $(CMDDIR)/ops src/other/ops.s
# 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)/wktcp src/other/wktcp.s
$(AS) $(ASARGS) -o $(CMDDIR)/wktdate src/other/wktdate.s
$(AS) $(ASARGS) -o $(CMDDIR)/wktln src/other/wktln.s
$(AS) $(ASARGS) -o $(CMDDIR)/wktls src/other/wktls.s
$(AS) $(ASARGS) -o $(CMDDIR)/wktmv src/other/wktmv.s
$(AS) $(ASARGS) -o $(CMDDIR)/wktopr src/other/wktopr.s
$(AS) $(ASARGS) -o $(CMDDIR)/wktstat src/other/wktstat.s
$(AS) $(ASARGS) -o $(CMDDIR)/date src/other/wktdate.s
$(AS) $(ASARGS) -o $(CMDDIR)/ln src/other/wktln.s
$(AS) $(ASARGS) -o $(CMDDIR)/ls src/other/wktls.s
$(AS) $(ASARGS) -o $(CMDDIR)/mv src/other/wktmv.s
$(AS) $(ASARGS) -o $(CMDDIR)/stat src/other/wktstat.s
tests: dirs
$(AS) $(ASARGS) -o $(TESTDIR)/decimal_out src/tests/decimal_out.s
@@ -75,3 +76,4 @@ clean:
rm -rf $(SYSDIR)/*
rm -rf $(CMDDIR)/*
rm -rf $(TESTDIR)/*
cd build && make clean

20
build/Makefile Normal file
View File

@@ -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

2
build/password Normal file
View File

@@ -0,0 +1,2 @@
ken:ken:ken:12
dmr:dmr:dmr:14

44
build/proto Normal file
View File

@@ -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
$

5
build/unixv0.simh Normal file
View File

@@ -0,0 +1,5 @@
set rb ena
att rb image.fs
load -S a.rim
show dev
dep pc 0100