cd22.tioga -- Jacobi, October 17, 1985 7:41:54 pm PDT ChipNDale 2.2 is not yet released Tioga level structure introduced. Most definition modules commented. You wouldn't believe it, but I have removed more than I have introduced. 40 words in mds are saved (20 at some speed cost, 20 for free just by carefull checking) 2 GFI's are saved by mergin modules. (Well, I will not merge modules which do not belong together) CD lambda removed, lambda field included into the technology. This will allow increasing lambda if it proves necessary for second sourcing. ObjectClass.reservedForCDEnvironment removed. The module was CDEnvironment was removed earlier. InterestSize new proc. Vanilla procedure, but used fairly often. ContextFilter simpler (saves memory) DrawInformation specialFonts, checkPriority boolean flags; (cleaner) Properties renamed to PropList (resolves name conflict with new module Properties) CDAtomicObjects size is interest rect size. Designers creating designs by program will be thankful. CDColors Allows specifying of context filters. Good for ChipNSil. CDDefaultProcs CDDefaultProcsExtras merged in. CDDrawQueue replaces CDDraw; is simpler (and [not measurable] faster) CDExtras ToLambda has lambda parameter. SelectedBox new procedure. CDImports All names and comments beautyfied Load now has a design-name (previous: design) Not giving the user access to the cached design allows to share it with CDRemote. CreateImport if necessary loads the design first... If all you want are the defaults, CreateImport the only procedure of this module you need. CDIO UseWorkingDirectory removed; Cedar does not allow this without dirty trick ReadDesign has new working directory parameter CDIOExtras New module; all silly simple procedures; but they were coded inline in zillion places before CDLayers new module; replaces CDDefaults and CDDefaultsExtras. May now be used by arbitrary clients without invalidating the control panel. CDMenus comments made understandable new procedure ImplementMenuEntryCommand for conveniance CDObjectProcs removed; replace it with CDProperties. This module was not used so often that it could not as well be implemented using properties. CDOrient Get rid of forgotten 45... CDPanel setting and querrying the default layer is removed; use CDLayers directly panel get the changes if other source cause a change in default layer width lambda from technology CDProperties PropRef: TYPE = REF Properties; --must never be NIL; this allows to put properties on more types, but to have a smaller (faster) select statement. Important types like Objects and Instances still have direct properties. Properties: use module Properties instead of Atom; uses substantially less memory and is a little bit faster, at cost of more expensive enumeration of properties. Properties MUST NOT be enumerated without CDProperties's monitor lock. If you want to enumerate properties in a vanilla program, make a copy first and enumerate the copy. (Otherwise a GetProp from a concurrent process fools your enumeration; [ChipNDale actually doesn't care]) Properties can not contain objects which contain Properties. Would wedge when written to files. CDRemote replaces CDGenerateRemote; easier to use CDTexts comments removed, (I didn't remember if they were correct or wrong) MakeFont is only procedure to create a font CDUtil usefull stuff for client generation of chipndale objects; replaces old modules CDSimpleCells and CDSimpleCells2 (without changes) CDValue new procedure StoreConditional. This allows implementation of arbitrary initializations in an atomic way without introducing monitors. This is specially useful for programs which are already monitored, recursiv monitor entry for initialization will not wedge. Registration has new registrationKey parameter (like CDProperties always had) CMosObjects size is interest rect size CornerStitching Beautified; The definition module now documents legal conditions to call procedures Enumerations have split into two procedures with less parameters each. ChangeTile no more inline, but works for every tile. TerminalIO WriteF, WriteF1, WriteRopes, TOS new procedures time outs for RequestSelection and Confirm Confirm replaces UserSaysYes TerminalIOExtras: RequestRope with timeout. This procedure has been introduced into an "Extras" module, because the correctness of its implementation depends on assumptions which have been checked by experiments. Interpress plot Font substitution for all scales; different format of font substitution file. Thanks to Don. PD plot Supports c150. Special colors for ChipNSil-stick diagrams on c150 Supports c400. All the coordinate transform between design and device is rewritten. Removed some rounding errors. Label generation Hack to make a flat cell with labels matching all texts in tioga fonts. Handy for plotting. New cmos-B technology NOT YET PART OF RELEASE for the dragon project Large contacts, vias (space key). 3 lambda diffusion over gate. With conversion program from cmos-A funny comment layer ... Cursor tracking on Dandelions is faster ʯ˜˜ J˜*—J˜Jšœ!˜!J˜J˜J˜!J˜"J˜HJ˜XJ˜bJ˜šœ˜Jšœ‰˜‰Jšœ`˜`JšœA˜AJšœ$˜$šœ˜Jšœ˜Jšœ&˜&—J˜R—˜J˜T—˜J˜9—˜J˜!—˜ J˜9—˜J˜J˜—˜ J˜!J˜€J˜—˜JšœJ˜JJ˜.—˜ J˜\—˜J˜ƒ—˜J˜Jšœ7˜7—šœ˜Jšœ„˜„—˜ J˜—˜J˜IJ˜KJ˜—˜ ˜5J˜§—J˜¢J˜–J˜`—šœ˜Jšœ(˜(—˜J˜CJ˜+—˜J˜—˜J˜‡J˜M—šœ ˜ J˜—˜J˜SJ˜FJ˜5—˜ J˜/J˜*J˜J˜Õ—J˜J˜˜J˜]—˜J˜J˜2J˜J˜c—˜J˜\—˜-J˜J˜!J˜J˜#J˜J˜—J˜'—…—ð¥