Welcome to the Bartels Group of Companies
Bartels AutoEngineer® Version 4.0 Freigabemitteilungen - Deutsche Version Bartels AutoEngineer® Version 4.0 Release Notes - English Version
Bartels

Bartels System GmbH
Bartels
Bartels AutoEngineer
BAE Product Info
BAE Price List
BAE Downloads
BAE Documentation
BAE Installation Guide
BAE User Manual
BAE Libraries
User Language Programmer's Guide
BAE Update History
BAE Next Version Release Notes Preliminary
BAE V8.0 Release Notes
BAE V7.8 Release Notes
BAE V7.6 Release Notes
BAE V7.4 Release Notes
BAE V7.2 Release Notes
BAE V7.0 Release Notes
BAE V6.8 Release Notes
BAE V6.6 Release Notes
BAE V6.4 Release Notes
BAE V6.2 Release Notes
BAE V6.0 Release Notes
BAE V5.4 Release Notes
BAE V5.0 Release Notes
BAE V4.6 Release Notes
BAE V4.4 Release Notes
BAE V4.2 Release Notes
BAE V4.0 Release Notes
BAE V3.4 Release Notes
BAE Support
BAE Contributions
BAE Development and Service Companies
Electronics Development
Bartels Sport Service
Company Profile
Corporate Info
Bartels :: Bartels AutoEngineer :: BAE Documentation :: BAE V4.0 Release Notes

Bartels AutoEngineer® Dokumentation

Bartels AutoEngineer®
Version 4.0
Release Notes

The Bartels AutoEngineer® - Version 4.0 - Release Notes provide detailed information about new features, enhancements, changes and bug-fixing introduced with Bartels AutoEngineer Version 4.0. Forward compatibility from earlier versions to Bartels AutoEngineer Version 4.0 is ensured, but not backward compatibility.

 

Contents

1General
1.1Bartels AutoEngineer Product Line
1.2Hardware and Operating System Platforms
1.3Documentation
1.4Installing on Windows/DOS Platforms
1.5Installing on Linux/UNIX Platforms
1.6BAE User Interface
1.7Windows Versions
1.8Symbol and Part Libraries
2Schematic Editor
2.1General
2.2Pin Contact Area, Report
2.3Part Power Supply Specification
2.4Windows 95 Generic Output
2.5Tag Symbols
3Packager and Backannotation
3.1Logical Part Definition
3.2Pin Attribute Definition
3.3Part Attribute Transfer
4Layout Editor
4.1General
4.2Element Query
4.3Net-specific Airline Display
4.4Traces on Part Level
4.5Trace Processing
4.6Isolated Power Layer Areas
4.7Moving Names
4.8Group Functions
5Autoplacement
5.1General
5.2Automatic Copper Fill
6Autorouter
6.1General
6.2Re-Entrant Routing
6.3Off-grid Pin Connections
6.4SMD Fanout Routing
6.5Prefered Grid Routing
7CAM Processor
7.1General
7.2Windows Generic Output
7.3Gerber Photo Plot
7.4Excellon Drill Data Output
8CAM View
8.1General
8.2Processing Gerber Data
8.3User Language
9Neural Rule System
9.1General
9.2Integration to Schematic Editor
9.3Layout Placement Preferences
10Utilities
10.1LOGLIB -- Logical Library Maintenance Utility
10.2VALCONV -- VALID to Bartels Conversion
11Bartels User Language
11.1General
11.2User Language Compiler
11.3User Language Interpreter
11.4Index Variable Types
11.5System Functions
11.6BAE User Language Programs
Tables
1BAE Hardware and Operating System Platforms
2BAE Disk Space Requirements
3BAE Software License Files
4BAE Graphic Device Drivers

 

1 General

 

1.1 Bartels AutoEngineer Product Line

With Bartels AutoEngineer Version 4.0 the following software configurations are available:

  • Bartels AutoEngineer Professional
  • Bartels AutoEngineer HighEnd
  • Bartels AutoEngineer Educate/Entry

Bartels AutoEngineer Professional is the basic BAE software configuration. BAE Professional is available for PCs with Windows, Linux, or DOS operating systems. SCM and/or Layout only configurations of BAE Professional are provided to satisfy special customer needs. BAE Demo software configurations of BAE Professional (fully-featured except for data output) are also available for test and evaluation purposes.

Bartels AutoEngineer HighEnd with its advanced features and functions such as high speed kernel, cross-probing, rule-driven Neural Autorouter, etc. is available for both workstations and PC systems (Windows NT/95, Linux).

Bartels AutoEngineer Educate (also known as Bartels AutoEngineer Entry) is available for PCs with Windows, Linux, or DOS operating systems. BAE Educate is a low-price BAE configuration with considerably reduced functionality for educational purposes and/or semi-professional users.

The following software modules are optionally available with the workstation-based BAE systems:

  • Bartels AutoEngineer IC Design
  • Bartels AutoEngineer Mixed Mode Simulator

Bartels AutoEngineer IC Design (BAEICD) is a complete CAD/CAM system for the physical design of integrated circuits (gate arrays, standard cells, custom ICs and/or ASICs). BAEICD consists of a series of system components such as IC Mask Editor, IC Autoplacement, IC Autorouter, IC DRC (Design Rule Check), and GDS-II and CIF standard interfaces.

Bartels AutoEngineer Mixed Mode Simulator (BAESIM) is a compiler-driven simulator for mixed analog/digital circuits. BAESIM provides direct access to the netlist data generated with the Schematic Editor of the Bartels AutoEngineer.

 

1.2 Hardware and Operating System Platforms

With Bartels AutoEngineer Version 4.0, the BAE Professional, BAE Educate/Entry, and BAE HighEnd software versions have been ported to Linux (with Motif), and the BAE HighEnd software versions have been ported to Windows NT and Windows 95. BAE Windows and BAE Motif versions may be operated with either BAE standard user interface (with side menu) or with Windows pulldown menus. Table 1 lists the Bartels AutoEngineer Version 4.0 hardware and operating system platforms.

Table 1: BAE Hardware and Operating System Platforms

Hardware PlatformOperating System
(Graphic Interface)
BAE
HighEnd
BAE
Professional
BAE
Educate/Entry
Notes
WS HP 9000/7xxHP-UX
(OSF/Motif, X11)
x---
WS DEC Alpha 3000DECwindows
(OSF/Motif, X11)
x---
WS Sun SPARCSolaris
(OSF/Motif, X11)
x---
WS Sun SPARCSunOS
(SunView)
x--expiring!
PC Pentium II
PC Pentium Pro
PC Pentium
PC 80486DX
Linux
Kernel 2.0.x
(Motif)
xxx-
PC Pentium II
PC Pentium Pro
PC Pentium
PC 80486DX
Windows NT 4.0
Windows NT 3.51
Windows 95
xxx-
PC Pentium II
PC Pentium Pro
PC Pentium
PC 80486DX
Windows 3.x
OS/2 Warp WIN-OS/2
-xx-
PC Pentium II
PC Pentium Pro
PC Pentium
PC 80486DX
PC 80386/387
MS-DOS
Windows DOS Box
OS/2 DOS Full Screen
-xxDPMI
 

1.3 Documentation

Both the Bartels AutoEngineer® - User Manual and the Bartels User Language - Programmer's Guide have been completely revised and are provided in HTML format.

 

1.4 Installing on Windows/DOS Platforms

Install Kit

The Bartels AutoEngineer Windows and DOS software is provided on CD-ROM. I.e., you will need a CD-ROM drive if you intend to install the software.

Disk Space Requirements

Four different directory path names can be choosen for installing the BAE programs, the BAE libraries, the BAE User Language sources, and the BAE test jobs and examples, respectively. Any of these directories not yet existing are automatically created with user verification. You may optionally copy the BAE online documentation (format HTML 3.0) to your hard disk. Make sure there is enough hard disk space available for the installation; see table 2 for the corresponding disk space requirements. Some major changes have been introduced to the User Language include files of BAE Version 4.0. It is recommended to use a new baeulc directory (or save the existing one) when performing an Update installation (see below), since otherwise there might be problems when trying to re-compile existing (customer-specific) User Language programs referring to the supplied include files.

Table 2: BAE Disk Space Requirements

