nls-restore
[Top] [All Lists]

[nls-restore] progress on NLS/Augment restoration

To: nls-restore@chm.cim3.net
From: Jonathan Cheyer <jonathan@cheyer.biz>
Date: Sat, 29 Oct 2005 02:33:50 -0700
Message-id: <436341FE.5040109@cheyer.biz>
Hi all,    (01)

I realized it's been a few months since I've posted any info to this 
list. There's been plenty of good news, some of which CHM members 
already know (since I mentioned it in person at the previous meeting), 
and one piece which is new as of tonight!    (02)

Just a reminder that we have two tracks in this project: technical and 
legal. I'll give a summary of where nls-restore is at this point in time 
regarding the technical track:    (03)

* TOPS-20 Networking - About a month ago, I was able to get networking 
to work properly when using the klh10 emulator. This was thanks to much 
help from both Ken Harrenstien and Mark Crispin. This step was critical 
for a few reasons. First, it allows multiple users to login to the 
TOPS-20 system and hence multiple users can use Augment. Before this, 
only one user could use Augment at a time, by working from the TOPS-20 
"console". Second, network access is necessary for being able to use the 
Visual AugTerm (VAT) client. The TOPS-20 Networking task is considered done.    (04)

* Cloning Augment system - As of about two months ago, a snapshot of the 
entire TOPS-20 system that Doug Engelbart uses, has been cloned. This 
was thanks to lots of help from Raylene Pak. This includes standard 
TOPS-20 system files, the Augment system, Augment documentation, and 
lots of other files and programs that will eventually need to be 
inspected and possibly preserved. Special thanks goes to Doug for being 
kind enough to allow Raylene to copy the bits in the first place! 
(Doug's personal files were removed on the clone prior to the handoff, 
in order to respect his privacy.) I believe that Doug's system is the 
most recent (and quite possibly the only) Augment system available. The 
task of the initial cloning (and running the clone) of Augment is 
considered done. (However, a substantial amount of work will still be 
needed to make a package that would be easily usable by the general 
public, or even by a technical person.)    (05)

* Augment source code - As of about a month ago, I have located a lot of 
the source code for the Augment system. This is a snapshot of the source 
code that was taken from the bits that Raylene cloned from Doug's 
system. I don't have an exact date, but looking through a bunch of the 
source code, it appears to be dated around 1988 or so. Initial versions 
of some of the files date back to between 1972 and 1979 and come from 
the original NLS system. I have been looking through some of it (it is 
written in a language named "L10"). Possibly all of it is somewhere on 
the system, but I won't know that for sure until I learn how to rebuild 
Augment completely from scratch. I've got much more work to do on this task.    (06)

