diff --git a/Makefile b/Makefile index d6837d66..42ecc23c 100644 --- a/Makefile +++ b/Makefile @@ -34,7 +34,7 @@ DOC = info _info_ sysdoc sysnet syshst kshack _teco_ emacs emacs1 c kcc \ aplogo _klfe_ pdp11 chsncp cbf rug bawden llogo BIN = sys2 emacs _teco_ lisp liblsp alan inquir sail comlap c decsys \ graphs draw datdrw fonts fonts1 fonts2 games macsym maint imlac \ - _www_ hqm gt40 llogo + _www_ hqm gt40 llogo bawden MINSRC = midas system $(DDT) $(SALV) $(KSFEDR) $(DUMP) # These are not included on the tape. diff --git a/bin/bawden/uptime.data b/bin/bawden/uptime.data new file mode 100755 index 00000000..1d594f53 Binary files /dev/null and b/bin/bawden/uptime.data differ diff --git a/build/misc.tcl b/build/misc.tcl index 37679347..64fc898b 100644 --- a/build/misc.tcl +++ b/build/misc.tcl @@ -95,6 +95,9 @@ expect ":KILL" respond "*" ":midas sys1;ts dir_bawden;dir^k\r" expect ":KILL" +respond "*" ":midas bawden;_uptime\r" +expect ":KILL" + respond "*" ":midas sysbin;_sysnet;echo\r" expect ":KILL" respond "*" ":link device; chaos echo, sysbin; echo bin\r" diff --git a/doc/programs.md b/doc/programs.md index ecca9117..561fc871 100644 --- a/doc/programs.md +++ b/doc/programs.md @@ -274,6 +274,7 @@ - UNTALK, split-screen comm-link program. - UP/DOWN, check if host is online. - UPTIME, Chaosnet uptime server. +- UPTIME, record ITS uptimes. - URUG, GT40 debugger. - USQ/TYPESQ, unsqueeze/uncram or type a file. - VERSA/SPOOLR, Versatec/Gould printer spooler. diff --git a/src/bawden/uptime.1 b/src/bawden/uptime.1 new file mode 100644 index 00000000..bba8d181 --- /dev/null +++ b/src/bawden/uptime.1 @@ -0,0 +1,65 @@ +;Reconstructed from disassembly of BAWDEN; UPTIME BIN dated 1986-06-22. + +a=1 +time=2 +date=3 + +chdski=10 +chmfdi=11 + +upname==0 +update==1 +uptime==2 +uplen==3 + +dbpage==1 +dbaddr=dbpage_10. + +quit=.logout 1, +slose=.lose %lssys +flose=.lose %lsfil + +go: .call [ setz + sixbit /open/ + [.bii,,chdski] + dbdev + dbfn1 + dbfn2 + setz dbdir ] + flose + .call [ setz + sixbit /corblk/ + movei %cbndw + movei %jself + movei dbpage + 601000,,chdski ] + slose + .call [ setz + sixbit /dskupd/ + 601000,,chdski ] + slose + .close chdski, + .rdatim time, + movei a,dbaddr +loop: skipn upname(a) + quit + .call [ setz + sixbit /open/ + [.bii,,chmfdi] + upname(a) + [sixbit /m.f.d./] + setz [sixbit /(file)/] ] + jrst next + movem time,uptime(a) + movem date,update(a) +next: addi a,uplen + jrst loop + +dbdev: sixbit /dsk/ +dbdir: sixbit /bawden/ +dbfn1: sixbit /uptime/ +dbfn2: sixbit /data/ + +cnstnt: constants + +end diff --git a/src/dragon/hourly.uptime b/src/dragon/hourly.uptime new file mode 120000 index 00000000..d2cd2ffa --- /dev/null +++ b/src/dragon/hourly.uptime @@ -0,0 +1 @@ +bawden/uptime.bin \ No newline at end of file