DirectoryRequired Disk SpaceContents
bae cir. 9 MByteBAE Software/Programs
baelib cir. 16 MByteBAE Libraries
baeulc cir. 2 MByteBAE User Language Sources
baejobscir. 1 MByteBAE Examples/Test Jobs
baedoc cir. 4 MByteBAE Documentation
Total:cir. 32 MByte 

Install Program

An install program named install is provided on the BAE CD-ROM.

For installing the BAE software, the CD-ROM must be inserted to the CD-ROM drive, and the drive and directory must be set accordingly. E.g., if you intend to install the BAE software from CD-ROM drive D, then insert the BAE CD-ROM to CD-ROM drive D, and enter the following commands to the DOS prompt:

>  D: Return/Enter Key (CR) 
>  install Return/Enter Key (CR)

Once the install program has been started, the instructions issued on the screen should be followed carefully. First you will be asked for the BAE language version (e.g. English, German, etc.) and for the operating system host platform (DOS, Windows NT, Windows 3.x, etc.).

The install program provides different modes for performing either new Installation or Update installations. The Update install mode is strongly recommeded when just updating from earlier BAE versions; this prevents the install program from overwriting special BAE system and setup files ending on .dat, .def, and .fnt (otherwise user-defined colour tables, aperture tables, fonts, layer definitions, library access path settings, and menu setups stored with these files might get lost).

After selecting the install mode, the user will be prompted to specify the destination directories for installing the programs, the libraries, the User Language source files, and the examples and test jobs. The user can exclude certain destination directories by deleting the corresponding path names. More experienced BAE users may e.g. suppress the installation of the BAE example jobs, or re-install certain parts of the BAE software lateron. For security reasons, the install parameter settings are verified with user query before starting the installation process. The destination directories will be created automatically on request. The install program automatically copies the BAE software files to the selected destination directories on the hard disk.

At the end of the install process the install program asks for the licensed BAE software configuration to install the correct software authorization file (see below). When installing the DOS version, the user will also be asked to select the graphic device driver to be installed (see below).

Installing the Software Security Module

The BAE PC software for Windows and DOS (except for the Demo software configuration) is protected by a hardlock key (dangle) which must be plugged onto one of the parallel ports (LPT1, LPT2, or LPT3) of your PC. Switch off your computer before mounting the hardlock key shipped with the software, or otherwise the dangle might be damaged by high voltage! If you have connected a peripheral device such as a laser printer to the hardlock key, then you must always switch on the peripheral device before switching on your computer to ensure correct hardware authorization check.

The BAE PC software provides the license files according to the available software configurations as shown in table 3. You will be asked to select the BAE software configuration (and thus the appropriate license file) when installing the BAE software. Make sure to select the BAE software configuration to be installed and/or authorized on your computer.

Table 3: BAE Software License Files

Software ConfigurationLicense File NameNote
BAE Professional autoeng.cfgSCM and PCB Layout
BAE Schematics schema.cfg SCM only
BAE Layout layout.cfg PCB Layout only
BAE Demo demo.cfg no hardlock key, no (CAM) output
BAE Entry/Educateeducate.cfgBAE Educate/Entry

The license file matching the BAE software configuration authorized on your computer must be available under file name router.cfg in the BAE programs directory. I.e., to install the correct license file you may also copy the desired CFG file to router.cfg in the BAE programs directory, instead of selecting the valid BAE configuration during BAE software installation. E.g., for authorizing the Demo software configuration you have to issue the following copy command (assume BAE programs directoy c:\bae):

>  copy c:\bae\demo.cfg c:\bae\router.cfg Return/Enter Key (CR)

Note that the BAE Demo software configuration is the one and only to run without a hardlock key, since BAE Demo software is intended for evaluation purposes only. Please note that you cannot produce any CAM or User Language output with the Demo software, and that BAE Demo software masks each processed SCM and/or Layout plan element to prevent from processing with productive software configurations afterwards. I.e. the BAE user version is not able to read Demo jobs, however we are able to convert these jobs.

Windows NT Hardlock Key Check Driver

Special driver software is required for hardlock key check when running the BAE Windows and/or DOS software under Windows NT. To install this driver software simply issue the following command from the BAE programs directory (system administrator rights are required):

> hlinst . Return/Enter Key (CR)

Ensure that "Boot Device" is selected with the Startup option of the Hardlock hardware device to be configured from the Hardware Devices dialog of the System Control panel. Note that the system must be re-booted after successfully installing the Windows NT hardlock key check driver software.

Selecting the BAE DOS Graphic Device Driver

With the Windows versions of the BAE software there is no BAE graphic device driver installation required, since BAE Windows software runs under the graphic interface of the corresponding operating system.

The DOS versions of the BAE software are shipped with a series of graphic device drivers. With BAE Version 4.0 PC software new graphic device drivers have been developed supporting Matrox Millenium and Mystique graphic adapters (resolutions 800*600, 1024*768, 1280*1024, and 1600*1200; supporting 8 or 16 bits per pixel with either small or big fonts). You are asked to select an appropriate BAE graphic device driver when installing BAE DOS software. Table 4 provides the list of graphic device drivers supplied with the DOS PC software of the Bartels AutoEngineer. Please select the graphic device driver matching the video adapter and/or graphic card installed with your computer. It is recommended to install the standard VGA driver VGA480, if you are not sure about which driver to select, since VGA480 is assumed to run on almost any PC system, and you may always select a different driver (e.g. with higher resolution) lateron (see below).

Table 4: BAE Graphic Device Drivers

Graphic Driver Type Resolution
(APA=All Pixel Addressable)
Chip Set/Manufacturer
ccd480.dev PGA 640x 480 APAIGC (Cad Card)
ega350.dev EGA 640x 350 APAStandard
ega480ew.devEEGA 640x 480 APAEGA Wonder
ega480ge.devEEGA 640x 480 APAGenoa, ATI
ega600ew.devEEGA 800x 600 APAEGA Wonder
ega600ge.devEEGA 800x 600 APAGenoa, ATI
ega600pa.devEEGA 800x 600 APAParadise
qpc1024.dev - 1280x1024 APADatapath QPDM
qpdm768.dev VGA 1024x 768 APAAMD QPDM
qpdm1024.devVGA 1280x1024 APAAMD QPDM
vga480.dev VGA 640x 480 APATseng ET3000 / ET4000
vga600.dev VGA 800x 600 APATseng ET3000 / ET4000
vga768.dev VGA 1024x 768 APATseng ET3000
tseng768.devVGA 1024x 768 APATseng ET4000
vesa600.dev VESA 800x 600 APAvarious
vesa768.dev VESA1024x 768 APAvarious
mach768.dev - 1024x 768 APAATI Mach 64
mach1024.dev- 1280x1024 APAATI Mach 64
mach1200.dev- 1600x1200 APAATI Mach 64
mga600.dev - 800x 600 APAMatrox Millenium/Mystique
mga768.dev - 1024x 768 APAMatrox Millenium/Mystique
mga1024.dev - 1280x1024 APAMatrox Millenium/Mystique
mga1200.dev - 1600x1200 APAMatrox Millenium/Mystique
tiga.dev TI variable APATexas TMS34010 / TMS34020

The graphic driver file (DEV file) matching the video adapter and/or graphic card of your computer must be available under file name bae.dev in the BAE programs directory. I.e., to install the correct graphic driver DEV file, you may copy the desired DEV file to bae.dev in the BAE programs directory (instead of selecting the correct driver during BAE software installation). E.g., for installing the VESA driver for 600*800 resolution you have to issue the following copy command (assume BAE programs directory c:\bae):

>  copy c:\bae\vesa600.dev c:\bae\bae.dev Return/Enter Key (CR)

Installing a Pointing Device

A Microsoft-compatible three (or at least two) button mouse (e.g. Logitech, Genius, Dexxa, etc.) with corresponding mouse driver software is required for the control of Bartels AutoEngineer. Consult the documentation shipped with your mouse for information on how to connect the mouse and how to install the mouse driver software. Alternatively a compatible trackball and/or touchpad pointing device may be used instead of a mouse.

Setting up the DOS Environment

It is recommended to add the BAE programs directory path to the PATH environment variable. Load the autoexec.bat file to your text editor and check whether autoexec.bat contains a PATH statement or not. If there is already a PATH statement defined in autoexec.bat, then just add the following program path link to the PATH statement (assume BAE programs directory c:\bae):

;c:\bae

