ChipNDaleMessages1983.tioga
Copyright © 1983 by Xerox Corporation. All rights reserved.
Created by Christian Jacobi
Last edited by Christian Jacobi, February 18, 1987 4:58:38 pm PST
1983
####################################################
cd9.tioga
Date: 21 Dec 83 15:02:52 PST
From: Jacobi.pa
Subject: Chipndale release 0.9
To: Chipndale
Cc: Jacobi
cd9, nmos9, cmos9 are available
Ed:
analysis9, vplot9, maskgen9 are available but not tested,
I made only 4 changes necessary to recompile:
CDInline.NormalizeRect[c.r] changed to CDInline.ToRect[c.pos, c.sPos]
Christian
---------
Changes:
---------
CD
ObjectProcsRec, RegisterObjectType: objectType changed type to ATOM (for
representation on files)
CDSequencer
CommandRec gets new field sPos; pos and sPos now replace r which is removed.
(this allows to get rid of unnormalized rect's)
please do not yet use the orientation, I want to experiment first
CDInline:
New procedure ToRect (used to replace r by pos, sPos in CDSequencer)
CDDraw
world is renamed to design (consistency)
CDValue
searchUntil is renamed to propagation
order of parameter reversed (consistenc with CDProperties....)
(dangerous since of same type, but I checked all DF files of all users for CDValue...)
CDProperties
RegisterProperty gets optional registrationKey parameter (to allow multiple registration)
CDPrivate
new procedure Debug
CDTechnology
new procedures SetCurrentLevel, SetLevelWidth; widthAtomTable made private
(widthAtomTable is no more needed public: since cd8, levels can have properties)
CDCells
EachEntryAction gets a default return value
TokenIO, CDIO: New modules
read/write included, uses TokenIO
On read write of a design, an event allows the Technology to add private
information to the file
In NMos: TIPTable may be specified by UserProfile
(See [indigo]<chipndale>cd9>Chipndale.profile for default values)
You are NOT supposed to make your own tiptable now, the commands are still considered
implementation level and change without documentation
The tip process knows a "WiringMode" set, reset and querried by tip process,
has no further influences
####################################################
Date: 29 Nov 83 15:57:55 PST
From: Schroeder.pa
Subject: Dealers for Nov. 30
To: DealerNotice^
++++++++++++++++++++

Title: Report of recent trips

Speaker: Frances Yao

Abstract: My dealer tomorrow will be a report of some recent trips.


++++++++++++++++++++

Title: Chipndale

Speaker: Christian Jacobi

Abstract: Chipndale is a rewrite of Chipmonk for Cedar [A graphic rectangle editor]. While the basic algorithms remained similar, the interfaces are completely re-done. It's "official new features" are mainly using multiple designs, multiple viewers, and Cedar. However, I tinkered much more on extendability. This extendability then is extended to make Chipndale technology (nmos, cmos, [pcboards, sil??],...) independant. Chipndale is not yet ready for creating designs, however, it has already been used to create plots. Designers will love Chipndale because it uses 32-bit INT's....
++++++++++++++++++++
####################################################
cd8.tioga
Date: 23 Nov 83 13:29:29 PST
From: Jacobi.pa
Subject: Chipndale Prerelease 0.8
To: Chipndale
Cc: Jacobi
cd8, nmos8, cmos8 are available
Programmers(in Chipndale^): I'll ask you personally whether I might delete cd7
Designers: use cd8 as soon as cd7 is no more available, [no changes beside number...]
Interface changes
CDInline:
MidPoint renamed to Center
ExtendRect renamed to Extend
CD:
lambda gets a new value
Technology gets a list of levels it uses;
LevelFields replaced by LevelTechnology and LevelKey
CDProperties: Properties can hang on levels and on Atoms
registration rules relaxed
CDValue: propagation default changed to no propagation
CDSequencer: locking is performed on a design basis, queue is no more exported
QueueCommand now needs a design
CDPrivate: New private module with errors, zones and level-information
CDTechnology: TeachLevel replaced by TeachColorBrick,
(TeachSimpleColor will be replaced in later version)
CifName must be handled by properties; must use $CDxCIFName
CDOrient: new procedure OrientateContext
CDExtras: new procedure PushedCellName
CDPanel: CreatePanel returns now a viewer
HookIntOntoDValue is renamed to DefineIntEntry, now using a more
consistent naming scheme
Other changes
CDDebug: module has variable: xdesign: CD.Design
is the last design created. USEFULL FOR DEBUGGING
change of coordinate system, origin is at the bottom left corner
Christian
####################################################
Date: 25 Oct 83 18:58:44 PDT
From: Jacobi.pa
Subject: New DL ChipndaleUsers^.pa
To: ChipmonkUsers^.pa
Cc: Chipndale.pa, Jacobi
Reply-to: Chipndale.pa
New distribution list ChipndaleUsers^.pa is created;


Chipndale is NOT ready for use by designers, with exception
of the Versatec plot feature;

[for mail to the implementors of chipndale, you may use
the access control list Chipndale.pa]

Christian
####################################################
CD7.txt

PosInrect for cdinline

CDDialogue removes CreateChipndaleViewer

MidPos: PROC [r: CD.Rect] RETURNS [CD.Position] =
INLINE {RETURN[(r.x1+r.x2)/2, (r.y1+r.y2)/2]};

drawrecords get list of saved rects
(and are no more allowed to copy)

drawrecords get list of applications? and design [for parameters]
####################################################
Date: 24 Oct 83 13:47:18 PDT
From: Jacobi.pa
Subject: Chipndale Prerelease 0.7
To: Chipndale
Cc: Jacobi
cd7, nmos7, cmos7 are available

Why Prerelease? My files for release 0.7 are ready; as soon as yours (Mark's transistors....)
are ready, this will change from prerelease to release, without notice.

Why "0.7" ? Because the release which supports designers will be called "1.0"

-Small Interface changes:
CDExtras: has new procedures BoundingBox and AppendExt
(AppendExt copied from Kim's minio)
CDProperties: allows copying of properties
CDDialogue: redundant procedure CreateChipndaleViewer is removed
CDInline: new procedure MidPos, InsidePos
CDTechnology: has color-hook TeachColorBrick; but the old stuff is not yet cleaned.
CD: DrawInformation.influencedClip removed
hooks included to keep state of repainting process
(I decided I can't wait until I see clear about JAM; but the hooks might be
changed completely when JAM is used)
-Possibility to plug in colors at your own risk
If you want to fool with colors:
&4 bringover /a /p [Ivy]<Jacobi>ColorAdjust>ColorAdjust.df
&5 run cdnmos
&6 run ColorAdjust -- this line must be called after run cdnmos;
-- otherwise there are unbound procedures
&7 MyColor -- this line sets up a (non completely unreasonable) color table

However, colors are not yet really usefull: the cursor may leave a trail; the nmos
technology does not yet register reasonable colors; ColorAdjust is not part of config.
-It is much faster, but it crashes still far to often
-Speitzers RunNews is part of config
-Please tell me when you don't need cd6 anymore.

Christian
####################################################
Date: 17 Oct 83 12:22:50 PDT
From: Jacobi.pa
Subject: chipndale df files
To: chipndale
cc: Jacobi

chipndale's df files: /p option made usefull.



bri /p /a [indigo]<chipndale>top>nmos6

brings over the files a programmer wants to create clients for nmos and all files a designer wants for nmos.


bri /p /a [indigo]<chipndale>top>cd6

brings over the files a programmer wants to create clients.
####################################################
Date: 14 Oct 83 18:34:37 PDT
From: Jacobi.pa
Subject: Chipndale; New CDViewer interface
To: Chipndale
Cc: Jacobi
New interface CDViewer is added to the cd6 release
Christian
####################################################
Date: 4 Oct 83 16:02:31 PDT
From: jacobi.pa
Subject: Chipndale release
To: Chipndale
Cc: jacobi

New Chipndale Release
----------------------

on:
[indigo]<Chipndale>Top>cd6.df
[indigo]<Chipndale>Top>CMos6.df
[indigo]<Chipndale>Top>NMos6.df

changes:

- CD
Necessary changes to support implementation of IO are made:
= Requests for new Level must give technology and an unique(per technology) atom.
= New procedures to get Level given the technology and the unique atom.
= Objects contain new procedures for read/write on internal files.
= New procedure get Technology given its key atom.
Procedure EnregisterPropertyNames removed (Replaced by CDProperties.RegisterProperty).

- New value for lambda; (temporary ?). If your program makes assumptions about the
numerical representation of lambda, it should test it.

- CDTechnology
Redundant RequestLevel procedure removed

- New commands:
= Delete, Expand, Push, Rotate POINTED: <letter-left button>
= Select levels: <number-CTRL> <number-right button>
= Remove cell from celldirectory: <TAB-D>
= Select everything on current default level: <TAB-L>

- New module CDProperties
Registration and monitored usage of properties; (But I think, there is still something missing).

- CDDialogue implemented now, but slow and definition changed.

- some bugs corrected, others introduced.

I will delete cd5, nmos5, cmos5 after {Mark, Ed} tell me I can.
I will delete cd4 after {Kim, Ken} tell me I can, or if I run out of disk storage.

You may use my working versions at your own risk:
[ivy]<Jacobi>Chipndale>Chipndale.df,
[ivy]<Jacobi>ChipndaleNMos>ChipndaleNMos.df,
[ivy]<Jacobi>ChipndaleNMos>ChipndaleNMos.df,


Christian

####################################################
Date: 28 Sep 83 8:21:56 PDT
From: Schroeder.pa
Subject: Dealers for today, Sept 28
To: DealerNotice^.pa

++++++++++

Title: Attaching Voice to Walnut messages

Speaker: Lia Adams

Abstract: This summer I have been working on making it possible to integrate voice messages into application programs. Moving voice around poses problems different from moving around text messages and requires a set of primitives for managing voice files. I have developed a simple directory package for keeping information about recordings, and have used these facilities in a version of Walnut that allows the user to attach voice to Walnut messages.


++++++++++

Title: Partitioning Integrated Circuit Designs

Speaker: Ken Clarkson

Abstract: I will describe a Cedar program I wrote this summer for partitioning intregrated circuit designs. The motivation for the program is that integrated circuit designs often have a great deal of regularity, with a piece of a design (a "cell") repeated many times. Ideally, such regularity would be exploited in processing the design, so that a particular analysis would be carried out on only one instance of a cell. However, designers can and do produce designs with overlapping cells, with the resulting interaction making independent analysis of a cell impossible. My program attempts to carve up a design with overlapping cells to make a design without such overlap, while maintaining underlying regularity (and describing the same chip). I will also briefly describe some results on algorithms for finding minimum spanning trees in coordinate spaces, and of course opine on Cedar, CSL, and the nature of reality.


++++++++++
####################################################
Date: 23 Sep 83 11:51:09 PDT
From: jacobi.pa
Subject: Chipndale release
To: Chipndale
Cc: Preas, Jacobi
New Chipndale release:

bringover /a [indigo]<Chipndale>Top>cd5.df

and either
bringover /a [indigo]<Chipndale>Top>CMos5.df
or
bringover /a [indigo]<Chipndale>Top>NMos5.df

- new directory

- CD
= New technologies must be registered with RegisterTechnology, which is the only way to
create TechnologyRec records.
= New procedure FetchObjectProcs (used in future to fetch a readMe procedure)
= NewDefaultObjectProcs is replaced by RegisterObjectType, its use
is now mandatory to implement new object types.
= new Object-Procedure enumerateChildObjects to enumerate direct children

- New procedures in CDExtras
EnumerateChildrenObjects enumerates all object which are children of a particular object
EnumerateDesignObjects enumerates all object of a design
(in such order, that no enumerated object is built of objects not reached more
early in the enumeration)

- New module CDObjectProcs
hash table to include more procedures with object type specific behaviour
(will be used for lengthen, widen, narrow...)

- New module CDCallSpecific
mechanisms to call object type specific procedures for
one, all, all select... applications
(will be used for lengthen, widen, narrow...)

- New module CDEvents
Allows registration of procedures which will be called on certain events,
e.g. after creationof a Technology, a Design, after pop, push
Allows introduction of further such events.

- New commands:
= Undelete <CTRL-U>
= RenameDesign <TAB-R>

- cmos and nmos is (partially) split, the original file chipndale.bcd does no more exist.
= {run CDCMos; newcmos}
but is still a hack,
= {run CDNMos; newnmos}
cmos is not yet completely removed from nmos chipndale.

- Text is re-implemented, may use different fonts (still viewer only)


In doubt look at the source, the df file tells where it is. I think that for the next release some
of the new features might be regrouped into different modules, but their main functionality
will remain.

I will delete [ivy]<jacobi>cd4 after {KimR, Clarkson, Shand} tell me I might.

My newest, daily changing versions remind on [ivy]<Jacobi>Chipndale>Chipndale.df, but
usage may anytime cause inconsistencies.

Christian


####################################################
Date: 12 Sep 83 15:40:28 PDT
From: jacobi.pa
Subject: Chipndale release
To: KimR, Clarkson, Shand
cc: McCreight, Preas, Jacobi

New Chipndale release:

bringover /p/a [ivy]<jacobi>cd4>cd4.df
or
bringover /a [ivy]<jacobi>cd4>cd4.df


Several of Marks and Kims whishes are considered:
- New module names:
"kernel" chipndale interfaces have preceding letters CD [ChipnDale]
nmos, cmos modules are not yet renamed consistent
(Who knows a good name for the "kernel" chipndale modules?
The modules which are not depending on any Technology)
- New interface CDExtras
procedures: CreateDummyObject which includes all pushed in cells
- for Rect Objects: specificRef#NIL to allow more easy discrimination
- DeSelect Command <D-select>; XRotate command <X-Mark>
- for any pushed cell exists a dummy object, (to put on properties more easy)
- TEMPORARY: an $Analysis property is removed from cells on pop command
- Kim's MinIO is included in the release
- Cell and rotation commands have procedural inteface. (Changes in CDCells, CDOps)
- "kernel" extensions, such that cmos may implement its well surround
procedure fields: insideRect, hitInside
(object sizes are real, always including all painted features; but creating and
selection may occur on some inner rectangle of the object)


In doubt look at the source, the df file tells where it is.

I'm sorry I will unconditional delete the previous release [ivy]<jacobi>cd3>*
tomorrow (Tuesday) at noon, since I'm short on disk space.

My newest, daily changing versions remind on [ivy]<Jacobi>Chipndale>Chipndale.df, but
usage may anytime cause inconsistencies.

Christian


####################################################
Date: 19 Aug 83 17:19:00 PDT
From: Jacobi.pa
Subject: Chipndale release
To: KimR, Clarkson, Shand
cc: McCreight, Preas, Jacobi


New Chipndale release:

bringover /p/a [ivy]<jacobi>cd3>cd3.df
or
bringover /a [ivy]<jacobi>cd3>cd3.df


New features:
- "world" is renamed to "design".
= so is DOps.CreateDesign, DrawDesign.....
- "control aera" is [not spelled better but] renamed to "control panel".
= There is one control panel per design and a
= new definition module "Panel"
- "process" is now exclusively used in the sense of the "Mesa Language Manual", page 152 .
- support of different "technolgies"
= technology atoms are manually catalogued.
= new designs are created with technology dependent userexec commands
E.g. "newnmos"
(definition module "D" gets types Design, Technology, different Level)
- New definition module "TechnologyRegistration".
= but tip tables must still (or for ever??) contain the technology independent trash
- New definition module "DValue".
used to attach values to Designs or Technologies in a more efficient way then properties
- New definition module "ChipndaleDialogue" (replaces FeedBack)
used for creating of viewers
- Interface "Sequencer" is minorly changed:
= "technolgy" is part of command implementation.
= using the same atom several times on the same "technolgy" causes the
last implementation to win.
- Debug command
= <D-left button> calls a debugger menu, usefull for implementors of new technologies,
(not thought for designers)
- split is no more a userexec command but is an option of the <V-left button> menu.
the newCD userexec command does no more exist
- error fix: changing viewer order now works correct, but the correction made
cursor tracking slooow


In doubt look at the source, the df file tells where it is.

This release has been hastily made to allow you playing with technology independence
before things are really settled down. If you have feeling of to much adaptions and dont
need to fool with technology independence, you might skip this release.

I DONT delete the old release on [ivy]<jacobi>cd>cd.df
before you all (KimR, Clarkson, Shand) tell me I might.

My newest, daily changing versions remind on [ivy]<Jacobi>Chipndale>Chipndale.df, but
usage may anytime cause inconsistencies.

Christian
####################################################
Date: 5 Aug 83 19:21:27 PDT
From: Jacobi.pa
Subject: Chipndale release
To: KimR, Clarkson, Shand
cc: McCreight, Jacobi

There is a new Chipndale release:

bringover /p/a [ivy]<jacobi>cd>cd.df
or
bringover /a [ivy]<jacobi>cd>cd.df


New features visible for you:
- a consistent df file.
- Transistors, Contacts, Texts
- ChipOrient such that no ? client program needs to know the representation of Orientation
- access of userprofile (see Chipndale.profile)
(still, cmos is uncomplete)

In doubt look at the source, the df file tells where it is.

I DONT delete the old release on [ivy]<jacobi>ChipndaleRelease>ChipndaleRelease.df
before you all (KimR, Clarkson, Shand) tell me I might.

My newest, daily changing versions remind on [ivy]<Jacobi>Chipndale>Chipndale.df, but
usage may anytime cause inconsistencies.
(I plan major modifications [on type D.Level], therefore the release)

Christian
####################################################