next up previous contents index
Next: Initial Operations Up: Xic Configuration and Startup Previous: Redirect Files   Contents   Index


Initialization Files

When Xic is started, a number of files are read. This section describes these files, and the order of access. None or these files is required to exist. In addition, there are a few more files used to maintain state for certain startup operations, described in the next section.

On installation, a default configuration is provided for Xic. The user will need to reconfigure Xic for their requirements. This reconfiguration is accomplished primarily by editing a custom technology file, which Xic reads on startup, and also by possibly setting some of the environment variables before starting Xic. These variables can be set in the user's shell startup file, as appropriate for the user's operating system.

The default technology file, plus several other files needed, are placed in a system-wide location on installation, usually /usr/local/xictools/xic/startup, which is included in library path. This directory is typically set to be read-only, thus the user must establish an alternative location in their own directory tree for customized startup files, and add this to the library path to the left of or instead of the default location. The default technology file provided with Xic is for generic MOSIS scalable CMOS.

license.host file
When using a license server on a remote machine, it is necessary to provide the name of this machine or Xic can not run. One way to do this is to create a license.host file in the startup directory, e.g. /usr/local/xictools/xic/startup. The license.host file consists of a single line of text, giving the host name of the license server machine. The host name can optionally be suffixed with ``:port'', where port is the port number in use by the license server. This is required if for some reason the license server is not running on the default port.

X resource file
As the program starts and the graphics is initialized, the X window system may access various files for resource resetting. See the X documentation for details. The attribute (non-layer) colors used in Xic can be set through the resource mechanism (see A.10), but one must take care that these are not reset in the technology file.

.xicinit file
Next, an ``.xicinit'' initialization script, if present, will be read and executed. The user may create this file, it is not present by default. The initialization script uses exactly the same format as other script files, as are normally found along the script search path. The script can set user preferences or otherwise modify Xic. Since this file is read before other files, it can be used to set the search paths used to find other startup files, in particular the technology file. The base name for the script is ``.xicinit'', and the same extension as the technology files can be present.

If, for example, Xic is started with an extension ``.ext'' (-Text given on the command line), Xic will look for files ./.xicinit.ext and $HOME/.xicinit.ext, then ./.xicinit and $HOME/.xicinit, in that order, where ``$HOME'' indicates the user's home directory. The first file found will be executed. If Xic is started without a technology file extension, only the script files without an extension will be executed.

Technology file
If a technology file is being used, Xic will read the file at this point, before reading the user's script and macro files (below).

The technology file contains all of the information Xic needs for physical and electrical layout, extraction, and design rule checking, plus information on hard copy support, printer commands, and the like. It also provides values for a number of presentation attributes including the colors used on-screen.

The Save Tech button in the Attributes Menu creates an updated copy of the technology file in the current directory. Most of the changes to an existing technology file can be performed from within Xic, though some text editing may be required on occasion.

.xicstart file
Next, an initialization script, if present, will be read and executed. This file can be created by the user, is is not present by default. The initialization script uses exactly the same format as other script files, as are normally found along the script search path. The script can set user preferences or otherwise modify Xic, and, unlike the similar ``.xicinit'' file, performs these commands after the technology file has been read. The base name for the script is ``.xicstart'', and the same extension as the technology files can be present.

If, for example, Xic is started with an extension ``.ext'' (-Text given on the command line), Xic will look for the files ./.xicstart.ext and $HOME/.xicstart.ext, and then ./.xicstart and $HOME/.xicstart, in that order, where ``$HOME'' indicates the user's home directory. The first file found will be executed. If Xic is started without a technology file extension, only the script files without an extension will be executed.

xic_stipples file
The xic_stipples file is read, which initializes the default fill pattern registers in the fill pattern editor in the Attributes Menu. Like the device and model libraries, the technology file, font files, etc., the library search path is used to locate this file. A default stipple file is provided, and new files can be obtained from the Dump Defs button in the Fill Pattern Editor.

.xicmacros file
Next, Xic will attempt to read a file with the base name ``.xicmacros'', and the same extension as the technology files can be present. This file does not exist by default, but is created if the user defines macro definitions which are mapped to key presses, as generated by the Key Map command in the Attributes Menu. The .xicmacros file is rarely if ever directly edited by the user.

If, for example, Xic is started with an extension ``.ext'' (-Text given on the command line), Xic will look for files ./.xicmacros.ext and $HOME/.xicmacros.ext, then ./.xicmacros and $HOME/.xicmacros, in that order, where ``$HOME'' indicates the user's home directory. The first file found will be read. If Xic is started without a technology file extension, only the script files without an extension will be read.

.xic_font file
If a file named ``xic_font'' is found in the library search path, the file is read to obtain the text font used for on-screen label text. This file is created by the user from the Dump Vector Font button in the Font Selection panel, and is subsequently editing to the user's requirements. The default font is hard-coded internally.

.xic_logofont file
If a file named ``xic_logofont'' is found in the library search path, the file is read to obtain the text font used for the logo (physical text) command. This file is created by the user from the Dump Vector Font button in the Logo Font Setup panel, and is subsequently editing to the user's requirements. The default font is hard-coded internally.

xic_mesg file
This is a text file providing the legal disclaimer. It once supplied text for the About window, but is no longer used for that purpose.

Device Libraries
As needed, Xic will also read the device library (device.lib) file, search and map the device models and help files, and open the first command line file for editing. The device library file supplies the device templates used in electrical mode. The model files provide SPICE models used for generating SPICE output. These files are read the first time access is required. Defaults are provided for these files, but the user will very likely need custom device and model library files.

.wrpasswd file The .wrpasswd file is created in the user's home directory with the !passwd command. It is an encrypted file that contains the user name and password to the distribution repository. The user name and password are provided by Whiteley Research upon program or maintenance extension purchase, and are required to gain access to the distribution site for program updates. This file is common to all Whiteley Research products.

If the file exists, Xic will check for program updates on startup, and alert the user if an update is available. This is also required to use the !update command. The user will also be alerted if the password has expired.


next up previous contents index
Next: Initial Operations Up: Xic Configuration and Startup Previous: Redirect Files   Contents   Index
Stephen R. Whiteley 2017-04-09