If there is no PATH statement defined in autoexec.bat, then insert the following PATH statement (assume BAE programs directory c:\bae):

PATH=c:\bae

You can also insert the following command at the end of the autoexec.bat file to include the BAE programs directory pathname with the PATH variable:

PATH c:\bae;%path%

With the PC versions of the BAE software an environment variable called BAETMP can be defined for optionally specifying a BAE temporary directory to avoid problems with temporary file generation on network-based PC/MS-DOS systems. To specify the BAE temporary directory the following command must be added to the autoexec.bat file:

SET BAETMP=<dirpath>\

<dirpath> is the path name of the temporary directory (e.g., d:\baetmp; the backslash at the end of the path name is required).

The config.sys file must contain the following statements:

BUFFERS=<b>
FILES=<f>

The number <b> of buffers should be at least 30, and the number <f> of files should be at least 20.

On 386, 486, Pentium, Pentium Pro, Pentium II computers the BAE DOS software works in Protected Mode, i.e. there is no 640 kByte barrier. Bartels AutoEngineer uses the Phar Lap 386|DOS Extender, which supports DPMI, VCPI, EMM386, XMS/HIMEM, VDISK and INT 15h. However in special cases (e.g. with certain third party software configurations) it might be necessary to remove conflicting memory managers. If you wish to restrict the way in which BAE uses memory it is possible to reconfigure the BAE programs; please contact us for more detailed information in case. With EMM386 installed under MS-DOS 6.x it is strongly recommended to add the NOVCPI switch (and the NOEMS switch) to the corresponding config.sys line, since otherwise the performance for starting BAE graphic program modules will dramatically slow down.

BAE Setup

With the BAE software a setup definitions file template named stdset.def is supplied, which will be installed to the BAE programs directory. This file contains the following commands for setting the BAE library access paths:

SCMDEFLIBRARY ("<libdir>\stdsym"));
LAYDEFLIBRARY ("<libdir>\laylib"));

where <libdir> is the path name of the BAE library directory. If the library e.g. has been installed to the directory c:\baelib then you should replace <libdir> with this path name to provide correct access to the BAE symbol libraries.

The setup definitions file can be transferred to the BAE setup file bsetup.dat with the following bsetup program call (assume stdset.def to be the name of the setup definitions file, and BAE programs directory to be the working directory):

> bsetup stdset Return/Enter Key (CR)

The bsetup utility program is also used for defining important system parameters such as the documentary layer definitions and the menu setup. It is strongly recommended to become familiar with the features of the bsetup utility program before using BAE for the design of real layouts. See Bartels AutoEngineer User Manual - Chapter 7 for details on how to use bsetup.

User Language Programs, Menu Assignments, Key Bindings

A large number of very useful User Language programs are supplied with the BAE software software. The corresponding source files will be installed to a special baeulc directory (see above). It is strongly recommended to install and compile the User Language programs, since these programs provide a wide range of additional BAE features. The baeulc directory contains batch files for automatic compilation of all of the delivered User Language programs. Some of these programs will define implicit User Language program calls, i.e. menu assignments, key bindings, and startups. The supplied startup programs will also apply User Language system functions for performing key programming and assigning menu definitions. Please consider that pre-defined key bindings and AutoEngineer menu definitions will be changed when running the compile batch file and/or (automatically) executing the User Language startup programs. For executing the compile batch file you have to move to the baeulc directory. We recommend the CPLSLL (ComPiLe with Static Link Library) compile batch file for compiling the BAE User Language programs. The DOS command for starting this batch file is:

> cplsll Return/Enter Key (CR)

The compilation process might last some time (according to the power of your computer). After successfully processing the compile batch file, all of the User Language programs supplied with the BAE software are available.

See Bartels User Language Programmer's Guide - Chapter 4.2 for a complete listing of the User Language programs supplied with the Bartels AutoEngineer. See Bartels User Language Programmer's Guide - Chapter 4.3 or section 11.6 of these Release Notes for more detailed information on how to compile the BAE User Language programs and on how to define menu assignments and key bindings.

Starting BAE

Note that you must reboot your computer if you made any changes to the config.sys or autoexec.bat file during installation. The Bartels AutoEngineer can then be started by typing

> bae Return/Enter Key (CR)

to the DOS prompt. It is recommended to start BAE from the directory where the design files should be generated (this considerably simplifies job file access).

Within Windows the Bartels AutoEngineer may be started by selecting the bae.exe file using the Run function from the Program Manager Files menu. Windows-based operating systems also allow for application startup by clicking onto the icon of the corresponding program file (or by clicking onto a Windows PIF file previously generated for this application). Note that startup icons and/or PIF files also allow for the definition of the directory to be entered on default when starting the corresponding application, i.e. BAE may be configured to be started from the BAE jobs directory or from any user-specific BAE project directory. A reference of the BAE startup icon may be included with the operating system launchpad to provide an even more convenient method of starting up the Bartels AutoEngineer. Consult the documentation of your operating system for more details on how to configure applications for startup.

 

1.5 Installing on Linux/UNIX Platforms

Install Kit

The Bartels AutoEngineer install kit for Linux and/or UNIX operated workstations consists of a CD-ROM containing an appropriate archive file (e.g. baelinux.tgz for the Linux version) or a tape archive (install media) containing the directories bin (programs and setup files), lib or baelib (symbol and part libraries), ulc or baeulc (User Language source files), and jobs or baejobs (examples and test jobs).

Preparing for Update Installations

You should save the files with the extensions .dat, .def and .fnt from your BAE programs directory if you are just updating from earlier BAE versions (otherwise user-defined color tables, layer definitions, Gerber aperture tables, and fonts stored with these files might get lost). Some major changes have been introduced to the User Language include files of BAE Version 4.0. It is recommended to save the contents of the existing ulc directory when performing an Update installation, since otherwise there might be problems when trying to re-compile existing (customer-specific) User Language programs referring to the supplied include files.

Installing the BAE Software

For installing the Linux version use the tar command as in

> tar xzfv baelinux.tgz Return/Enter Key (CR)

to extract the archived BAE directories (bin, baeulc, baelib and baejobs) to the current directory.

For installing the UNIX version of the BAE software from a tape archive to your home directory enter the commands

>  cd $HOME Return/Enter Key (CR) 
>  tar xv Return/Enter Key (CR)

to the UNIX shell prompt after mounting the install media. A system-wide installation for multiple user access can be achieved by creating a BAE system directory (e.g., /usr/bae) and restoring the install media contents to this directory as in

>  mkdir /usr/bae Return/Enter Key (CR) 
>  cd /usr/bae Return/Enter Key (CR) 
>  tar xv Return/Enter Key (CR)

Setting up the Linux/UNIX Environment

The access rights must be set properly (i.e. execute for the programs, read access to the libraries, read/write access to the job files, all rights for the system administrator, special rights for the library manager, etc.). Within the BAE programs directory the user must have read access to the files ending on .cfg (for authorization check) and read/write access to the files with extensions .dat and .fnt. When working with BAE, the user must also have write access in the current directory to enable temporary file creation.

To enable BAE program call from any directory the Linux/UNIX shell environment variable PATH must be set to the BAE programs directory; this can automatically be done on shell profile execution, i.e., through shell script .profile, .login, .bashrc or .cshrc (according to UNIX derivate, respectively).

BAE Setup

With the BAE software a setup definitions file template named stdset.def is supplied, which will be installed to the BAE programs directory. This file contains the following commands for setting the BAE library access paths:

SCMDEFLIBRARY ("<libdir>/stdsym"));
LAYDEFLIBRARY ("<libdir>/laylib"));

where <libdir> is the path name of the BAE library directory. If the library e.g. has been installed to the directory /usr/bae/lib, then you should insert the following commands to the setup definitions file for providing correct access to the supplied BAE symbol libraries:

SCMDEFLIBRARY ("/usr/bae/lib/stdsym"));
LAYDEFLIBRARY ("/usr/bae/lib/laylib"));

The setup definitions file can be transferred to the BAE setup file bsetup.dat using the following bsetup program call (assume stdset.def to be the name of the setup definitions file, and BAE programs directory to be the working directory):

> bsetup stdset Return/Enter Key (CR)

