Date: Fri, 17 Aug 90 14:01:58 PDT
From: John Coolidge:PARC:Xerox
Subject: Cirio Notebook
To: Theimer, Spreitzer
Cc: coolidge
Here's my leaving notes about Cirio and CCirio, and my forwarding address.
--John
Forwarding address:
Email: coolidge@cs.uiuc.edu
Paper mail:
John L. Coolidge
Department of Computer Science
University of Illinois, Urbana-Champaign
1304 W. Springfield Ave.
Urbana, IL 61801
(both the DCS line and the UIUC line can probably be omitted).

Phone: Work: (217)333-7937 Home: (217)355-0665.
Cirio:
Volume translation is done in CirioDeltaFace<machine>Impl.GetOurPrefixForUnixPrefix. New mappings should be easy to add.

Comments of the form:
FIX: do foo

are my notes to myself. They can probably be removed or used as a guide to cleanups. They usually don't actually indicate that the code is broken but are rather pointers to code that's ugly or bad and should be cleaned up.August 17, 1990 1:49:28 pm PDT
CCirio:
The files are stored in /net/gharlane/cree/coolidge/ccirio. Mike Hopcroft's original code is in [Ivy]<hopcroft>newccirio> (and bits in other directories under [Ivy]<hopcroft>.

The code that breaks is in CCirioDriver.CInterp. The commented out line which says:

IO.PutF[outStream,"Frame:\n%g\n",IO.rope[CedarCode.ShowNode[frame,3,32,cc]]];

is the line that fails with an attempt to display a NIL type. The line which says:

IO.PutF[outStream,"ans = %g\n",IO.rope[CedarCode.ShowNode[node,3,32,cc]]];

is the line which responds "ans = node?" if given the name of a valid variable in the c code being debugged.

To use CCirio: follow the (cryptic) instructions in the DF to get it loaded. Basically, you need to load the OneCasabaParser support, then run lexerpackage,
then run ciriobody, then install networkstream, then run cciriopackage.
Now that everything is loaded, run 'CCirio <targetMachine> 4815'. The
target machine must be running mikestest.o (which is in the CCirio directory).
Unfortunately, neither Mike Hopcroft nor I were able to find the .c file for
mikestest.c. You can find out the symbols to try with nm --- I know global1,
global2, and global3 exist.
CCirio changes:

CCirioDriver.GetConnection was changed to call CirioNubAccess.Null.
CCirioDriver.GetFrames was changed to look for "mikestest.o.~1~" rather than "mikestest.o".
CCirioDriver.FirstStackFrame and CCirioDriver.NextStackFrame were rewritten to use the new PCtoInfo and GetFileEntry calls to CirioNubAccess.

CCirio.df: Changed to reflect new files gotten from the release and new files gotten from other DF's. In general the files I got from the release are in their own area (with a comment pointing it out).

Everything that used to reference CirioNubAccess1 now references CirioNubAccess.