* NLS source code - As of a week ago, I spoke with Jeff Rulifson, who 
has a lot of source code (on paper) for the early NLS system (circa 
1968) which was used to run the 1968 demo 
(http://sloan.stanford.edu/MouseSite/1968Demo.html). I am working with 
him to see if he is willing to donate all of his artifacts to the CHM 
for preservation.  Assuming we can get access to everything, future work 
on this task involves scanning all information, converting it to usable 
digital form, and determining if there is any possibility of creating 
the environment necessary to run the code. I've got much more work to do 
on this task.    (07)

* Original AUGTERM source code - As of about two weeks ago, I have 
located what I believe to be the complete source code for the original 
AUGTERM program. This is probably  the most recent (and only known) 
version of the code. It supports the A1200 protocol (later known as 
VAT0), which is the same protocol that was used by Augment 1200 
terminals in the early 80s. AUGTERM runs on DOS machines and is a 
replacement for the Augment 1200 terminals. This version of code appears 
to have been written in 1987, but I am not sure when it was first 
written. The primary author was Dave Hopper. It is written in assembler 
code and requires a specific Assembler program called ESASM in order to 
generate the resulting binary file. The resulting binary file is an 8086 
.COM file that will run on a DOS machine. AUGTERM expects to send serial 
I/O over a COM port to the machine running Augment, and it does not 
support any networking through TCP/IP. It does support both a Mouse and 
a Chord (or Chorded) Keyset. The ESASM program itself is written in L10 
and runs within the Augment system. I got in touch with Dave and he 
confirmed that the code that I have looks to be complete. I have not yet 
tried using ESASM to assemble it, and I also have not yet tried to run 
the AUGTERM binary. More work to do on this task.    (08)

* Visual AugTerm (VAT) source code - As of about two weeks ago, I have 
located multiple versions of some amount of source code (but possibly 
not all) of the VAT program. This is a Smalltalk program written by Bob 
Czech to replace the original AUGTERM. It is written to be run in a 
commercial Smalltalk environment named VisualWorks 2.5.2 by Cincom (was 
ParcPlace-Digitalk) and runs on Windows and Solaris/Sparc. The VAT 
supports the original A1200 (VAT0) protocol, as well as a newer protocol 
named VAT1, which was developed by Bob Czech and Raylene Pak. It does 
support using a Mouse, but I don't believe it supports a Chord Keyset. 
VisualWorks does not use the familiar source code/binary file paradigm, 
but rather uses an Image/Changes paradigm. The Image is a snapshot of a 
running system with live object instances. The Changes file tracks all 
user/developer modifications to the base Image. Both object data and 
code can be changed on the fly right in the running system. I've located 
multiple copies of Images as well as multiple copies of Changes, and 
it's pretty hard to tell what is the same or different between all the 
copies. Some of the Changes files that I have appear to be corrupted or 
otherwise incomplete. I am not sure that I even have the complete set of 
Changes to somehow determine I have a complete set of source code. I do 
have a running system though and no compilation is necessary since the 
Image is the running system. The Smalltalk functions in the Changes file 
appear to be dated between 1993-1997. Copyright of VAT is owned by 
Bootstrap Institute (Doug). More work to do on this task.    (09)

* VisualWorks environment - Thanks to James Robertson from Cincom, I now 
have a full commercial version of the old VW 2.5.2 software on Windows. 
It includes the original visual.sou system sources files, which will 
hopefully help me when I am trying to do diffs on all of the various 
versions of source code so I can remove any non-Augment (system) related 
code from the process. I also have a copy of VisualWorks 7.3.1 (the 
current version) which offers free downloads under a non-commercal 
license. A non-commercial license is useful for the CHM, because it 
means it can legally use the software in the code preservation and 
museum demos. VW 7.3.1 is also available under Linux (happily for me) 
and has some additional tools for doing code diffs, so if I can figure 
out how to import the Augment code into VW 7.3.1 from VW 2.5.2 then it 
might help. Other possible future goals might include finding someone 
interesting in porting the code from VW to the Squeak environment (open 
source). More work to do in this task (learning enough Smalltalk, 
learning enough VW, etc., to do diffs on code and possible import into 
7.3.1).    (010)

* Modified VAT to connect to cloned Augment system - WORKS, as of 
tonight!  I have been able to determine which live object in the running 
VAT system contains the IP address of the Augment system to connect to, 
and I have modified it in my copy of VAT (running on a Windows laptop) 
to point to my own cloned Augment system (running on my personal Linux 
machine). So I now have a completely standalone, cloned system of VAT 
plus Augment. This verifies that the initial phase of the nls-restore 
project is complete! Now the real work begins...    (011)

Jonathan
 _________________________________________________________________
Message Archives: http://chm.cim3.net/forum/nls-restore/
Shared Files: http://chm.cim3.net/file/work/project/nls-restore/
Community Portal: http://www.computerhistory.org/  
To Post: mailto:nls-restore@chm.cim3.net
Community Wiki: http://chm.cim3.net/wiki/    (012)
<Prev in Thread] Current Thread [Next in Thread>