The bsetup utility program is also used for defining important system parameters such as the documentary layer definitions and the menu setup. It is strongly recommended to become familiar with the features of the bsetup utility program before using BAE for the design of real layouts. See Bartels AutoEngineer User Manual - Chapter 7 for details on how to use bsetup.

User Language Programs, Menu Assignments, Key Bindings

A large number of very useful User Language programs are supplied with the BAE software. The corresponding source files will be installed to a special ulc directory (see above). This directory also contains batch files for automatic compilation of all of the delivered User Language programs. Some of these programs will define implicit User Language program calls, i.e. menu assignment, key bindings, and startups. The supplied startup programs will also apply User Language system functions for performing key programming and assigning menu definitions. Please consider that pre-defined key bindings and AutoEngineer menu definitions will be changed when running the compile batch file and/or (automatically) executing the User Language startup programs. For executing the compile batch file you have to move to the ulc directory. We recommend the CPLSLL (ComPiLe with Static Link Library) compile batch file for compiling the BAE User Language programs. The command for starting this batch file is:

> cplsll.bat Return/Enter Key (CR)

The compilation process might last some time (according to the power of your computer). After successfully processing the compile batch file, all of the User Language programs supplied with the BAE software are available.

See Bartels User Language Programmer's Guide - Chapter 4.2 for a complete listing of the User Language programs supplied with the Bartels AutoEngineer. See Bartels User Language Programmer's Guide - Chapter 4.3 or section 11.6 of these Release Notes for more detailed information on how to compile the BAE User Language programs and on how to define menu assignments and key bindings.

Starting BAE

The Bartels AutoEngineer can be started after login from a Linux or UNIX command shell (under X11 on HP 9000 and DEC Alpha AXP, under DECwindows on DECstation, or under SunView on SPARCstation) by typing

> bae Return/Enter Key (CR)

to the shell prompt. To simplify design/job file access, it is recommended to start BAE from the directory where the job files should be generated.

 

1.6 BAE User Interface

A series of general improvements have been introduced to the BAE Version 4.0 user interface such as design view management, current element name display, improved parameter setup menus, menu customization facilities, etc.

Mouse Interactions

Pressing the middle mouse button will cause a status line display of the current file and element name if no other function is currently active.

The middle mouse button interaction can now be simulated by simultaneously pressing the left and the right mouse buttons. This allows for activating the online Display menu at any time when using a two button mouse and/or running BAE under Windows.

Mouse interactions could get lost during the execution of time-critical BAE Version 3.4 functions under Windows (especially Windows 95). This bug has been fixed.

Toolbar

BAE Version 4.0 provides a new toolbar at the border of the work area. The position of the toolbar can be changed by clicking on the BAE icon. The information icon provides a parameter report. The +, -, and magnifier icons provide functions to manipulate the current zoom window. The first window shows the relativ position of the currently displayed window in the element boundaries. The following windows can be used to store different design views. The provided functions are w to store a mouse selectable zoom window, i to display information about the stored design view, c to clear the design view and s to store the currently displayed window to the design view. Clicking a design view window activates a zoom of the display window to the design view.

 

1.7 Windows Versions

The BAE software changes listed in this section mainly refer to the pulldown menu configurations of the BAE Windows versions to be activated using the PULLDOWN option of the bsetupWINMENUMODE command.

BAE Module Call

A temporary file was created in the current directory upon BAE module startup. This sometimes caused problems in network configurations where more than one user tries to start from and/or access the same BAE project directory simultaneously. With BAE Version 4.0 the module startup procedure has been modified to avoid these kind of problems. No temporary file is created during module startups anymore. I.e., BAE modules can now be started from directories without write access.

Windows Conformity

BAE Version 4.0 provides a large number of new features for adapting the pulldown menu configurations of the BAE Windows and Motif versions to Windows "look-and-feel" such as optionally activating a BAE menu setup according to Windows conventions, scrollbars for the graphic workarea, context-sensitive "ghost" menus with non-executable functions faded out, fully programmable toolbars to be optionally activated, etc.

Pulldown Menus

The pulldown menus as well as the menu functions of the Windows pulldown menu configurations are only selectable when applicable. Non-applicable menu items are faded-out ("ghost" menus) and can not be activated. Menu seperator lines are used throughout the pulldown menu systems to group functions according to their type of application.

Screen Redraw

Windows title and/or menu redraw requests under BAE Version 3.4 sometimes caused a workarea fade-out without redraw (i.e., a screen redraw had to be activated to redisplay the workarea). This problem has been solved.

Special BAE Version 3.4 Windows configurations sometimes caused a redundant screen redraw operation after BAE module startup. With BAE Version 4.0 these redundant redraws are suppressed.

Exit BAE

BAE Windows sessions can now be finished with the standard Exit function from the application window system menu or by double-clicking the Windows close button of the application window. Note however that these exit procedures will require user confirmation to prevent from accidently discarding design changes.

Windows NT 4.0 Multitasking Behaviour

The BAE Version 3.4 main module used processor power even when not active. This problem has been solved.

 

1.8 Symbol and Part Libraries

The BAE Version 4.0 symbol and part libraries have been completely revised and supplemented by a large number of new part definitions. A series of new manufacturer-specific part libraries are also supplied with BAE Version 4.0.

A general attribute for naming part manufacturers has been introduced wherever appropriate; all comment attributes are provided both in English and German language.

A series of very useful User Language programs for library management (such as library check, automatic symbol edit, automatic generation of library documentation, etc.) are provided with BAE Version 4.0. See Bartels User Language Programmer's Guide - Chapter 4 for a complete listing of the User Language programs delivered with the BAE software.

Warning

Please take extreme care when merging information from the new libraries to your existing job files (e.g. with "Update Library" or copyddb). You should always ensure compatibility of pin mappings, attribute definitions, layer assignments, etc. before merging any library data. For these purposes a series of most useful User Language programs are provided with BAE Version 4.0. Nevertheless we strongly recommend to refrain from updating project-specific libraries if you are in doubt about compatibility to the new libraries!

 

2 Schematic Editor

 

2.1 General

Neural Rule System

With BAE Version 4.0 the Neural Rule System capabilities have been implemented to the Schematic Editor and the schematic capture database.

Deleting DDB Elements

Application of the Delete Element function from the File menu has been restricted to DDB file elements which are not referenced by other elements from the same DDB file.

User Language Programs

With BAE Version 4.0 a series of new Schematic Editor functions (such as toolbars, design view management, distance query, online help, symbol browser, etc.) have been implemented with User Language programs.

 

2.2 Pin Contact Area, Report

The control function for displaying unconnected and/or processed pins on SCM level has been improved. Contact areas attached to open connections consisting of more than one segment are displayed with error highlight. The SCM Report function from the Utilities menu is now counting each open connection as drawing error. Note that single-segment open connections to pins will still cause the pin contact area to fade out, thus providing a convenient way of marking pins which should not be connected as already beeing processed.

 

2.3 Part Power Supply Specification

The net loglib command now allows for optionally specifying a net name attribute (e.g. $powernet) instead of a net name (see also section 10.1 of these release notes). I.e., it is possible to assign a part-specific power supply by setting a variable net name attribute value (such as vcc or +5v) for the net name attribute (e.g., $powernet) for the corresponding SCM symbol of the schematic plan.

 

2.4 Windows 95 Generic Output

The BAE Version 3.4 Windows Generic output function did not produce correct plot data with certain Windows 95 configurations. This bug has been fixed.

 

2.5 Tag Symbols

A new tag symbol type has been introduced to the BAE Version 4.0 Schematic Editor for assigning attributes and/or attribute sets to (groups of) parts, pins, or nets. This feature may also be used to introduce more complex design information such as preferences for test procedures or logical relations between parts, pins, and/or nets.

The new Symbol Tagmode function from the Symbols menu may be used to change the currently loaded symbol to a either a Netlist Tag or Virtual Tag. Netlist Tag assignments are transferred to the physical netlist. Virtual Tag assignments are only processed on SCM plan level.

The SCM color setup has been extended by the new entries Tag Symbol and Tag Link for displaying tags and/or tag assignments. Tags usually are not plotted.

Tag symbol pins of certain types are required for assigning tag symbol entries to nets, symbols, or pins, respectively. The new option Tag Pin Function from the submenu to be activated with the right mouse button during pin placement may be used to define the pin mode. The pin modes provided are Standard Pin (for standard symbols and labels), Symbol Tag (for assigning tags to symbols), Pin Tag (for assigning tags to pins), and Net Tag (for assigning tags to nets).

