switch to original commands, alphabetize proto and Makefile

This commit is contained in:
phil
2019-10-29 00:00:55 -04:00
parent 917cde2693
commit 1a35c9146d
5 changed files with 228 additions and 184 deletions
+163 -120
View File
@@ -51,16 +51,20 @@ dist: all alt
cp alt/unixv0.simh $(BINARIES)/alt cp alt/unixv0.simh $(BINARIES)/alt
# Warm boot Unix kernel: boots into init and a login prompt # Warm boot Unix kernel: boots into init and a login prompt
a.out: SYS= $(SYSSRC)/sop.s $(SYSSRC)/s1.s $(SYSSRC)/s2.s \
$(AS) -f ptr -o a.out $(SYSSRC)/sop.s $(SYSSRC)/s[1-8].s $(SYSSRC)/s3.s $(SYSSRC)/s4.s $(SYSSRC)/s5.s \
$(AS) -n -f list -o a.lst $(SYSSRC)/sop.s $(SYSSRC)/s[1-8].s $(SYSSRC)/s6.s $(SYSSRC)/s7.s $(SYSSRC)/s8.s
a.out: $(SYS)
$(AS) -f ptr -o a.out $(SYSSRC)/sop.s $(SYS)
$(AS) -n -f list -o a.lst $(SYSSRC)/sop.s $(SYS)
# Alternative kernel: no dd, but . and .. # Alternative kernel: no dd, but . and ..
alt/a.out: ALTSYS= $(SYSSRC)/sop.s $(SYSSRC)/s1.s $(ALTSRC)/s2.s \
$(AS) -f ptr -o alt/a.out $(SYSSRC)/sop.s $(SYSSRC)/s1.s \ $(SYSSRC)/s3.s $(SYSSRC)/s4.s $(SYSSRC)/s5.s \
$(ALTSRC)/s2.s $(SYSSRC)/s[3-8].s $(SYSSRC)/s6.s $(SYSSRC)/s7.s $(SYSSRC)/s8.s
$(AS) -n -f list -o alt/a.lst $(SYSSRC)/sop.s $(SYSSRC)/s1.s \ alt/a.out: $(ALTSYS)
$(ALTSRC)/s2.s $(SYSSRC)/s[3-8].s $(AS) -f ptr -o alt/a.out $(ALTSYS)
$(AS) -n -f list -o alt/a.lst $(ALTSYS)
# Phil's bootstrap code # Phil's bootstrap code
boot.rim: $(SYSSRC)/sop.s $(OTHERSRC)/pbboot.s boot.rim: $(SYSSRC)/sop.s $(OTHERSRC)/pbboot.s
@@ -68,9 +72,10 @@ boot.rim: $(SYSSRC)/sop.s $(OTHERSRC)/pbboot.s
# Cold boot Unix kernel: attempts to build a minimal filesystem. # Cold boot Unix kernel: attempts to build a minimal filesystem.
# Don't use this one! # Don't use this one!
coldboot: COLDBOOT=$(SYS) $(SYSSRC)/s9.s
$(AS) -f rim -o boot.rim $(SYSSRC)/sop.s $(SYSSRC)/s[1-9].s coldboot.rim: $(COLDBOOT)
$(AS) -n -f list -o a.lst $(SYSSRC)/sop.s $(SYSSRC)/s[1-9].s $(AS) -f rim -o coldboot.rim $(COLDBOOT)
$(AS) -n -f list -o a.lst $(COLDBOOT)
# Filesystem image # Filesystem image
image.fs: cmd others image.fs: cmd others
@@ -92,22 +97,56 @@ dirs:
mkdir -p $(BINDIR) mkdir -p $(BINDIR)
# The commands that came from the original scans # The commands that came from the original scans
cmd: dirs $(BINDIR)/as $(BINDIR)/cat $(BINDIR)/check $(BINDIR)/chmod \ # PLEASE KEEP IN ALPHABETICAL ORDER!
$(BINDIR)/chown $(BINDIR)/chrm $(BINDIR)/cp $(BINDIR)/ds \ cmd: dirs \
$(BINDIR)/dskres $(BINDIR)/dsksav $(BINDIR)/ed $(BINDIR)/init \ $(BINDIR)/adm \
$(BINDIR)/db $(BINDIR)/nstat $(BINDIR)/tm $(BINDIR)/dsw $(BINDIR)/apr \ $(BINDIR)/apr \
$(BINDIR)/cas $(BINDIR)/rm $(BINDIR)/rn $(BINDIR)/pd $(BINDIR)/nm \ $(BINDIR)/as \
$(BINDIR)/roff $(BINDIR)/p $(BINDIR)/apr $(BINDIR)/salv $(BINDIR)/moo \ $(BINDIR)/cas \
$(BINDIR)/nsh $(BINDIR)/nls $(BINDIR)/nstat $(BINDIR)/un $(BINDIR)/adm $(BINDIR)/cat \
$(BINDIR)/check \
$(BINDIR)/chmod \
$(BINDIR)/chown \
$(BINDIR)/chrm \
$(BINDIR)/cp \
$(BINDIR)/db \
$(BINDIR)/ds \
$(BINDIR)/dskres \
$(BINDIR)/dsksav \
$(BINDIR)/dsw \
$(BINDIR)/ed \
$(BINDIR)/init \
$(BINDIR)/ln \
$(BINDIR)/ls \
$(BINDIR)/moo \
$(BINDIR)/nm \
$(BINDIR)/p \
$(BINDIR)/rm \
$(BINDIR)/rn \
$(BINDIR)/roff \
$(BINDIR)/salv \
$(BINDIR)/sh \
$(BINDIR)/stat \
$(BINDIR)/tm \
$(BINDIR)/ttt \
$(BINDIR)/un
# Alternate commands: no dd, but . and .. # Alternate commands: no dd, but . and ..
altcmd: dirs $(BINDIR)/as $(BINDIR)/cat $(BINDIR)/check $(BINDIR)/chmod \ altcmd: dirs cmd \
$(BINDIR)/chown $(BINDIR)/altchrm $(BINDIR)/cp $(BINDIR)/ds \ $(BINDIR)/altchrm $(BINDIR)/cp $(BINDIR)/altinit $(BINDIR)/altmkdir
$(BINDIR)/ed $(BINDIR)/altinit $(BINDIR)/altmkdir
$(BINDIR)/adm: $(CMDSRC)/adm.s
$(AS) $(ASARGS) -o $(BINDIR)/adm $(CMDSRC)/adm.s
$(BINDIR)/apr: $(CMDSRC)/apr.s
$(AS) $(ASARGS) -o $(BINDIR)/apr $(CMDSRC)/apr.s
$(BINDIR)/as: $(CMDSRC)/as.s $(BINDIR)/as: $(CMDSRC)/as.s
$(AS) $(ASARGS) -o $(BINDIR)/as $(CMDSRC)/as.s $(AS) $(ASARGS) -o $(BINDIR)/as $(CMDSRC)/as.s
$(BINDIR)/bc: $(CMDSRC)/bc.s
$(AS) $(ASARGS) -o $(BINDIR)/bc $(CMDSRC)/bc.s
$(BINDIR)/cat: $(CMDSRC)/cat.s $(BINDIR)/cat: $(CMDSRC)/cat.s
$(AS) $(ASARGS) -o $(BINDIR)/cat $(CMDSRC)/cat.s $(AS) $(ASARGS) -o $(BINDIR)/cat $(CMDSRC)/cat.s
@@ -126,110 +165,116 @@ $(BINDIR)/chrm: $(CMDSRC)/chrm.s
$(BINDIR)/altchrm: $(ALTSRC)/chrm.s $(BINDIR)/altchrm: $(ALTSRC)/chrm.s
$(AS) $(ASARGS) -o $(BINDIR)/altchrm $(ALTSRC)/chrm.s $(AS) $(ASARGS) -o $(BINDIR)/altchrm $(ALTSRC)/chrm.s
$(BINDIR)/cas: $(CMDSRC)/cas.s
$(AS) $(ASARGS) -o $(BINDIR)/cas $(CMDSRC)/cas.s
$(BINDIR)/cp: $(CMDSRC)/cp.s $(BINDIR)/cp: $(CMDSRC)/cp.s
$(AS) $(ASARGS) -o $(BINDIR)/cp $(CMDSRC)/cp.s $(AS) $(ASARGS) -o $(BINDIR)/cp $(CMDSRC)/cp.s
$(BINDIR)/ds: $(CMDSRC)/ds.s
$(AS) $(ASARGS) -o $(BINDIR)/ds $(CMDSRC)/ds.s
$(BINDIR)/dskres: $(CMDSRC)/dskres.s $(CMDSRC)/dskio.s $(SYSSRC)/sop.s
$(AS) $(ASARGS) -o $(BINDIR)/dskres $(CMDSRC)/dskres.s $(CMDSRC)/dskio.s $(SYSSRC)/sop.s
$(BINDIR)/dsksav: $(CMDSRC)/dsksav.s $(CMDSRC)/dskio.s $(SYSSRC)/sop.s
$(AS) $(ASARGS) -o $(BINDIR)/dsksav $(CMDSRC)/dsksav.s $(CMDSRC)/dskio.s $(SYSSRC)/sop.s
$(BINDIR)/ed: $(CMDSRC)/ed1.s $(CMDSRC)/ed2.s
$(AS) $(ASARGS) -o $(BINDIR)/ed $(CMDSRC)/ed1.s $(CMDSRC)/ed2.s
$(BINDIR)/init: $(CMDSRC)/init.s
$(AS) $(ASARGS) -o $(BINDIR)/init $(CMDSRC)/init.s
$(BINDIR)/db: $(CMDSRC)/db.s $(BINDIR)/db: $(CMDSRC)/db.s
$(AS) $(ASARGS) -o $(BINDIR)/db $(CMDSRC)/db.s $(AS) $(ASARGS) -o $(BINDIR)/db $(CMDSRC)/db.s
# -- new stat from the scans
$(BINDIR)/nstat: $(CMDSRC)/stat.s
$(AS) $(ASARGS) -o $(BINDIR)/nstat $(CMDSRC)/stat.s
$(BINDIR)/tm: $(CMDSRC)/tm.s
$(AS) $(ASARGS) -o $(BINDIR)/tm $(CMDSRC)/tm.s
$(BINDIR)/cas: $(CMDSRC)/cas.s
$(AS) $(ASARGS) -o $(BINDIR)/cas $(CMDSRC)/cas.s
# -- compile errors
$(BINDIR)/dmabs: $(CMDSRC)/dmabs.s $(BINDIR)/dmabs: $(CMDSRC)/dmabs.s
$(AS) $(ASARGS) -o $(BINDIR)/dmabs $(CMDSRC)/dmabs.s $(AS) $(ASARGS) -o $(BINDIR)/dmabs $(CMDSRC)/dmabs.s
# -- new bc from the scans $(BINDIR)/ds: $(CMDSRC)/ds.s
$(BINDIR)/nbc: $(CMDSRC)/bc.s $(AS) $(ASARGS) -o $(BINDIR)/ds $(CMDSRC)/ds.s
$(AS) $(ASARGS) -o $(BINDIR)/nbc $(CMDSRC)/bc.s
DSKRES=$(CMDSRC)/dskres.s $(CMDSRC)/dskio.s $(SYSSRC)/sop.s
$(BINDIR)/dskres: $(DSKRES)
$(AS) $(ASARGS) -o $(BINDIR)/dskres $(DSKRES)
DSKSAV=$(CMDSRC)/dsksav.s $(CMDSRC)/dskio.s $(SYSSRC)/sop.s
$(BINDIR)/dsksav: $(DSKSAV)
$(AS) $(ASARGS) -o $(BINDIR)/dsksav $(DSKSAV)
$(BINDIR)/dsw: $(CMDSRC)/dsw.s $(BINDIR)/dsw: $(CMDSRC)/dsw.s
$(AS) $(ASARGS) -o $(BINDIR)/dsw $(CMDSRC)/dsw.s $(AS) $(ASARGS) -o $(BINDIR)/dsw $(CMDSRC)/dsw.s
$(BINDIR)/apr: $(CMDSRC)/apr.s ED=$(CMDSRC)/ed1.s $(CMDSRC)/ed2.s
$(AS) $(ASARGS) -o $(BINDIR)/apr $(CMDSRC)/apr.s $(BINDIR)/ed: $(ED)
$(AS) $(ASARGS) -o $(BINDIR)/ed $(ED)
# -- compile errors $(BINDIR)/init: $(CMDSRC)/init.s
$(BINDIR)/adm: $(CMDSRC)/adm.s $(AS) $(ASARGS) -o $(BINDIR)/init $(CMDSRC)/init.s
$(AS) $(ASARGS) -o $(BINDIR)/adm $(CMDSRC)/adm.s
# -- new sh from the scans $(BINDIR)/ln: $(CMDSRC)/ln.s
$(BINDIR)/nsh: $(CMDSRC)/sh.s $(AS) $(ASARGS) -o $(BINDIR)/ln $(CMDSRC)/ln.s
$(AS) $(ASARGS) -o $(BINDIR)/nsh $(CMDSRC)/sh.s
$(BINDIR)/rn: $(CMDSRC)/rn.s $(BINDIR)/ls: $(CMDSRC)/ls.s
$(AS) $(ASARGS) -o $(BINDIR)/rn $(CMDSRC)/rn.s $(AS) $(ASARGS) -o $(BINDIR)/ls $(CMDSRC)/ls.s
$(BINDIR)/rm: $(CMDSRC)/rm.s
$(AS) $(ASARGS) -o $(BINDIR)/rm $(CMDSRC)/rm.s
$(BINDIR)/pd: $(CMDSRC)/pd.s
$(AS) $(ASARGS) -o $(BINDIR)/pd $(CMDSRC)/pd.s
# -- new ls from the scans
$(BINDIR)/nls: $(CMDSRC)/ls.s
$(AS) $(ASARGS) -o $(BINDIR)/nls $(CMDSRC)/ls.s
$(BINDIR)/nm: $(CMDSRC)/nm.s
$(AS) $(ASARGS) -o $(BINDIR)/nm $(CMDSRC)/nm.s
$(BINDIR)/roff: $(CMDSRC)/roff.s
$(AS) $(ASARGS) -o $(BINDIR)/roff $(CMDSRC)/roff.s
$(BINDIR)/p: $(CMDSRC)/p1.s $(CMDSRC)/p2.s $(CMDSRC)/p3.s $(CMDSRC)/p4.s $(CMDSRC)/p5.s
$(AS) $(ASARGS) -o $(BINDIR)/p $(CMDSRC)/p1.s $(CMDSRC)/p2.s $(CMDSRC)/p3.s $(CMDSRC)/p4.s $(CMDSRC)/p5.s
$(BINDIR)/salv: $(CMDSRC)/salv.s
$(AS) $(ASARGS) -o $(BINDIR)/salv $(CMDSRC)/salv.s
$(BINDIR)/moo: $(CMDSRC)/moo.s $(BINDIR)/moo: $(CMDSRC)/moo.s
$(AS) $(ASARGS) -o $(BINDIR)/moo $(CMDSRC)/moo.s $(AS) $(ASARGS) -o $(BINDIR)/moo $(CMDSRC)/moo.s
$(BINDIR)/nm: $(CMDSRC)/nm.s
$(AS) $(ASARGS) -o $(BINDIR)/nm $(CMDSRC)/nm.s
P=$(CMDSRC)/p1.s $(CMDSRC)/p2.s $(CMDSRC)/p3.s $(CMDSRC)/p4.s $(CMDSRC)/p5.s
$(BINDIR)/p: $(P)
$(AS) $(ASARGS) -o $(BINDIR)/p $(P)
$(BINDIR)/rm: $(CMDSRC)/rm.s
$(AS) $(ASARGS) -o $(BINDIR)/rm $(CMDSRC)/rm.s
$(BINDIR)/rn: $(CMDSRC)/rn.s
$(AS) $(ASARGS) -o $(BINDIR)/rn $(CMDSRC)/rn.s
$(BINDIR)/pd: $(CMDSRC)/pd.s
$(AS) $(ASARGS) -o $(BINDIR)/pd $(CMDSRC)/pd.s
$(BINDIR)/roff: $(CMDSRC)/roff.s
$(AS) $(ASARGS) -o $(BINDIR)/roff $(CMDSRC)/roff.s
$(BINDIR)/salv: $(CMDSRC)/salv.s
$(AS) $(ASARGS) -o $(BINDIR)/salv $(CMDSRC)/salv.s
$(BINDIR)/sh: $(CMDSRC)/sh.s
$(AS) $(ASARGS) -o $(BINDIR)/sh $(CMDSRC)/sh.s
$(BINDIR)/stat: $(CMDSRC)/stat.s
$(AS) $(ASARGS) -o $(BINDIR)/stat $(CMDSRC)/stat.s
$(BINDIR)/tm: $(CMDSRC)/tm.s
$(AS) $(ASARGS) -o $(BINDIR)/tm $(CMDSRC)/tm.s
TTT=$(CMDSRC)/ttt1.s $(CMDSRC)/ttt2.s
$(BINDIR)/ttt: $(TTT)
$(AS) $(ASARGS) -o $(BINDIR)/ttt $(TTT)
$(BINDIR)/un: $(CMDSRC)/un.s $(BINDIR)/un: $(CMDSRC)/un.s
$(AS) $(ASARGS) -o $(BINDIR)/un $(CMDSRC)/un.s $(AS) $(ASARGS) -o $(BINDIR)/un $(CMDSRC)/un.s
# Alternative init: no dd directory ################
$(BINDIR)/altinit: $(ALTSRC)/init.s
$(AS) $(ASARGS) -o $(BINDIR)/altinit $(ALTSRC)/init.s
$(BINDIR)/altmkdir: $(ALTSRC)/wktmkdir.s
$(AS) $(ASARGS) -o $(BINDIR)/altmkdir $(ALTSRC)/wktmkdir.s
# The commands that did not come from the scans # The commands that did not come from the scans
others: dirs $(BINDIR)/sh $(BINDIR)/wktcat $(BINDIR)/wktcp $(BINDIR)/date \
$(BINDIR)/ln $(BINDIR)/ls $(BINDIR)/mv $(BINDIR)/stat $(BINDIR)/od \
$(BINDIR)/bc $(BINDIR)/lsd $(BINDIR)/lsl
# Alternative other commands: no dd, but . and .. others: dirs \
altothers: dirs $(BINDIR)/sh $(BINDIR)/wktcat $(BINDIR)/wktcp $(BINDIR)/date \ $(BINDIR)/b \
$(BINDIR)/ln $(BINDIR)/altls $(BINDIR)/mv $(BINDIR)/stat $(BINDIR)/od $(BINDIR)/date \
$(BINDIR)/mv \
$(BINDIR)/od
# B compiler
$(BINDIR)/b: $(CMDSRC)/bl.s $(CMDSRC)/bi.s ../tools/b.c $(OTHERSRC)/b.b
$(CC) $(CCARGS) -o b ../tools/b.c
./b $(OTHERSRC)/b.b b.s
$(AS) $(ASARGS) -o $(BINDIR)/b $(CMDSRC)/bl.s b.s $(CMDSRC)/bi.s
rm b b.s
$(BINDIR)/sh: $(OTHERSRC)/pbsh.s $(BINDIR)/date: $(OTHERSRC)/wktdate.s
$(AS) $(ASARGS) -o $(BINDIR)/sh $(OTHERSRC)/pbsh.s $(AS) $(ASARGS) -o $(BINDIR)/date $(OTHERSRC)/wktdate.s
$(BINDIR)/mv: $(OTHERSRC)/wktmv.s
$(AS) $(ASARGS) -o $(BINDIR)/mv $(OTHERSRC)/wktmv.s
$(BINDIR)/od: $(OTHERSRC)/wktod.s
$(AS) $(ASARGS) -o $(BINDIR)/od $(OTHERSRC)/wktod.s
################
# replacement programs (no longer in build)
$(BINDIR)/pbsh: $(OTHERSRC)/pbsh.s
$(AS) $(ASARGS) -o $(BINDIR)/pbsh $(OTHERSRC)/pbsh.s
$(BINDIR)/wktcat: $(OTHERSRC)/wktcat.s $(BINDIR)/wktcat: $(OTHERSRC)/wktcat.s
$(AS) $(ASARGS) -o $(BINDIR)/wktcat $(OTHERSRC)/wktcat.s $(AS) $(ASARGS) -o $(BINDIR)/wktcat $(OTHERSRC)/wktcat.s
@@ -237,39 +282,37 @@ $(BINDIR)/wktcat: $(OTHERSRC)/wktcat.s
$(BINDIR)/wktcp: $(OTHERSRC)/wktcp.s $(BINDIR)/wktcp: $(OTHERSRC)/wktcp.s
$(AS) $(ASARGS) -o $(BINDIR)/wktcp $(OTHERSRC)/wktcp.s $(AS) $(ASARGS) -o $(BINDIR)/wktcp $(OTHERSRC)/wktcp.s
$(BINDIR)/date: $(OTHERSRC)/wktdate.s $(BINDIR)/wktln: $(OTHERSRC)/wktln.s
$(AS) $(ASARGS) -o $(BINDIR)/date $(OTHERSRC)/wktdate.s $(AS) $(ASARGS) -o $(BINDIR)/wktln $(OTHERSRC)/wktln.s
$(BINDIR)/ln: $(OTHERSRC)/wktln.s $(BINDIR)/wktls: $(OTHERSRC)/wktls.s
$(AS) $(ASARGS) -o $(BINDIR)/ln $(OTHERSRC)/wktln.s $(AS) $(ASARGS) -o $(BINDIR)/wktls $(OTHERSRC)/wktls.s
$(BINDIR)/ls: $(OTHERSRC)/wktls.s
$(AS) $(ASARGS) -o $(BINDIR)/ls $(OTHERSRC)/wktls.s
$(BINDIR)/lsd: $(OTHERSRC)/pblsd.s $(BINDIR)/lsd: $(OTHERSRC)/pblsd.s
$(AS) $(ASARGS) -o $(BINDIR)/lsd $(OTHERSRC)/pblsd.s $(AS) $(ASARGS) -o $(BINDIR)/lsd $(OTHERSRC)/pblsd.s
$(BINDIR)/altls: $(ALTSRC)/wktls.s
$(AS) $(ASARGS) -o $(BINDIR)/altls $(ALTSRC)/wktls.s
$(BINDIR)/lsl: $(OTHERSRC)/pblsd.s $(BINDIR)/lsl: $(OTHERSRC)/pblsd.s
$(AS) $(ASARGS) -o $(BINDIR)/lsl $(OTHERSRC)/pblsd.s $(AS) $(ASARGS) -o $(BINDIR)/lsl $(OTHERSRC)/pblsd.s
$(BINDIR)/mv: $(OTHERSRC)/wktmv.s $(BINDIR)/wktstat: $(OTHERSRC)/wktstat.s
$(AS) $(ASARGS) -o $(BINDIR)/mv $(OTHERSRC)/wktmv.s $(AS) $(ASARGS) -o $(BINDIR)/wktstat $(OTHERSRC)/wktstat.s
$(BINDIR)/stat: $(OTHERSRC)/wktstat.s ################
$(AS) $(ASARGS) -o $(BINDIR)/stat $(OTHERSRC)/wktstat.s # Alternative init: no dd directory
$(BINDIR)/altinit: $(ALTSRC)/init.s
$(AS) $(ASARGS) -o $(BINDIR)/altinit $(ALTSRC)/init.s
$(BINDIR)/od: $(OTHERSRC)/wktod.s $(BINDIR)/altmkdir: $(ALTSRC)/wktmkdir.s
$(AS) $(ASARGS) -o $(BINDIR)/od $(OTHERSRC)/wktod.s $(AS) $(ASARGS) -o $(BINDIR)/altmkdir $(ALTSRC)/wktmkdir.s
# B compiler # Alternative other commands: no dd, but . and ..
$(BINDIR)/bc: $(CMDSRC)/bl.s $(CMDSRC)/bi.s ../tools/b.c $(OTHERSRC)/b.b altothers: dirs cmd $(BINDIR)/wktcat $(BINDIR)/wktcp $(BINDIR)/date \
$(CC) $(CCARGS) -o b ../tools/b.c $(BINDIR)/altls $(BINDIR)/mv $(BINDIR)/od
./b $(OTHERSRC)/b.b b.s
$(AS) $(ASARGS) -o $(BINDIR)/bc $(CMDSRC)/bl.s b.s $(CMDSRC)/bi.s $(BINDIR)/altls: $(ALTSRC)/wktls.s
rm b b.s $(AS) $(ASARGS) -o $(BINDIR)/altls $(ALTSRC)/wktls.s
################################################################
tests: tests:
mkdir -p $(TESTDIR) mkdir -p $(TESTDIR)
+5 -4
View File
@@ -9,7 +9,8 @@
# link l---- inumber # link l---- inumber
# #
# The top directory's name is ignored # The top directory's name is ignored
# numbers are in decimal (-1 for inode means last) # inumbers are in decimal (-1 means previous file)
# uids are in octal
# Contents of each directory ends with a $ on a line by itself # Contents of each directory ends with a $ on a line by itself
# Format was inspired by 6th Edition mkfs # Format was inspired by 6th Edition mkfs
# #
@@ -41,10 +42,10 @@
sh frwr- -1 bin/sh sh frwr- -1 bin/sh
stat frwr- -1 bin/stat stat frwr- -1 bin/stat
$ $
ken drwr- 012 ken drwr- 12
system l---- 3 system l---- 3
hello frwr- 012 fs/hello hello frwr- 12 fs/hello
$ $
dmr drwr- 014 dmr drwr- 14
system l---- 3 system l---- 3
$ $
+7 -7
View File
@@ -1,8 +1,8 @@
chrm ken ops.s rm op.s
ln dmr ops.s ops.s ln dmr op.s
as sop.s ops.s maksys.s as sop.s op.s maksys.s
mv a.out maksys rn a.out maksys
as sop.s ops.s trysys.s as sop.s op.s trysys.s
mv a.out trysys rn a.out trysys
chrm ken ops.s rm op.s
as sop.s s1.s s2.s s3.s s4.s s5.s s6.s s7.s s8.s as sop.s s1.s s2.s s3.s s4.s s5.s s6.s s7.s s8.s
+43 -49
View File
@@ -7,7 +7,8 @@
# link l---- inumber # link l---- inumber
# #
# The top directory's name is ignored # The top directory's name is ignored
# numbers are in decimal (-1 for inode means last) # inumbers are in decimal (-1 means previous file)
# uids are in octal
# Contents of each directory ends with a $ on a line by itself # Contents of each directory ends with a $ on a line by itself
# Format was inspired by 6th Edition mkfs # Format was inspired by 6th Edition mkfs
# #
@@ -21,9 +22,11 @@ dd drwr- -1 4
display irwr- -1 12 display irwr- -1 12
pptout irwr- -1 13 pptout irwr- -1 13
adm frwr- -1 bin/adm adm frwr- -1 bin/adm
password frw-- -1 fs/password
adm frwr- -1 bin/adm
apr frwr- -1 bin/apr apr frwr- -1 bin/apr
as frwr- -1 bin/as as frwr- -1 bin/as
bc frwr- -1 bin/bc b frwr- -1 bin/b
cas frwr- -1 bin/cas cas frwr- -1 bin/cas
cat frwr- -1 bin/cat cat frwr- -1 bin/cat
check frwr- -1 bin/check check frwr- -1 bin/check
@@ -40,68 +43,59 @@ dd drwr- -1 4
ed frwr- -1 bin/ed ed frwr- -1 bin/ed
init frwr- -1 bin/init init frwr- -1 bin/init
ln frwr- -1 bin/ln ln frwr- -1 bin/ln
link l---- -1
ls frwr- -1 bin/ls ls frwr- -1 bin/ls
lsd frwr- -1 bin/lsd list l---- -1
lsl frwr- -1 bin/lsd
moo frwr- -1 bin/moo moo frwr- -1 bin/moo
mv frwr- -1 bin/mv
nm frwr- -1 bin/nm nm frwr- -1 bin/nm
od frwr- -1 bin/od od frwr- -1 bin/od
p frwr- -1 bin/p p frwr- -1 bin/p
pd frwr- -1 bin/pd
mv frwr- -1 bin/mv
password frw-- -1 fs/password
roff frwr- -1 bin/roff
rn frwr- -1 bin/rn
rm frwr- -1 bin/rm rm frwr- -1 bin/rm
rn frwr- -1 bin/rn
roff frwr- -1 bin/roff
salv frwr- -1 bin/salv salv frwr- -1 bin/salv
sh frwr- -1 bin/sh sh frwr- -1 bin/sh
stat frwr- -1 bin/stat stat frwr- -1 bin/stat
tm frwr- -1 bin/tm tm frwr- -1 bin/tm
ttt frwr- -1 bin/ttt
dttt l---- -1
un frwr- -1 bin/un un frwr- -1 bin/un
# new versions, from the scans
nsh frwr- -1 bin/nsh
nls frwr- -1 bin/nls
list l---- -1
# nbc frwr- -1 bin/nbc
nstat frwr- -1 bin/nstat
$ $
ken drwr- 012 ken drwr- 12
system l---- 3 system l---- 3
sop.s frwr- 012 ../src/sys/sop.s sop.s frwr- 12 ../src/sys/sop.s
s1.s frwr- 012 ../src/sys/s1.s s1.s frwr- 12 ../src/sys/s1.s
s2.s frwr- 012 ../src/sys/s2.s s2.s frwr- 12 ../src/sys/s2.s
s3.s frwr- 012 ../src/sys/s3.s s3.s frwr- 12 ../src/sys/s3.s
s4.s frwr- 012 ../src/sys/s4.s s4.s frwr- 12 ../src/sys/s4.s
s5.s frwr- 012 ../src/sys/s5.s s5.s frwr- 12 ../src/sys/s5.s
s6.s frwr- 012 ../src/sys/s6.s s6.s frwr- 12 ../src/sys/s6.s
s7.s frwr- 012 ../src/sys/s7.s s7.s frwr- 12 ../src/sys/s7.s
s8.s frwr- 012 ../src/sys/s8.s s8.s frwr- 12 ../src/sys/s8.s
maksys.s frwr- 012 ../src/sys/maksys.s maksys.s frwr- 12 ../src/sys/maksys.s
trysys.s frwr- 012 ../src/sys/trysys.s trysys.s frwr- 12 ../src/sys/trysys.s
sys.rc frwr- 012 fs/sys.rc sys.rc frwr- 12 fs/sys.rc
$ $
dmr drwr- 014 dmr drwr- 14
system l---- 3 system l---- 3
as.s frwr- 014 ../src/cmd/as.s as.s frwr- 14 ../src/cmd/as.s
b_readme frwr- 014 fs/b_readme op.s frwr- 14 ../src/cmd/op.s
bi.s frwr- 014 ../src/cmd/bi.s b_readme frwr- 14 fs/b_readme
bl.s frwr- 014 ../src/cmd/bl.s bi.s frwr- 14 ../src/cmd/bi.s
db.s frwr- 014 ../src/cmd/db.s bl.s frwr- 14 ../src/cmd/bl.s
hello.b frwr- 014 ../src/other/hello.b db.s frwr- 14 ../src/cmd/db.s
ops.s frwr- 014 ../src/other/ops.s hello.b frwr- 14 ../src/other/hello.b
b.b frwr- 14 ../src/other/b.b
$ $
doug drwr- 015 doug drwr- 15
system l---- 3 system l---- 3
t1.s frwr- 015 ../src/cmd/t1.s t1.s frwr- 15 ../src/cmd/t1.s
t2.s frwr- 015 ../src/cmd/t2.s t2.s frwr- 15 ../src/cmd/t2.s
t3.s frwr- 015 ../src/cmd/t3.s t3.s frwr- 15 ../src/cmd/t3.s
t4.s frwr- 015 ../src/cmd/t4.s t4.s frwr- 15 ../src/cmd/t4.s
t5.s frwr- 015 ../src/cmd/t5.s t5.s frwr- 15 ../src/cmd/t5.s
t6.s frwr- 015 ../src/cmd/t6.s t6.s frwr- 15 ../src/cmd/t6.s
t7.s frwr- 015 ../src/cmd/t7.s t7.s frwr- 15 ../src/cmd/t7.s
t8.s frwr- 015 ../src/cmd/t8.s t8.s frwr- 15 ../src/cmd/t8.s
$ $
+9 -3
View File
@@ -513,6 +513,12 @@ sub parse_perms {
return ( $filetype, $perms ); return ( $filetype, $perms );
} }
sub uid {
my $uid = shift;
return -1 if ($uid eq '-1');
return oct($uid);
}
# Open the named proto file and parse it # Open the named proto file and parse it
sub parse_proto_file { sub parse_proto_file {
my $file = shift; my $file = shift;
@@ -543,17 +549,17 @@ sub parse_proto_file {
if ( $type eq I_DIRECTORY ) { if ( $type eq I_DIRECTORY ) {
my ( $name, $permstr, $uid, $inum ) = @words; my ( $name, $permstr, $uid, $inum ) = @words;
make_dir( $name, $perms, $uid, $inum ); make_dir( $name, $perms, uid($uid), $inum );
next; next;
} }
if ( $type eq I_FILE ) { if ( $type eq I_FILE ) {
my ( $name, $permstr, $uid, $extfile, $inum ) = @words; my ( $name, $permstr, $uid, $extfile, $inum ) = @words;
add_file( $name, $perms, $uid, $extfile, $inum ); add_file( $name, $perms, uid($uid), $extfile, $inum );
next; next;
} }
if ( $type eq I_SPECIAL ) { if ( $type eq I_SPECIAL ) {
my ( $name, $permstr, $uid, $inum ) = @words; my ( $name, $permstr, $uid, $inum ) = @words;
add_special( $name, $perms, $uid, $inum ); add_special( $name, $perms, uid($uid), $inum );
next; next;
} }
if ( $type eq I_LINK ) { if ( $type eq I_LINK ) {