CDSilDoc.tioga
Written by: gbb, October 11, 1985 4:37:41 pm PDT
Last edited by: gbb January 7, 1986 6:12:11 pm PST
ChipNSil 2.2
DATools 6.0 — FOR INTERNAL XEROX USE ONLY
ChipNSil 2.2
An interactive schematic entry program
G. B. Beretta
© Copyright 1985, 1986 Xerox Corporation. All rights reserved.
Abstract: ChipNSil is a graphical editor featuring the same user interface as ChipNDale. From an implementation point of view, ChipNSil is just another ChipNDale technology, therefore the designer needs no additional documentation beyond the ChipNDale documentation. However, ChipNSil is also used to create simple illustrations, and the ability to read Sil files has attracted users outside the designer community. This document shall help them to get started; it does not duplicate the full ChipNDale documentation.
Created by: Giordano Beretta, Lissy Bland, Christian Jacobi
Maintained by: Beretta, Jacobi <ChipNDaleImplementors^.pa>
Keywords: Schematics, Illustrator, Sil
XEROX  Xerox Corporation
   Palo Alto Research Center
   3333 Coyote Hill Road
   Palo Alto, California 94304

For Internal Xerox Use Only
1. Getting the started
Starting ChipNSil
The documentation you are reading may be old. To find the latest version of ChipNSil, enter the following command in a Command Tool viewer [the ® symbol stands for the version number of the current Cedar release. If you do not know it, type Version in a Command Tool viewer]:
list [DATools]<DATools®>Top>ChipNSil*.df
If Cedar complains telling you
-- Couldn't find the server for "[DATools]<DAToolsr>Top>ChipNSil*.df"
type in the Command Tool viewer the following line (if you are at PARC):
PSAdd DATools -r Cyan Cyan Luther.Alpine
If you are confused, locate a DA tool implementor or a designer and ask him what the current version is.
Suppose you determined that the latest version has the number 22. To get the files onto your disk type in the Command Tool viewer:
BringOver -p [DATools]<DATools®>Top>ChipNSil22.df
BringOver -p [DATools]<DATools®>Top>CDInterpressPlot22.df
The next thing you need to do, is to load the program into memory. To do that simply type:
CDSil
ChipNSil responds opening a viewer labelled "Terminal". It will be used for messages and prompts.
Fine point: Once you have started to use a particular Command Tool viewer, you should not change to a different Command Tool. This is to be sure that all you need is in the same working directory.
Reading a drawing
Case 1: you have an existing ChipNSil file you want to edit. The command to be entered in the Command Tool viewer to read it is:
CDRead <file name>
Case 2: you want to create a new file: type in the Command Tool viewer:
CDNewSil
Case 3: you want to work on a Sil file. ChipNSil will convert the file to its format and allow you to edit it. However, you will not be able to produce an updated Sil file. The command is:
CDReadSil <file name>
In each of these cases ChipNSil will react in the same way. It opens a viewer for the drawing (either on the color screen or on the left of the black and white screen) and a small control panel viewer in the bottom right corner of the screen. Now you can start editing.
If the above did not happen, look in the Terminal viewer for an explanation.
You might have to do something called "push into a cell". Read section 6 if you are not able to select single elements of the drawing.
2. Basic editing commands
The mouse
The mouse buttons have the following fixed meaning:
Left (red): make a new selection!
Middle (yellow): insert; draw from where I clicked down to where I released the button!
Right (blue): Add to the current selection!
If you do not move the mouse while you select, ChipNSil marks selected the closest object it can find. If you have several objects clustered one above the other, keep the mouse button pressed and hit the space bar until ChipNSil marks selected the object you want.
Of course, if you move the mouse while you select, everything inside the rectangle created by the mouse movement is selected.
Drawing lines and rectangles
Look at the control panel. In the second line you see a list of colors. To select the color in which subsequent input will be drawn, click the middle (yellow) mouse button on the color name. ChipNSil responds writing this color name on the first line ("current layer").
The numbers below the color names are the thicknesses in which subsequently specified lines are drawn. Each color has an own value, and when a color is chosen, its own thickness is used. To increase the thickness of a color, hit the left (red) mouse button on its name. Similarly the right (blue) mouse button makes the lines specified subsequently thinner.
To draw arbitrary rectangles, set the thicknesses of the color to 0.
Writing text
On the control panel there is a line which starts with the word "font". Place the cursor on it and hit any mouse button. A menu pops up. Select a font for the subsequent text input and ChipNSil writes its name right after the word "font".
To actually write some text, hit the "T" key while you press the middle mouse button. Now look in the Terminal viewer. ChipNSil is prompting you for a string, terminated by a "RETURN".
If you just want to replace an existing text, but keep its attributes (font, color and location), hit the "Q" key while selecting.
Similarly you can just change the font of some text. First select the new font in the control panel. Then hit the "F" key while selecting. If there is a lot of text that should get the same font, just go ahead and select the whole area; ChipNSil is not bothered if the selected area includes lines as well as text. The new font is the one you last selected in the control panel.
Moving things around
That is easy. Just keep the "CTRL" key pressed while moving the mouse with the appropriate selection key down. You must release the mouse button before you release the "CTRL" key.
If instead of "CTRL" you keep the "SHIFT" key pressed, the selection is copied. Again, the mouse button must be released first.
Or instead, you can keep the "TAB" key pressed. This causes the object to be stretched. (Text cannot be stretched). Indeed, stretching can also be negative, meaning shrinking. Since these two operations are triggered with the same command, the cursor has to be inside a rectangle for ChipNSil to figure out whether to stretch or to shrink. The edge closest to the cursor is pushed or pulled in direction of the mouse movement. If you used the right (blue) mouse button to select multiple rectangles, you can use any of them as a representative for the group. Again, the mouse button must be released first.
Deleting
To delete, select the objects and then hit "CTRL""D". If you made a mistake and want your stuff back, just press "ESC""D".
3. Adjusting the view
Zooming
To enlarge what you see (zoom in), hit the comma key. To zoom out hit the period key. (You will note that the comma key has a "<" which illustrates the concept of magnification, and that the zoom-out key has a ">" which illustrates the concept of diminution.
Panning
To move around the drawing without changing the scale, keep the space bar pressed while you move the mouse with the middle button pressed.
Arbitrary scaling
If you want to see a certain area in greater detail, keep the space bar pressed while you move the mouse with the left button pressed.
If you want to see a certain collection of objects so that they fit best in the viewer, select them and press "CTRL" and the space bar at the same time.
The resolution
If things are very small, you cannot see them well. Therefore ChipNSil does not bother to draw them as they really are. If you do not like it, press the comma key and the space bar at the same time. A pop up menu allows you to set a new simplification threshold.
The grid
Similarly you can change the grid (slash and space) and the ticks (period and space).
If you have problems putting things on your grid, try the following more general command. Hitting the "S" key and the space bar at the same time lets a "special" menu pop up. Select the entry called "move to grid".
4. Printing
The usual way to print a ChipNSil drawing is to produce an Interpress file. First type:
CDInterpress
in your Command Tool viewer.
Now return to the ChipNSil viewer and make a selection with the left mouse button while pressing the "H" key. A first pop up menu just asks you to confirm that you want to create an Interpress file.
The next pop up menu asks you whether you want to substitute the raster fonts you see on the screen with the smoother spline fonts. This is probably what you want, hence select the menu entry labelled "standard substitution file".
The next pop up menu asks you whether you want to clip to the rectangle. The selections have the following meaning:
yes: print the stuff delimited by the selection rectangle when you triggered the command;
no: print everything.
At this point ChipNSil needs some information on the output device. The pop up menu you are now seeing is labelled "Plot". If you want to print on a laser printer select "fill page". If your choice is a Versatec plotter, select "fill Versatec stripe".
Now ChipNSil creates an Interpress file. Watch for the "done" message in the terminal viewer. As soon as it appears, enter in the Command Tool viewer either
InterpressToPD tem.pd ← []<>temp>temp.IP raven384
or
InterpressToPD tem.pd ← []<>temp>temp.IP versatec
depending on what you specified to the pop up menu labelled "Plot". To actually print the drawing send the tem.pd file to the TSetter program in the first case or Chat for the Versatec.
5. Saving the drawing
Look at the control panel. At the far right of the first line you find the word "save". Bug it with a mouse button and type a file name in the Terminal viewer.
6. Pasting together Alto Sil drawings
Cells
One of the things that make ChipNSil powerful, is that it allows you to structure your drawing. If you have several instances of a collection of objects, you can group one of these collections into a cell. You then make instances of the cell. This has the advantage, that when you modify one instance of a cell, the modifications are propagated to all other instances.
Another benefit of cells is that you can put a hierarchical structure on your drawing. A cell that is contained in another cell is called a child of the former. A collection of cells with the same father is a collection of siblings.
Operations on cells
To create a cell, select all objects that are to be part of it using the right (blue) mouse button. Now press down at the same time the "X" and "C" keys and the middle (yellow) mouse button. ChipNSil will ask you a name for the cell in the Terminal viewer.
To insert an instance of a cell hold down the "C" key while pressing the middle (yellow) mouse button. Type in the Terminal viewer the name of the cell to be inserted.
Once you have created a cell, you will note that you cannot access the elements in it. All operations (like move or copy) apply to the cell as a whole and not to its contents. The reason is that the contents is one level down in the hierarchy. To access the contents of a cell you have to push into it. This is done by holding down the "C" key while pressing the selection mouse button.
When you are done editing in a cell, you commit the modifications and propagate them to all instances with the pop operation. Popping is achieved by pressing "SHIFT""C".
Importing cells
When you convert Alto Sil files to ChipNSil, you obtain a design for each Sil file. If you want to paste them together into a single ChipNSil design, you have to move the stuff from one design to another.
To help you in this operation, the CDReadSil command introduced in the first section collects the objects it finds in a Sil file into a cell. To access a cell in another design, you have to import the design. Choose one design into which you will merge the Alto Sil files; let us call it the result design. Go in one of the other designs and at the same time, press "X", the space bar and the right (blue) mouse button. Now go to the result design and press at the same time "X" and the middle (yellow) mouse button. A pop up menu appears which among others contains the name of the design you have chosen for the import; select this menu entry. In the terminal viewer you are asked the name of the cell, which you can read on the black viewer label.
The cell has probably not been inserted at the exact place you desired. For your convenience the newly inserted cell is automatically selected by ChipNSil and you can use the move command to position it correctly.
Example
Suppose you have two Sil drawings stored in files map1.sil and map2.sil respectively. To combine them into a single design, perform the following operations. (Semi-colons separate commands.)
Type in the Command Tool viewer
CDSil; CDReadSil map1.sil; CDReadSil map2.sil
Press in ChipNSil viewer labelled map2
"X", space bar and right (blue) mouse button
Press in ChipNSil viewer labelled map1
"X" and middle (yellow) mouse button
Select the entry map2 in the pop up menu
Use the move command (keep the "CTRL" key pressed while moving the mouse with the left selection key down) to position the cell map2. If necessary press the comma key to get an enlargement of the view.
Now select both cells and to create a single father cell that contains both.
Save the design map1 by bugging the "save" word in its control panel.
7. More features
In this document you have found the basic commands and operations. ChipNSil has many more features, some of which are very powerful. Once you feel comfortable with ChipNSil, you may want to snoop in the the ChipNDale documentation stored in Documentation>ChipNDale22.df and in Documentation>ChipNDaleTools22.df in the directory [DATools]<DATools®> to learn more about them.