At least one attribute should be defined with each tag symbol by either placing the required attribute name on tag symbol level or by defining a fixed attribute value assignment with the logical library definition of the tag symbol. In the logical library definition of tags each tag symbol pin must be referred by a loglibpin command. Pure attribute definition tags must be defined virtual.

On SCM plan level tags may be placed using the Add Symbol function from the Symbols menu. Once a tag is placed, the Assign Symboltags function may be used for assigning tags. The target objects to be selected with the Assign Symboltags function must correspond with the tag pin types of the selected tag symbols, i.e. either a symbol, a pin, or a net named by label may be assigned to each tag pin. The attribute value assignments of netlist tag symbols will be automatically transferred to the assigned target objects by the Packager. Special processing of predefined attributes such as $plname, $rpname, $routwidth, $powwidth, etc. stays in effect. Please note that the $routwidth attribute can be tagged to pins to define pin-specific routing widths by assigning the required millimetre distance value.

Tag symbols for setting net, net pin and part attributes have been added to the library route.ddb. The tag symbol names contain the attribute names respectively.

 

3 Packager and Backannotation

 

3.1 Logical Part Definition

The BAE Version 4.0 logical library allows for the definition of pure logical parts without physical package assignment to generate logical (e.g. EDIF) netlists for PLD and/or LCA design (see also section 10.1 of these release notes).

 

3.2 Pin Attribute Definition

The logical library of the BAE Version 4.0 allows for pin-specific attribute definitions and/or pin attribute assignments (see also section 10.1 of these release notes). This feature may be used for specifiying arbitrary pin-specific attributes such as pin types or pin fanouts for electronic rule checks (ERC) or for generating netlist interfaces to simulators such as PSpice.

 

3.3 Part Attribute Transfer

The BAE Version 4.0 Packager now is capable of transferring attributes of SCM symbols which are multiple-assigned to a single layout package using the loglib xlat command. The system will issue warning messages when encountering ambiguous attribute assignments.

The Packager now also transfers part-specific power supply assignments introduced by net name attribute definitions and assigments from the Logical Library and the Schematic Editor (see also section 2.3 and section 10.1 of these release notes).

 

4 Layout Editor

 

4.1 General

Deleting DDB Elements

Application of the Delete Element function from the File menu has been restricted to DDB file elements which are not referenced by other elements from the same DDB file.

Net Name Queries

The net name queries in the layout system are now handled through popup menus.

Placement Preferences

The Neural Rule System allows for the assignment of placement preferences to parts, padstacks, or pads. These rules are automatically considered by the layout placement functions (see also section 9.3 of these release notes).

User Language Programs

With BAE Version 4.0 a series of new Layout Editor functions (such as toolbars, design view management, distance query, online help, symbol browser, routing data analysis, etc.) have been implemented with User Language programs.

 

4.2 Element Query

The Layout Editor element query function from the Display menu has been enhanced to allow for the selection of copper fill workareas, split power planes, and documentary areas. The layer field of the element query now also displays power layers, documentary layers, and special layers (All Layers, Inside Layers, etc.), and for via queries the via macro type will also be displayed now.

 

4.3 Net-specific Airline Display

Two new options named Net Visible and Net Invisible have been introduced to the Mincon function from the Parameter menu. I.e., it is now possible to fade-out (Net Invisible) and/or fade-in (Net Visible) net-specific airlines by selecting the desired net from a net name popup menu.

 

4.4 Traces on Part Level

The BAE Version 3.4 layout level design rule check was deactivated between different traces on part level to allow for the correct representation of special devices such as printed inductors. I.e., pin connections on printed inductors can be created by introducing two connecting traces. Short-circuits and distance violations to other traces on layout level will still be recognized by the design rule check.

Warning

Since the layout level design rule check will not perform checks between traces defined on the same part, it is strongly recommended to apply part level design rule checks at the definition of such parts with the clearance parameters set to the smallest minimum distance(s) intended for using these parts on layout level.

 

4.5 Trace Processing

Moving Trace Segments

Two new options (Move without neighbour, Move with neighbour) have been implemented with the submenu of the Move Segment function from the Traces menu. The Move without neighbour default mode just moves the corner points of the processed trace segment, whilst the Move with neighbour mode also rearranges adjacent trace segments to keep the angles between the processed trace segment and the adjacent segments constant. The selected trace segment move mode stays in effect for further trace segment processing and will be stored as a design parameter when saving the current layout element.

Moving Trace Corners

The function for moving trace corners sometimes changed the trace width of one of the adjacent trace segments. This bug has been fixed.

 

4.6 Isolated Power Layer Areas

Isolated power layer areas may now be defined using the Add Active Copper function from the Areas menu with invalid net name specification (i.e., net name input -) and power layer assignment. The CAM Processor has been adapted for correct processing of isolated power layer areas.

 

4.7 Moving Names

In BAE Version 3.4, name sizes had been reset to a default value when executing the Move Name function. The behaviour of the Move Name function has been changed to use the currently defined/selected text size.

The relative part name position specified with the Move Name function is now maintained when using the Move Part and Move Group functions.

 

4.8 Group Functions

Group Selection

The new options All Visible and All Invisible have been introduced to the group selection menu for selecting or deselecting either all currently visible or all currently invisible elements.

Moving Groups

New options for automatically rerouting traces between the moved group and the rest of the layout have been introduced to the functions for moving layout groups. The submenu to be activated with the right mouse button after selecting the start point for the group move operation provides a new function named Set Quadrant. The Set Quadrant function first expects an interactive selection of a quadrant origin and then prompts for the quadrant (Upper Right, Upper Left, Lower Left, Lower Right). Subsequent group shift operations are only applied on group-selected elements and/or points placed in the selected quadrant. I.e., it is possible to move parts of a layout, and reroute the connections to the moved group.

Warning

The algorithm applied by the group move functions for rearranging traces is not a routing algorithm and is designed to be applied on horizontal and/or vertical move operations only. For more complex group shift operations it is recommended to discard the routing and perform a re-routing using the appropriate Autorouter procedures.

 

5 Autoplacement

 

5.1 General

User Language Programs

With BAE Version 4.0 a series of new Autoplacement functions (such as toolbars, design view management, distance query, online help, symbol browser, etc.) have been implemented with User Language programs.

 

5.2 Automatic Copper Fill

Abort Function

A new feature has been integrated for aborting the automatic copper fill procedure by pressing any key and confirming the abort request with a verification menu.

Heattrap Generation

New options for differing between pins and vias have been introduced to the fill area connection type selection menu of the automatic copper fill function. I.e., it is now possible to decide whether heattrap connections should be generated for both pins and vias (option Pin & Via Heat Traps), for pins only (option Pin Heat Traps), for vias only (option Via Heat Traps), or if only direct connections should be generated (option Direct Connect).

The BAE Version 4.0 HighEnd system now allows for optionally specifying the maximum heattrap connections count (1, 2, 3, or 4), whereas a default sequence of left, right, bottom, top is applied for generating the heattrap connections.

Internal Routines

With BAE Version 4.0 some of the internal copper fill routines have been optimized to avoid unpredictable results in a series of very exotic cases.

 

6 Autorouter

 

6.1 General

Save and Redraw Performance

The Autorouter save and redraw procedures have been significantly optimized to mimimize the response times for processing large layouts.

User Language Programs

With BAE Version 4.0 a series of new Autorouter functions (such as toolbars, design view management, distance query, online help, etc.) have been implemented with User Language programs.

 

6.2 Re-Entrant Routing

With BAE Version 4.0 Autorouter the Load Layout function for re-routing pre-routed traces has been improved, thus increasing the number of re-routable traces.

 

6.3 Off-grid Pin Connections

The off-grid routing algorithms have been significantly improved to generate straighter off-grid pin connections. This improvement not only simplifies the manufacturing process, but also increases the routability of the layout by reducing routing channel obstructions nearby off-grid pins.

 

6.4 SMD Fanout Routing

SMD via fanout routing is now suppressed for SMD pins which are already connected to fixed traces.

 

6.5 Prefered Grid Routing

