XCircuit History of Code Modifications
Current Status
xcircuit is now in stable release version 3.0 and has
undergone major bug fixes. The changes from
version 2.5 to 3.0 mean that the list of platforms on which
xcircuit has been successfully compiled may change without
notice.
Stable version 2.5.5 has been extensively tested on a real chip
design of nearly 40,000 devices, and successfully generated the
netlists for simulation and LVS (layout-vs.-schematic).
Development (Beta) version 3.0.x has a number of features and
enhancements (see code revision history below), but most of
the changes are internal and transparent to the end-user.
Stability is not guaranteed due to the large number of structural
changes, but version 3.0 has successfully compiled large
schematic netlists, validated through LVS.
Version 3.0 contains code for a Tcl interpreter-based version
of xcircuit. This is incomplete and should be considered
pre-release. As long as the normal configuration procedure
is followed, version 3.0 should compile and run like the
latest stable version version 2.5. In other words, version
3.0 can be considered stable as long as you don't do
"./configure --enable-tcl".
Other future features of xcircuit, and a complete revision
history, are outlined in the
Manifest file in the source
code directory.
Code Revision History
- (version 3.0) Has not been updated on this page. See the
Manifest file in the source distribution top-level directory.
- 1/3/02
(version 2.5.3)
Minor bugfixes: variable reading (varfscan, varpscan) requires skip
over whitespace. Netlist requires reinstating routine nearpoint()
because matrix transformations have roundoff errors and pin positions
should not be compared exactly. Updated Copyrights to 2002. Netlist
generation has been confirmed on a large schematic design.
- 1/1/02
(version 2.5.3)
First cut at incremental netlisting---implemented a scheme in which
netlists are kept after being generated, until they are invalidated
or the object is destroyed. This scheme allows the netlist structure
to be queried at any time. Netlist creation is independent of the
netlist mode, as it should have been to begin with.
- 12/26/01
(version 2.5.2)
Correction to duplicate object code makes sure that schematic/symbol
association does not get destroyed along with the duplicate object!
Also: Applied Holger Vogt's patches to configure.in for proper
compilation under Cygwin.
- 12/15/01
(version 2.5.2)
XCircuit now allows pin labels to be parameterized, treating them
as an instance-dependent label. While this does not alter the
SPICE and sim netlists, it allows (for example) quad parts such
as four NAND gates of a 7400 chip, each having its own unique
pinout but sharing the same object.
Also: To go with the pin labels, added a method for generating
"virtual copies" of an object to appear on a library page ("V"
key from the library page). The virtual copy is a different
instance of the object, and can take different parameters.
Started on library "quadparts" with 7400-series pinouts to
facilitate use of the new feature with PCB netlisting.
- 12/06/01
(version 2.5.1)
Revised the routines that deal with duplicate objects. New routines
prevent propagation of appended underscores (used to differentiate
between objects with the same name but different structure). The
major change is that a list of aliases is kept for objects with the
same structure but different names, so there is no confusion through
the process of reading the library. When the loading is done, the
aliases are removed and the names are cleaned up.
Also: Switched the copyright to GPL for better compatibility with
other open-source tools, and because it's the Right Thing To Do.
- 11/28/01
(version 2.5.0)
Removed an ill-conceived routine which would delete duplicate
copies of an object even if the names were different. This action
can give rise to very bad inconsistencies. A better idea would be
to try to "clean up" leading underscores whenever an object with
a leading underscore is deleted. However, this is a minor point.
Also: Fixed a string overrun bug in charreport().
- 11/16/01
(version 2.5.0)
Finally (!) added support for parameterized values other than
label (sub)strings. This includes parameterization of all
element values except color (which is handled by an inheritance
model). Includes parameterization of: point position (x, y, or
both), line style, linewidth, scale, rotation, label justification,
and arc radius, minor axis, and endpoint angles. Includes support
loading, saving, displaying, printing, and editing.
- 11/14/01
(version 2.4.0)
Added python script "pagebbox.py" to create standard page-size
bounding boxes (request from Bob Paddock). Along with this,
I updated the python code to handle colors by name or RGB
components, rather than by index, which is visual-dependent.
- 11/12/01
(version 2.4.0)
Bug fixes to 2.4.0: Fallback resources string must be null-terminated,
added 2 remaining fallback resources that are
not taken care of by the XtGetApplicationResources() routine,
and changed XtAddConverter to XtAppAddConverter. I hope that
the application-specific references will prevent problems
with the timeout functions, and maybe with input focus as well.
Also: Fixed type casting of values retrieved from the message3
widget---values are type "Dimension" and "Position" (usually
defined as unsigned short and short, respectively), not int.
Causes errors under Solaris and probably other systems, too.
- 11/09/01
(version 2.4.0)
Switched to a new method for defining rotation. Rotation in
xcircuit is now given in degrees, which matches the PostScript
output. Flipping is done in the obvious way by declaring a
negative scale value (which is applied only to the X component
in the transformation matrix; Y is always positive). Lookup
tables for sines and cosines are replaced by the math library
functions, which presumably are fast enough not to show any
performance hit on most machines. The redefinition of the
PostScript prologue prompts the move to a new minor version
number. Rotation is still an integer value, so the minimum
rotation increment is 1 degree.
Also: Fixed an error in the PostScript prolog in which text
flip invariance was incorrectly implemented after the addition
of text kerning & scaling methods. Fixed another error in which
XCircuit and PostScript disagree about text orientation due to
roundoff errors. Matrix values must be compared to some epsilon,
not zero, to determine when the orientation is 90 or 270 degrees.
epsilon = 1e-9 works fine.
Also: Changed certain Xt routines to include XtAppContext in the
hope of avoiding the problem with the TimeOut function conflicting
with other X11 programs (namely, screensavers). Hopefully the
addition of fallback_resources to XtOpenApplication will prevent
problems with the X defaults when the X defaults file cannot be
found.
- 11/05/01
(version 2.3.6)
Added rudimentary "edit-in-place". Currently, this is a bit odd,
because the hierarchy above the object is rotated to match the
"natural" orientation of the object, rather than the other way
around. This should be fixed by allowing rotation and flips to
the top-level page (keep the transformation matrix for the page
rather than just the scale and position). Skewing of the grid
due to rotations is a can of worms, though. Probably rotating
to the nearest 90 degrees would suffice for most purposes.
Edit-in-Place is turned on by default. It can be turned off if
the extra drawing clutters the window.
- 11/01/01
(version 2.3.6)
Fixed a long-standing error in which the "rejustify" routine
was giving labels invalid "justify" bit fields. Fixed a problem
with the "visible pins" in which the visibility flag would always
be reset by a rejustification of the label.
Also: Removed the ":n" suffix from pages in multiple-page files
with the same name. The addition of the suffix was screwing up
the association of symbols to schematics on file reads, and it
seems to work fine without it. Some attempt is made to enforce
unique names for pages associated to symbols, but it seems to
work correctly whether or not names are unique.
Also: Fixed an error in string parameter deletion, and added
a call to mergestring() after deletestring() to connect any
divided text.
- 10/25/01
(version 2.3.6)
Revamped the file list window on the suggestion of Zhengdao
to highlight files that match the expected file extension.
Extended this idea to include a "file filter" which displays
only those files with matching extensions. This feature can
be turned off by clicking a toggle button in case a file with
an unusual name or extension cannot be seen.
Also: Added a flag to the label justification value which
allows pins to be seen on hierarchical levels other than the
top. Changes to the prolog prompted the change to subversion
6 although the change is fully backward-compatible. Thanks
to Bob Paddock for the suggestion.
- 10/24/01
(version 2.3.5)
Fixed a netlisting bug pointed out by Bryce Denny in which the
layer ordering of label vs. polygon can cause the label to not
be associated with the network under it. This led me to
discover another bug in which a label position would update the
netlist properly but the actual label itself would not be added
to the netlist (the only apparent consequence is that the label
is not hightlighted during a connectivity check).
Also: Fixed the behavior of the .xcircuitrc file loading so that
keys can be rebound from the file. Added Python commands for
pan and zoom, and wrote an example script which rebinds keys "Z"
and "z" to a python function which combines the pan and zoom.
Separated zoom functions between those with and without screen
refresh.
- 10/22/01
(version 2.3.4)
Fixed some buggy behavior with respect to loading and setting
default fonts in .xcircuitrc and xcstartup.py. Thanks to Jeremy
Braun (jtbraun@MIT.EDU) for reporting these errors in detail.
Also: Fixed a missing requirement in checking object name
syntax. A PostScript name must be a string which cannot be
interpreted as a number. Thus, "+9" and "1E9" are illegal
names. Thanks to Bob Paddock (bpaddock@csonline.net) for
reporting this bug.
Also: Changed behavior with respect to environtment variables,
allowing "TMPDIR" to set the temporary directory and allowing
an override of the "XAPPLRESDIR" directory. Added a list of
environment variables used by xcircuit to the manual page.
Also: Revised the tempfile mechanism once again to include a
check on the number of times a file has been modified; heavy
modification will induce a temp-file save even if the timer
has not expired.
- 10/19/01
(version 2.3.4)
Implemented a "changed" file mechanism which checks for changes
to pages and objects and queries for confirmation if there are
unsaved changes upon quitting. Changed filename behavior so that
all filenames have their own malloc'd space, instead of sharing
filenames. Extended file backup to include different filenames
on different pages. Added a toggle box on the output popup
window so that a page can be unlinked from a multipage file,
and displays the number of pages in the file. Added the simple
popup window (no text entry) to the list of python calls.
- 10/18/01
(version 2.3.4)
Fixed the crash file recovery so that ONLY the given crash file
can be loaded (load and cancel are the only choices). Also,
the actual temp file name is hidden from view, and the original
filename is recovered from the "%%Title:" header line.
Also: Fixed the problem in which startwire() was called after
a popup window button was selected.
- 9/18/01
(version 2.3.4)
Names of pages added to the library and page directories.
Thanks to Bob Paddock (bpaddock@csonline.net) for suggesting
the feature.
Also: Updated "configure.in" to check for the infamous python
version 1.5, and disable the python interface if found.
- 9/10/01
(version 2.3.4)
RPM package makefile fixes (thanks to Alex Habig
(habig@neutrino.d.umn.edu)).
Also: changed undelete() to
xc_undelete() to avoid conflict with OpenBSD/FreeBSD system
calls. Thanks to Mike Andrews (mikea@mikea.ath.cx) for
bringing this to my attention.
- 8/12/01
(version 2.3.4)
Implemented a Python interface into the netlist structures.
Set up for use of Python scripts to generate all netlist
output, as well as dealing with non-PostScript format input.
Also: fixed a problem with crash recovery caused by the
program exiting on call to Py_Exit. Improved the crash
recovery mechanism to automatically find crash files on
startup, and prompt user to load.
Also: added more Python functions, for page clear, page change,
add key bindings to Python functions, and create menu buttons
with callbacks to Python functions. Added Python functions for
calling a popup prompt, file browser.
- 7/27/01
(version 2.3.3)
Fixed more man page problems with the make process. Added
default values for Python libraries when the Python Makefile
can't be found. Made the rcfile parsing more robust, esp.
so it doesn't crash if it attempts to read a non-script file.
- 7/26/01
(version 2.3.3)
Added auto-numbering of component numbers using netlist mode
"idxpcb". This works for all component numbering (including
SPICE and sim) where the component number is parameterized and
denoted by a question mark ("?"). Thanks to Lapo Pieri
(lapo@iroe.fi.cnr.it) for the suggestion and some code to
implement the function outside of xcircuit.
Also: Fixed Imakefile so that imake uses m4 to generate the
man page correctly on "make install.man".
- 7/18/01
(version 2.3.3)
Fixed two errors, one which split global nets in hierarchical PCB
netlists, the other which failed to find nested parameters.
- 7/17/01
(version 2.3.3)
Some changes to the GNU autoconf (with much help from Albert
Chin) for correct parsing of the path to python, avoidance of
errors when generating the man page, and re-instantiation of
the keyboard input focus workaround.
Also: Removed the behavior of turning pins back into labels
when creating objects or moving labels between pages or
objects. Added behavior that if a pin is removed (or moved
out of an object), and the pin has a unique string, any pin
on the corresponding symbol/schematic will revert to a plain
label. This was the intended behavior.
- 7/09/01
(version 2.3.3)
Added label strings to the Python setattr() command. Added a
getcursor() command to Python. Created a python script called
"gettext(filename)" which creates an xcircuit label from the
contents of an ASCII file.
- 7/06/01
(version 2.3.3)
Quick fix to an error in interpreting key names for key bindings.
- 7/05/01
(version 2.3.3)
Added environment variable XAPPLRESDIR so that application
defaults come from the location specified by the configure script,
not /usr/lib/X11/app-defaults. This also allows app-defaults to
be used even if xcircuit is compiled without root privileges.
The configure script was modified to compile in Xpm, if it can
be found.
- 7/02/01
(version 2.3.3)
Changed netlist behavior so that wires only connect at endpoints
(although an endpoint may attach TO any location along a segment
of another wire). Optimized a few routines for speed. Netlist
output now changes symbol font and standard font "mu" (i.e.,
micro) to "u". Fixed a bug preventing correct loading of files
containing multi-part strings as parameters.
- 6/28/01
(version 2.3.3)
Cleaned up some behavior with respect to component numbering,
including fixing numbering for flattened SPICE output. Added
a PCB library for generic IC parts.
- 6/27/01
(version 2.3.3)
Corrected the parseinfo() routine so that it correctly uses the
symbol, not the schematic, to pick up information about a pcb
name. Changed some of the library objects (namely the passive
devices like Resistor and Capacitor) so that pin names are
PCB-like and device can be given a part number. Changed the
netlist compiler behavior so that all indices are numbered
relative to a particular component, rather than numbered
relative to all components.
- 6/25/01
(version 2.3.2)
I have introduced GNU autoconf/automake in this version,
thanks to help from
Albert Chin.
Also includes numerous fixes of bugs stemming from changes
made between versions 2.1 and 2.3.
- 5/30/01
(version 2.3.1)
This version completes the hierarchical schematic
capture, and includes many internal structural
changes which should be transparent to the end-user.
A few visible changes include better listing of the
contents of an edited string in the message window,
and the addition of tab stops, scale and color changes,
and embedded carriage-return in labels. Errors
stemming from parameterized objects have been fixed by
the structural changes.
- 12/19/00
(version 2.2.0)
Added to the functions available at the command line
(thanks to Norman Werner (norman.werner@student.
uni-magdeburg.de for patches); also, changed the
startup behavior from loading "builtins.lps"
(nominally a library file) to loading "startup.script"
(a command script). Commands "loadlibrary" and
"loadfontencoding" in .lps files are no longer
warrented, although they are supported for backward
compatibility.
- 12/18/00
(version 2.2.0)
Finally, a stable release including schematic capture code.
Just in time for Christmas. Includes changes to the way
schematics and symbols are associated with one another,
fixes to the netlist generation; also, xcircuit now
loads "analoglib2.lps" (circuit symbols with parameters
andmore netlist informatio) as a default library page.
- 12/04/00
(version 2.1b9)
Fixes to the code changes from 11/29.
- 11/29/00
(version 2.1b9)
Addition of text blocks (Alt-Enter inserts a
carriage return during text edit), and scale
change, color change, and kerning (character offsets)
within labels.
- 11/11/00
(version 2.1b8)
More fixes related to bugs in the parameterization
and netlist routines (yes, deja vu). Thanks to
Terry Hancock (hancock@earthlink.net) for exercising
the functions and finding bugs. Also, there's a new
xcircps2.pro which redefines "label" from the PostScript
end, adding block text and kerning capabilities (which
have not yet been added to the xcircuit code), and
fixing long-standing inconsistencies between xcircuit
and PostScript on label alignment.
- 10/27/00
(version 2.1b7)
More fixes related to bugs in the parameterization
and netlist routines. Also,
added more "%" special sequences to info labels:
%n for object name, %r for carriage-return, %t for
tab, and %% for the percent sign character. Info
labels for "pcb:" format are now interpreted as
object names (to be inserted into the netlist).
- 10/23/00
(version 2.1b6)
Quick fix of a fatal bug pointed out by Wilson Barroz
(wbarroz@bol.com.br) wherein a "path" element cannot
be selected without causing a crash (the bug was
accidentally introduced somewhere in the 2.1b series).
- 10/2/00
(version 2.1b6)
Fixed many of the problems associated with parameter
strings. Have not yet exhaustively tested for remaining
bugs. Change in label output to allow escape sequences
to be part of parameters.
- 9/25/00
(version 2.1b5)
Added a menu option to read a script, using the same
command-line feature as was implemented below for the
.xinitrc file. Also, added some functions to the
command-line parser and fixed an error with bounding-box
calculations for EPS output.
- 8/4/00
(version 2.1b2)
Added a command-line window which accepts the same commands
as the .xcircuitrc file. This syntax will be expanded in the
near future. Added text hints to the toolbar buttons. Added
a user-definable bounding-box capability, and fixed the
automatic bounding-box calculation to include spacing between
pins and their text. Added a "auto-fit" feature to
automatically scale the drawing to fit the output page. Also
improved the behavior of the text-edit widget to delete a
selection if it exists in lieu of deleting a character.
- 8/1/00
(version 2.1b1)
Added the crucial feature of automatic file saving to
a temporary file: in case of hangs or crashes, the
file can be recovered from the /tmp directory. The
name generation routine is the system call tempnam()
with prefix "XC". Temporary saves are redundantly
protected during file writes. Timeouts for auto-saves
defaults to 15 minutes and can be set from Xdefaults
as string "xcircuit.timeout", units in minutes.
- 7/31/00
(version 2.1b1)
There are some bug fixes, particularly as relates to
compilation on HP/UX and a couple of obscure segmentation
faults. Mostly, however, I have changed from 2.0 to 2.1
after Graham Murphy pointed out to me that older versions
of 2.0 (e.g., 2.0a11) will crash when loading newer version
files (e.g., 2.0b4). This is due exclusively to a tiny
change made in the syntax for labels.
- 6/28/00
(version 2.0b4)
Corrected and enhanced the routine printing out the
cursor position and other information to the top of
the window.
- 2/25/00
(version 2.0b4)
Added two major features: 1) Ability to read in any
arbitrary PostScript file, to be rendered to the
background by ghostscript (assuming its on the system).
2) A toolbar down the right side for quick command
execution, and quick access to object property menus.
The toolbar implementation is not yet complete.
- 2/8/00
(version 2.0b3)
Bugfix: Using "add new library" followed by "make
object" caused a segmentation fault because
createlibrary() was malloc'ing the new library on
top of the old user library.
Also: Tested some preliminary support for
ghostscript-rendered backgrounds.
- 1/13/00
(version 2.0b3)
Enhancements: Added a "library directory" as part of
infrastructure for implementing multiple library pages.
Changed behavior of bounding box calculations so that
bounding boxes are calculated on the fly as objects are
created and edited, and any changes are reflected in
the page directory, the libraries, and the library
directory as required.
- 1/10/00
(version 2.0b2)
There have been a number of bug fixes to the schematic
capture code, and a "page order" page has been added to
aid in displaying, moving to, and rearranging the internal
pages. All objects and libraries now retain their position
and scale in the window, and variables related exclusively
to the graphics window have been separated from those which
aren't, with the expectation of one day allowing xcircuit to
fork off multiple windows on the display.
- 11/22/99
(version 2.0b1)
Introducing the beta version!
- 11/19/99
(version 2.0a11)
Matheiu Clar discovered that
the environment variable LANG can override the ``locale''
function and make the program crash just like it used to
do if locale was set to some non-US value. This has been
corrected by internally setting LANG to "POSIX" (the
default). If it seems unreasonable that xcircuit speaks
only "English", remember that all the files it loads
and saves (which are the cause of the crashing) are
PostScript, and PostScript is effectively English, at
least has no option to use, for instance, commas as
decimal delimiters (perhaps you should get on Adobe's
case about this blatant Americentrism). However, the
real problem seems to be that the scanf()
family of functions will just segmentation fault if
they see an unexpected use of a delimiter.
- 10/29/99
(version 2.0a11)
I tracked down a fundamental problem with keyboard
focus which was mainly a problem under the WindowMaker
window manager. Turns out that WindowMaker likes to
keep grabbing keyboard focus for itself, and won't
release it back to the application. The solution
was to keep a constant vigil on ClientMessage
(nonmaskable) events into the xcircuit top level
window. Nevertheless, bug reports still keep coming.
There will be more fixes.
Thanks to:
Tennessee Carmel-Veilleux ,
Raymond Burns ,
Paul Ortyl ,
Pete Boettcher ,
Damien Montassier ,
Don Johnson ,
Shaul Karl .
- 8/20/99
(version 2.0a10)
Several bug fixes: One bug fix to the output file
generator to correctly identify all fonts used in
the drawing; another bug fix restores the original
behavior of changing font properties of selected
labels (this is a fatal bug on some systems).
- 6/25/99
(version 2.0a10)
Tweaks to several functions: 3rd mouse button now
backs up one line segment when drawing polygons rather
than giving up on the whole thing. Cursor warps to
center of screen on a pan command. New key macro "."
(period) draws a dot object at the cursor position.
- 6/16/99
(version 2.0a10)
Fixed a bug which occurs under some non-US versions of
Linux which use a comma as the default decimal point
character, causing an immediate crash on startup for
all versions from 2.0a9 to current.
- 6/14/99
(version 2.0a10)
Added ISO-Latin5 encodings (Turkish) to the font files.
- 5/24/99
(version 2.0a10)
More revamping of text handling and other bug fixes.
Backslash escape sequences for entering non-keyboard
text characters have been replaced by a graphical
point-and-click method.
Also: finally implemented edit mode for paths.
- 5/12/99
(version 2.0a9)
Revamped all text drawing routines to make font handling
much more flexible. Added ISO-Latin1 (Western European)
and ISO-Latin2 (Eastern European) encodings.
- 1/26/99
(version 2.0a7)
Fixed a bug which was introduced into version 2.0a7
which prevents landscape-oriented files from being
loaded back into xcircuit. See the
troubleshooting guide for more details.
- 12/18/98
(version 2.0a7)
Changed some internally fixed fonts to be able to be
set by Xdefaults, and fixed some minor alignment problems
in the file list widget which were associated with the
choice of font.
- 12/8/98
(version 2.0a7)
Fixed a long-standing problem with page scale
and grid/snap spacing: all of the above are made
separate for each page and are saved and loaded
with each file.
Also, some attempt at smooth scrolling was added,
and a zoom-out box function was added to complement
the zoom-in box.
- 10/4/98
(version 2.0a6) Problems with the simple help
window have been fixed, and a lot of associated source
code was shuffled around and cleaned up.
- 9/29/98
(version 2.0a5) The color icon code apparently
introduced a bug in which most window managers would
lose input focus to the program. This is partially fixed,
but input focus behavior still depends on the window
manager. This is mainly a concern for Linux, where the
availability and variety of window managers has exploded
in recent days. If you have problems with a specific window
manager, please send me a bug report including the system
and window manager you are using.
- 9/1/98
(version 2.0a4) More bug fixes; color icon added.
- 8/23/98
Useful new features added (version 2.0a3)
such as flip-invariant text. Coming soon: parameterized
objects (a must for schematic capture and any hope of
compatibility with other CAD tools). Bug fixes galore,
and the graphics look fabulous as always, but don't expect
xcircuit to generate a correct spice deck, yet (it's
getting there). Flip-invariant text keeps all text
within 90 degrees of upright regardless of how many
flips and rotations its put through---so, for instance,
the ``Vdd'' always reads forward, even when it's in
a subcell that has been flipped around backwards.
- 7/9/98
Alpha version of schematic capture
system xcircuit-2.0 introduced.
- 5/21/98
A few bugfixes and additions courtesy
of Jörg Wunsch, including the addition of
handling WM_DELETE_WINDOW client messages to
allow the program to be closed by window manager
controls.
- 5/19/98
Bug fixes from Paul Slootman for the
64-bit Alpha platform.
- 5/13/98
David DiGiacomo pointed out that the
problem with the "make" halting under Solaris is
the indeterminate exit status returned by the
menudep program. This has been fixed.
- 4/11/98
Backspace can no longer be typed from
the keyboard; instead, the keyboard Backspace
acts like Delete, and a Backspace character can
be inserted from the menu.
- 3/16/98
Fix to a PostScript profile bug which
caused stipple patterns to be drawn incorrectly in
rotated objects. If you have an xcircuit version
prior to 3/16/98, please update your PostScript
profile with the corrected
xcircps2.pro
file.
- 2/25/98
Fixes to Xw to make it compile cleanly:
result is that Xcircuit now compiles under DEC Alpha,
and Xcircuit will compile under (at least) Linux and
IRIX without making system-dependent changes to the
Imakefile.
- 2/12/98
Changes to the inch/cm conversions; xcircuit
is now friendlier toward Europeans: it can be made to
start in metric mode (with the .xcircuitrc file) and
reports all measurements in centimeters when in metric
mode as well as setting the size of a "full page" to
A4 standard.
- 1/30/98
Work on the schematic capture system is less in
earnest than claimed, as my Ph.D. thesis takes top priority.
However, the last known fatal bugs have been excised from
xcircuit, which is now in version 1.7. A copyright has been
added and xcircuit is now occasionally posted to metalab.unc.edu
(formerly sunsite).
- 10/15/97
Work in earnest has begun on the xcircuit schematic
capture system.
- 10/8/97
(1) Added a feature to "hide" objects which are only
subcomponents of other objects and not meant to be independent
objects to be grabbed from the library. (2) Fixed the
polygon editing modes to a more reasonable form. (3) Changed
object editing so that edited objects to not change position
in the list of elements.
- 10/1/97
Changed color values to type int; this
allows xcircuit to run on 16/24-bit TrueColor display visual
types as well as the usual 8-bit PseudoColor visual (you
wouldn't believe how many programs crash when run on a
16-bit visual!). If your version of xcircuit is working
fine, then you don't need the update.
- 9/10/97
Fixed a bug which causes problems in the PostScript
output if more than 12 new fonts are added to the font list.
This is a rare occurrence and should not affect most users.
- 9/9/97
Changed some Xw code for compilation under DEC OSF
(DEC Alpha). Does not affect current users. Still can't
compile correctly under DEC Alpha anyway!
