Hi folks, sharing another project that I've been tinkering on for a little bit since
I like having a lot of irons in the fire:
https://gitlab.com/segaloco/v2src
After the link is a repository which over time will be accumulating the results of
disassembly and analysis of files found in the s2-bits.tar.gz file in the archive.
Details of my process are contained in the repository's readme. The short of it is
I'm disassembling the binaries one by one, and where possible am comparing them with
known sources to massage these into a pretty close restoration of the original sources.
A few discoveries I've made in the process thus far:
- These binaries appear to represent a version between the first and second editions.
The binaries themselves are a mix of "naked" binaries as well as V1 and V2 a.out
formats. Where it matters, things are much closer in character to V2 than V1.
- All section 1 content that would be gone by V2 is removed here. Curiously,
mount(1), type(1), and umount(1) which are in both V1 and V2 are absent from the s2-bits.
- The sources marked "V2" in the UNIX source tree may be a bit closer in
character to V3. Notable examples are that, while string references to /etc/uids remain,
all data references have been updated to /etc/passwd, and several mathematical operations
in the disassembled binaries map to KE-11 Extended Arithemtic Element registers where in
the sources labeled "V2" in the tree have instead shifted to doing these
calculations differently, presumably as these sources target the 11/45, not the 11/20.
Additionally, the cat.s in "V2" on the tree contains the '-' stdin
option, which was first documented in V3. The most likely story is that they're
somewhere between, just like the s2-bits are between V1 and V2, but all of these observed
differences thus far have aligned the sources with their descriptions in the third edition
manual.
Anywho, as usual, if anyone spots anything amiss or that could be done better, happy to
accept contributions, or fork it and tinker away. Also, if anyone has already done this,
speak up and tell me now so I don't double up on something so involved =P
- Matt G.