The Prefered Grid parameter for setting a prefered routing grid has been added to the Strategy menu. Prefered Grid values range from 0 to 7; 0 switches the prefered grid of, higher values cause the router to pefer the use of every 2nd, 4th, 8th, 16th, 32nd, 64th or 128th grid point. The Anti-Prefered Grid Cost parameter (value range 1 to 10, default value 1) is used to set a cost factor for routing outside the prefered grid. Prefered grid routing spreads the routing density and takes only effect on layouts with (large) unoccupied areas. Prefered grid routing parameters should be set before the first Autorouter run. Later changes to these parameters require multiple time-consuming optimizer runs. Note also that high cost factors could cause detouring routes.

 

7 CAM Processor

 

7.1 General

Isolated Areas in Power Layers

The new Layout Editor feature for creating isolated areas on power layers is also supported by CAM Processor, i.e. active copper areas without net name assignment will result in isolated areas when creating power layer plots.

User Language Programs

With BAE Version 4.0 a series of new CAM Processsor functions (such as toolbars, design view management, distance query, online help, symbol browser, power layer plot check, etc.) have been implemented with User Language programs.

 

7.2 Windows Generic Output

Color Output

The CAM Processor control plot function for generating Windows Generic output has been enhanced to support color output on multilayer plots. The Multiple Layers option of the Generic Output function activates the color/pen setup menu known from the HP-GL Output function. The activated layers are plotted in the color currently specifed in the display color table. Note that at this point black means black color and not faded out. No color mixture is applied. The output layers are plotted in the order specified by the selected pen numbers.

Scaling Factor

With Windows Generic output the CAM Processor now also considers the current plot scaling factor specifications.

Windows 95 Generic Output

The BAE Version 3.4 Windows Generic output function did not produce correct plot data with certain Windows 95 configurations. This bug has been fixed.

 

7.3 Gerber Photo Plot

Rectangular Gerber Apertures

The Gerber Photo Plot facilities now also support rectangular apertures to be used for flashing orthogonally placed rectangular pads. The character code A (Area) is used for defining rectangular apertures in the aperture table.

Warning

It is strongly recommended to check whether the PCB manufacturer supports rectangular apertures before applying this new feature.

Gerber Format, Optimized Gerber Output

The Gerber Format options have been renamed to the more convenient Gerber 2.3 Format (previously named 2.5) and Gerber 2.4 Format (previously named 2.6). The new options Gerber optimized 2.3 and Gerber optimized 2.4 have been introduced for optionally generating optimized Gerber output with redundant D01 ("light off") plotter control commands eliminated, thus significantly reducing the amount of Gerber output plot data.

Warning

It is strongly recommended to check whether the PCB manufacturer supports optimized Gerber format before applying this new feature.

Gerber Fill Mode G36/G37

The new option G36/G37 Fill has been introduced to the Gerber Fill Mode menu. With the G36/G37 Fill mode activated, non-flashable structures are stored with their outline contour, and will be filled lateron on the photo plotter. This feature significantly reduces the amount of Gerber plot data and also eliminates plot overdraw errors.

Warning

It is strongly recommended to check with the PCB manufacturer whether the photo plotter is capable of processing G36/G37 data before applying this new feature.

Extended Gerber Output

A new function named Extended Gerber is provided with the Gerber photo plot menu for optionally generating RS-274-X format Gerber output (Extended Gerber with Embedded Apertures). Extended Gerber provides the options No Extended Gerber, Extended Gerber fixed and Extended Gerber dynamic. No Extended Gerber is the default mode for generating standard Gerber data without embedded apertures. With Extended Gerber mode selected, the Gerber aperture table and the Gerber format selection are included (i.e. embedded) with the Gerber output plot file. The Gerber aperture table to be used and/or embedded may either be the currently active aperture table (option Extended Gerber fixed) or a dynamically (i.e. automatically) generated aperture table (option Extended Gerber dynamic). Note that the dynamic aperture table is generated for the whole layout data rather than for the currently plotted layer only. With Extended Gerber the aperture table is automatically transferred to the PCB manufacturer as an integral part of the plot file, and no extra aperture table information file must be generated and/or transferred. With the Extended Gerber dynamic option there is no need for defining and/or activating an aperture table before starting the Gerber plot output.

Warning

It is strongly recommended to check whether the PCB manufacturer supports Extended Gerber format before applying this feature. It is also recommended to refrain from using the Extended Gerber dynamic option with multi-aperture fill mode activated, since automatically generated aperture tables usually are not appropriate for multi-aperture filling.

Filling Arc-Shaped Structures

In BAE Version 3.4 the procedure of filling arc-shaped structures could result in incomplete (or even missing) circles in special cases where the line fill aperture almost exactly matched the size of the object to be filled. This bug has been fixed.

 

7.4 Excellon Drill Data Output

A new CAM Processor function named Excellon Drill Out for generating Excellon II drilling data output has been introduced to the Drilling+Insertion menu.

 

8 CAM View

 

8.1 General

Display Menu

The CAM View grid options have been adapted to the general BAE scheme. A new option for selecting wide draw mode has been introduced to the CAM View Display menu.

User Language Programs

With BAE Version 4.0 a series of new CAM View functions (such as toolbars, distance query, online help, etc.) have been implemented with User Language programs.

 

8.2 Processing Gerber Data

All new BAE Version 4.0 CAM Processor Gerber output options and functions such as rectangular apertures support, optimized Gerber format, fill mode G36/G37, and Extended Gerber format RS-274-X (for more details see section 7.3 of these release notes) are also supported by the BAE Version 4.0 CAM View module.

The tolerance of the Gerber input functions has been increased to avoid memory overflows when trying to load "pseudo" Gerber data.

 

8.3 User Language

The User Language Interpreter has been integrated to the BAE Version 4.0 CAM View module. The Run User Script function from the Utilities menu can be used to start User Language programs.

 

9 Neural Rule System

 

9.1 General

With BAE Version 4.0 a series of new features have been implemented with the Neural Rule System, thus allowing for advanced application in the BAE design system and through User Language programs.

Rule assignments to manipulated and/or copied elements of the currently processed figure list will be correctly transferred now.

 

9.2 Integration to Schematic Editor

The Neural Rule System capabilities have been implemented to the Schematic Editor and the schematic capture database system of BAE Version 4.0.

 

9.3 Layout Placement Preferences

With BAE Version 4.0 a new User Language program named ldefmang is provided for assigning rules which define placement preferences such as rotation angles and mirror modes to parts, padstacks, or pads. These rules are automatically considered by the placement functions of the layout systems.

 

10 Utilities

 

10.1 LOGLIB -- Logical Library Maintenance Utility

part Command

The part command now allows for the definition of pure logical parts by using the keyword logical as in

part symbolname : logical ...

Logical parts do not have a physical package assignment and may be used for generating logical (e.g. EDIF) netlists for PLD and/or LCA design.

net Command

By preceding the net name with a dollar sign ($), the net command now allows for the definition of net name attributes as in

net "$pownetname" : (20) ;
net "$gndnetname" : (10) ;

With this feature it is possible to assign a part-specific power supply by setting a variable net name attribute value (such as vcc or +5v) for the net name attribute (e.g. $powernet) on the corresponding SCM symbol of the schematic plan.

newattr Command

The newattr command has been changed to allow for the definition and assignment of pin-specific attributes as in

newattr "$pintype" = "in" to (1,2,4,5,9,10,12,13);
newattr "$pintype" = "out" to (3,6,8,11);
newattr "$pintype" = "sup" to (14);
newattr "$pintype" = "sup" to (7);

This feature can be used for specifiying arbitrary pin-specific attributes such as pin types or pin fanouts for electronic rule checks (ERC) or for generating netlist interfaces to simulators such as PSpice.

 

10.2 VALCONV -- VALID to Bartels Conversion

As far as we know, the valconv utility program for converting netlists from VALID to BAE is not in use anymore. We are considering to drop this program from one of the next BAE releases. Please contact us as soon as possible, if you are still using the valconv utility program; if so, we can decide to keep the program part of the released BAE software or provide a User Language program with corresponding functionality.

 

11 Bartels User Language

 

11.1 General

This section describes general changes to the User Language specification. See Bartels User Language Programmer's Guide - Chapter 2 for a detailed description of the User Language specification.

Internal User Language Version

The internal version of BAE Version 4.0 User Language has been changed. User Language programs compiled under earlier BAE versions won't be executable in the BAE Version 4.0 User Language Interpreter environment (error message User Language program version incompatible!). This means, that each User Language program compiled under earlier BAE versions must be recompiled under BAE Version 4.0 to regain compatibility.

Comments

A new type of comment (well-known from the C++ programming language) starting with a double-slash (//) and ending with the newline character has been introduced to the User Language specification.

 

11.2 User Language Compiler

This section describes the news and changes introduced to the BAE Version 4.0 User Language Compiler. See Bartels User Language Programmer's Guide - Chapter 3 for detailed information on how to operate the User Language Compiler.

Parser

The Parser can now process new type of comments starting with double-slashes (//) and ending at the End-of-Line character.

Linker, Optimizer

The Optimizer sometimes eliminated User Language library parts during compilation of multiple sources with link requests. This bug has been fixed.

 

11.3 User Language Interpreter

This section describes the news and changes introduced to the BAE Version 4.0 User Language Interpreter. See Bartels User Language Programmer's Guide - Chapter 3 for detailed information on how to operate the User Language Interpreter.

Integration to CAM View

The User Language Interpreter has been integrated to the BAE Version 4.0 CAM View module. The User Language module identification for CAM View is cv.

Implicit Program Call

New User Language Interpreter features have been implemented for implicit (i.e., automatic) User Language program call of the following special-named User Language programs upon certain events:

Program NameEvent
<moduleid>_loadafter loading an element
<moduleid>_savebefore saving an element
<moduleid>_zoomon graphic display zoom factor changes
<moduleid>_toolon toolbar item selection

where <moduleid> is scm for Schematic Editor, ged for Layout Editor, ap for Autoplacement, ar for Autorouter, cam for CAM Processor, cv for CAM View, ced for Chip Editor.

Key Program Call

Running User Language programs activated by key-call could cause repeated User Language program calls when processing special interaction sequences. This bug has been fixed.

 

11.4 Index Variable Types

This section mentions the news and changes on the Bartels User Language index variable types. See Bartels User Language Programmer's Guide - Appendix B for a detailed description of all index variable types.

A series of new User Language index variable types for accessing system variables and new database objects have been implemented with the BAE Version 4.0.

New Index Variable Types

With BAE Version 4.0 the following index variable types have been integrated to the Bartels User Language:

IPIndex VariableShort Description
STD
BAEPARAMBartels AutoEngineer Parameter
GLOBALVARGlobal User Language Variable

Changed Index Variable Types

A new variable named TAGSYM for retrieving the tag symbol mode has been introduced to index type C_MACRO.

A new variable named TAGPTYP for retrieving the tag pin type has been introduced to index type C_NREF.

New index link variables for accessing the index type elements of the figure and/or pool element type designated by the TYP variable have been introduced to the C_FIGURE, L_FIGURE, I_FIGURE, C_POOL, L_POOL and I_POOL index types.

 

11.5 System Functions

This section mentions the news and changes on the Bartels User Language system functions. See Bartels User Language Programmer's Guide - Appendix C for a detailed description of all system functions.

The BAE Version 4.0 provides a large number of new and/or improved User Language system function such as for displaying graphics in popup menus, customizing the BAE menu, defining toolbars with (dynamically adaptable) icons for frequently used functions, improved DDB and file system access, querying module-specific design parameters, defining global variables for exchanging data between User Language programs, improving access to currently processed design elements, etc. etc.

New System Functions

With BAE Version 4.0 the following system functions have been integrated to the Bartels User Language:

IPFunctionShort Description
STD bae_charsizeGet BAE text/character dimensions
bae_clearpointsClear internal BAE polygon buffer
bae_defmenuBAE standardmenu definition start
bae_defmenutextDefine BAE menu item text
bae_defselmenuBAE submenu definition start
bae_endmainmenuBAE main menu definition end
bae_endmenuBAE menu definition end
bae_getclassbitfieldGet BAE DDB class processing code
bae_getmenubitfieldGet BAE menu function processing code
bae_popareachoiceDefine choice field area in active BAE popup area
bae_popclipareaDefine clipping area in active BAE popup menu
bae_popclrtoolClear BAE toolbar popup area
bae_popdrawpolyDisplay/draw polygon/graphic in active BAE popup menu
bae_popdrawtextDisplay/draw text in active BAE popup menu
bae_popsetareaActivate/select BAE popup menu/area
bae_redefmenuRedefine BAE menu item
bae_redefmainmenuBAE main menu redefinition start
bae_settbsizeSet/display BAE toolbar area
bae_storepointStore point to internal BAE polygon
bae_tbsizeGet BAE toolbar dimensions
bae_wsmouseGet BAE workspace mouse position
bae_wswinlxGet BAE workspace window left boundary
bae_wswinlyGet BAE workspace window lower boundary
bae_wswinuxGet BAE workspace window right boundary
bae_wswinuyGet BAE workspace window upper boundary
ddbcheckCheck DDB file/element for availability
ddbclassidGet DDB class identifier
ddbclassscanScan DDB class elements
ddbcopyelemCopy DDB element
ddbdelelemDelete DDB element
ddbelemrefcountGet DDB element reference count
ddbelemrefentryGet DDB element reference entry
dirscanScan directory
filesizeGet file size
filetypeGet file type
getcwdGet current working directory path name
getenvGet environment variable value
synparsestringBNF/Parser string scan
vardeleteDelete globale User Language variable
vargetGet global User Language variable value
varsetSet global User Language variable value
CAP cap_getpartattribGet SCM part attribute value
cap_getrulecntGet rule count for specific object
cap_getrulenameGet rule name from specific object
cap_lastfigelemGet last modified SCM figure list element
cap_macloadLoad SCM macro element to memory
cap_macreleaseUnload/release SCM macro element from memory
cap_mactaglinkGet SCM (scanned) macro tag link data
cap_ruleerrRule System error code query
cap_rulefigattAttach rule(s) to figure list element
cap_rulefigdetDetach rules from figure list element
cap_ruleplanattAttach rule(s) to currently loaded element
cap_ruleplandetDetach rules from currently loaded element
cap_rulequeryPerform rule query on specific object
LAY lay_lastfigelemGet last modified layout figure list element
lay_macloadLoad layout macro element to memory
lay_macreleaseUnload/release layout macro element from memory
GED ged_groupselectGED group selection

Changed System Functions

The system functions bae_deffuncprog, bae_defkeyprog, and bae_defmenuprog have been modified to allow for BAE standard menu item number specifications by preceding the program name parameter with a hash sign #. I.e., it is now possible to assign BAE menu functions to keys and/or to rearrange the menu organization.

A new parameter for retrieving the second dimension of rectangular apertures has been introduced to both the cam_getgerberapt and the cam_setgerberapt CAM Processor system functions.

New parameters and parameter value ranges for supporting optimized Gerber format mode, G36/G37 fill mode, and Extended Gerber format (RS-274-X) have been introduced to both the cam_getgerberparam and the cam_plotgerber CAM Processor system functions.

Redundant System Functions

Some BAE Version 3.2 system functions are redundant since BAE Version 4.0 provides corresponding new functions which can be applied more general. The redundant system functions are still supported by BAE Version 4.0, but will be removed from one of the next BAE Versions. We strongly recommend to remove the corresponding function references from your User Language source codes as soon as possible. Functions can be replaced according to the following reference (old function call ==> new function call):

Deprecated FunctionReplacement
scm_clearpoints() bae_clearpoints()
ged_clearpoints() bae_clearpoints()
ar_clearpoints() bae_clearpoints()
ced_clearpoints() bae_clearpoints()
scm_storepoint(x,y,t)bae_storepoint(x,y,t)
ged_storepoint(x,y,t)bae_storepoint(x,y,t)
ar_storepoint(x,y,t) bae_storepoint(x,y,t)
ced_storepoint(x,y,t)bae_storepoint(x,y,t)

Eliminated System Functions

Some BAE Version 3.0 system functions were redundant since BAE Version 3.2 did introduce corresponding system functions for more general application. These redundant system functions have been removed from BAE Version 4.0, i.e. calls to these functions must be replaced according to the following reference (old function ==> new function):

Eliminated FunctionReplacement
ap_inpoint(xs,ys,x,y) bae_inpoint(xs,ys,x,y,0)
ged_inpoint(xs,ys,x,y) bae_inpoint(xs,ys,x,y,0)
scm_inpoint(xs,ys,x,y) bae_inpoint(xs,ys,x,y,0)

The additional integer parameter of bae_inpoint is used for optionally displaying (value 1) a rubberband graphic frame during interactive input.

 

11.6 BAE User Language Programs

With BAE Version 4.0 a lot of very useful User Language programs are delivered. These programs will be installed as source code files to a special directory named baeulc (see also section 1.4 of these Release Notes). Please consider that BAE Version 4.0 comes with more than 160 User Language files including almost 2.3 MByte (more than 77,000 lines) of User Language source code, thus representing a huge amount of CAE/CAD software engineering know-how. Bartels User Language Programmer's Guide - Chapter 4 lists all BAE User Language programs with short descriptions, and also provides information on how to make the programs available to the BAE software.

The User Language programs already delivered with the previous BAE Version have been completely revised and extended by a large number of new functions. Some of the BAE Version 3.4 User Language programs have been renamed or integrated to other programs. With BAE Version 4.0 also a series of new User Language programs are provided, such as toolbar definition, SCM symbol browser, routing data analysis, design view management, online help, etc. Due to the extensive changes made to the User Language programs shipped with BAE Version 4.0, BAE Update installations are recommended to install the baeulc directory to a different path as it has been installed before. At least the old include files (extension *.ulh) should be saved when being used for customer-specific UL software engineering. Also make sure to save your own UL program sources before performing BAE Update installation, and to re-compile them after successfully installing BAE Version 4.0.

Include Files

The User Language include files already delivered with the previous BAE version have been completely revised and extended by a series of new functions.

The following User Language include files have been implemented with BAE Version 4.0:

IPInclude FileShort Description
STD baeparam.ulhBAE Parameter Access
popdraw.ulhPopup Drawing Functions

User Language Programs

Key bindings and menu assignments defined with the uifsetup User Language program have been considerably changed.

With BAE Version 4.0 the following User Language programs for implicit program call are provided:

IPProgram NameShort Description
STD bae_st BAE Startup Action
bae_load BAE Load Action
bae_save BAE Save Action
bae_tool BAE Toolbar Action
bae_zoom BAE Zoom Action

Note that these programs should be compiled using the User Language Compiler as in

>  ulc bae_st.ulh -cp scm_st ged_st ap_st ar_st cam_st cv_st ced_st -O Return/Enter Key (CR) 
>  ulc bae_load.ulh -cp scm_load ged_load ap_load ar_load cam_load cv_load ced_load -O Return/Enter Key (CR) 
>  ulc bae_save.ulh -cp scm_save ged_save ap_save ar_save cam_save cv_save ced_save -O Return/Enter Key (CR) 
>  ulc bae_tool.ulh -cp scm_tool ged_tool ap_tool ar_tool cam_tool cv_tool ced_tool -O Return/Enter Key (CR) 
>  ulc bae_zoom.ulh -cp scm_zoom ged_zoom ap_zoom ar_zoom cam_zoom cv_zoom ced_zoom -O Return/Enter Key (CR) 

to generate the interpreter-specific programs for implicit program call.

The following new User Language programs have been implemented with BAE Version 4.0:

IPProgram NameShort Description
STD delcolor Delete Selectable Color Table
disputil Display Utilities
distance Distance Query
hlpkeys Online Help - Key Bindings Display
hlpprod Online Help - BAE Product Information
info Info
mmb Middle Mouse Button Interaction
tbattach Attach Toolbar
toolbar Toolbar
zoomin Zoom In
zoomout Zoom Out
SCM sautonam Automatic Schematic Symbol Rename Utilities
sbrowse Schematic Symbol Browser
slabchk SCM Label Name Check
tbdvscm SCM Toolbar Design View Maintenance
LAY ldefmang Layout Library Symbol Placement Prefences Definition
routinfo Routing Data Analysis
tbdvlay Layout Toolbar Design View Maintenance
GED lbrowse Layout Symbol Browser
CAM powdchk Power Layer Heattrap Check
CV cvsetup CAM View Setup

User Language Program Compilation

When installing the BAE software, all User Language source files will be stored to a special directory named baeulc. Some of the BAE User Language programs will define implicit User Language program calls (startups, menu assignments, key bindings). Please consider that you might loose part of previously installed startups, menu assignments, or key bindings when compiling the User Language programs after Bartels AutoEngineer update installations.

With the BAE software, the cplsll.bat and cpldll.bat compile batch files are provided in the baeulc directory. CPLSLL (ComPiLe with Static Link Library) first generates a User Language library from the BAE include files and then compiles all BAE User Language programs with required machine code from the previously generated library statically linked to the programs. CPLDLL (ComPiLe with Dynamic Link Libraries) first generates a User Language library from the BAE include file hierarchy, and then compiles all BAE User Language programs with information for dynamically linking at runtime with required machine code from the previously generated library.

Dynamic linking significantly reduces disk space requirements for storing compiled programs. Note however that dynamic linking must be done by the User Language Interpreter, thus requiring more CPU time for loading programs and increasing main memory requirements for loading redundant code from dynamic link libraries. Note also that at changes of dynamic link libraries each program referring these libraries must be recompiled for compatibility reasons. Therefore static linking (compile batch file cplsll.bat) is preferable to dynamic linking (compile batch file cpldll.bat) whenever enough disk space is available and/or CPU performance is poor. From under DOS the compile batch may be started by typing either

> cplsll Return/Enter Key (CR)

or

> cpldll Return/Enter Key (CR)

to the DOS prompt from the baeulc directory. From under UNIX the compile batch may be started by typing either

> cplsll.bat Return/Enter Key (CR)

or

> cpldll.bat Return/Enter Key (CR)

to the UNIX shell prompt from the baeulc directory. The compilation process might last some time (according to the power of your computer). After successful processing of the batch file all of the User Language programs distributed with the BAE software are available.

It is strongly recommended to install and compile the BAE User Language programs since these programs provide a wide range of additional BAE features such as menu definitions, key assignments, extended report functions, advanced edit utilities, data I/O interfaces, library management tools, etc. With Bartels User Language adds incredible power and flexibility to the Bartels AutoEngineer; almost any customer-specific problem arising with the use of BAE can be solved in a minimum of time without the need of waiting on a new BAE software release. It is recommended to test the distributed User Language programs using example jobs to gain an overview on the hundreds of BAE add-on functions implemented with these programs. For sure you will find a lot of useful functions satisfying your needs either directly or slightly modified. User Language program customization is easily possible since all programs are shipped in source code with extensive inline documentation. If you are not experienced in programming or simply haven't got the time, just contact Bartels Support in case you have some requirement on additional BAE features.

Menu Assignments and Key Bindings

With the BAE software the User Language startup program bae_st.ulh is provided. This program can be compiled to generate the interpreter-specific startup programs scm_st, ged_st, ap_st, ar_st, cam_st, cv_st and ced_st (with IC Design option), respectively. These programs are automatically started when entering the corresponding User Language Interpreter environment (Schematic Editor, Layout Editor, Autoplacement, Neural Autorouter, CAM Processor, CAM View or Chip Editor, respectively). Each of these programs performs an indirect call to the uifsetup User Language program. uifsetup automatically activates predefined menu assignments and key bindings for the currently active BAE program module. This kind of program system organization involves considerable advantage on software maintenance: arbitrary changes on menu assignments and key bindings require modification (and re-compilation) of uifsetup source code only. The hlpkeys User Language program can be used to list the current key bindings. The uifdump User Language program can be used to generate an ASCII report file providing complete information on the menu assignments and key bindings of the currently active BAE program module. The uifreset User Language program may be used to reset all currently defined menu assignments and key bindings of the currently active BAE program module. uifsetup, uifdump, and uifreset may also be called from the menu of the keyprog User Language program which also provides comfortable functions for online key programming.

Bartels :: Bartels AutoEngineer :: BAE Documentation :: BAE V4.0 Release Notes

Bartels AutoEngineer® - Version 4.0 - Release Notes
© 1985-2017 Oliver Bartels F+E • Updated: 11 October 2010, 10:32 [UTC]

© 1985-2017 Oliver Bartels F+E Bartels Homepage Contact and Corporate Info

Web Development by Baumeister Mediasoft Engineering

Bartels AutoEngineer® Version 4.0 Freigabemitteilungen - Deutsche Version Bartels AutoEngineer® Version 4.0 Release Notes - English Version