[Mentor Technologies]

Da_Window Userware


[Userware Banner]

The da_window userware defines a number of functions which are common to the schematic and symbol editors.

It defines as well a number of external variables that are used by the symbol creation utilities in the symbol editor. These variables can be modified in your own Personality Module in order for the symbol creation to conform to your own company standards.

Those external variables are divided by body type (MG_STD, ANSI/IEC, ANSI/IEEE, DISCRETE, FUNCTIONAL BLOCK and OTHER) and property type (DIGITAL, ANALOG, PASSIVE, MECHANICAL, FUNCTIONAL BLOCK and OTHER) so that different symbols can have different specifications.

Here is a list of all the external variables that are being used by the userware:

//----------------------------------------------------------------------
//
//    If you have to change any of these variables create and modify one of :
//       COMPANY_HOME/userware/company_da/userware/default/da_window.dofile
//       $MGC_HOME/shared/etc/cust/des_arch/da_window.dofile
//       $MGC_HOME/etc/cust/des_arch/da_window.dofile
//       $HOME/mgc/userware/des_arch/da_window.dofile
//
//    All units are in pin spacing units (1 pin grid).
//
//----------------------------------------------------------------------

// Default global pin spacing
extern mt_global_pin_spacing = 1;
extern symbol_pin_spacing = 1;
extern functional_block_pin_spacing = 2;
extern bold_line_width = @p3;

// Default PIN/SYMBOL BODY properties text height
extern mt_pin_property_text_height = 0.6;
extern mt_body_property_text_height = 0.6;
extern mt_small_property_text_height = 0.2;
extern mt_functional_pin_property_text_height = 0.6;
extern mt_functional_block_property_text_height = 1.0;

// Default property horizontal justification
extern mt_body_property_hjustification = @center;

// Default COMP property stability
extern mt_comp_property_stability_switch = @nonremovable;

extern mt_body_property_spacing = 1.0;
extern mt_small_property_spacing = 0.3;

extern mt_pin_property_offset = 0.1;
extern mt_body_property_offset = 0.4;

extern mt_pin_name_offset = [0.6, 0.0];
extern mt_pinid_name_offset = [0.4, 0.0];
extern mt_mg_std_pin_no_offset = [0.4, 0.2];
extern mt_mg_std_pin_no_vertical_offset = [0.4, 0.2];
extern mt_ansi_pin_no_offset = [0.6, 0.2];
extern mt_ansi_pin_no_vertical_offset = [0.6, 0.2];
extern mt_iec_pin_no_offset = [0.6, 0.2];
extern mt_iec_pin_no_vertical_offset = [0.6, 0.2];
extern mt_discrete_pin_no_offset = [0.6, 0.2];
extern mt_discrete_pin_no_vertical_offset = [0.8, 0.3];
extern mt_functional_block_pin_name_offset = [0.4, 0.0];
extern mt_functional_block_net_name_offset = [0.2, 0.2];

// Default text to overbar spacing
extern mt_text_overbar_spacing = 0.1;
extern mt_split_whisker_length = 1.0;

// MG_STD symbol body/whisker
extern mt_mg_std_whisker_length = 1.2;
extern mt_mg_std_inverted_radius = 0.3;
extern mt_mg_std_clock_length = 0.7;
extern mt_mg_std_clock_height = 0.6;
extern mt_mg_std_rectangle_offset = 0.8;
extern mt_mg_std_ctrl_offset = 0.6;

extern mt_ansi_whisker_length = 1.8;
extern mt_ansi_inverted_type = @triangle; // @circle
extern mt_ansi_inverted_length = 0.8;
extern mt_ansi_inverted_height = 0.4;
extern mt_ansi_inverted_radius = 0.3;
extern mt_ansi_clock_length = 0.8;
extern mt_ansi_clock_height = 0.6;
extern mt_ansi_rectangle_offset = 0.8;
extern mt_ansi_ctrl_offset = 0.6;

extern mt_ansi_ixo_length = 0.4;
extern mt_ansi_ixo_height = 0.4;
extern mt_ansi_ixo_offset = 0.2;
extern mt_ansi_nonlogic_length = 0.4;
extern mt_ansi_nonlogic_center_offset = [0.4, 0.0];
extern mt_ansi_digital_length = 0.4;
extern mt_ansi_digital_line_spacing = 0.2;
extern mt_ansi_digital_center_offset = [0.4, 0.3];
extern mt_ansi_analog_height = 0.2;
extern mt_ansi_analog_radius = 0.15;
extern mt_ansi_analog_center_offset = [0.4, 0.3];

extern mt_iec_whisker_length = 1.8;
extern mt_iec_inverted_radius = 0.3;
extern mt_iec_clock_length = 0.8;
extern mt_iec_clock_height = 0.6;
extern mt_iec_rectangle_offset = 0.8;
extern mt_iec_ctrl_offset = 0.6;

extern mt_iec_ixo_length = 0.4;
extern mt_iec_ixo_height = 0.4;
extern mt_iec_ixo_offset = 0.2;
extern mt_iec_nonlogic_length = 0.4;
extern mt_iec_nonlogic_center_offset = [0.4, 0.0];
extern mt_iec_digital_length = 0.4;
extern mt_iec_digital_line_spacing = 0.2;
extern mt_iec_digital_center_offset = [0.4, 0.3];
extern mt_iec_analog_height = 0.2;
extern mt_iec_analog_radius = 0.15;
extern mt_iec_analog_center_offset = [0.4, 0.3];

extern mt_discrete_whisker_length = 1.0;
extern mt_discrete_inverted_radius = 0.3;
extern mt_discrete_clock_length = 0.7;
extern mt_discrete_clock_height = 0.6;
extern mt_discrete_rectangle_offset = 0.5;
extern mt_discrete_ctrl_offset = 0.6;

extern mt_capacitor_height = 1.0;
extern mt_diode_height = 0.8;
extern mt_inductor_height = 0.5;
extern mt_resistor_height = 0.5;

extern mt_functional_block_whisker_length = 1.0;
extern mt_functional_block_inverted_radius = 0.3;
extern mt_functional_block_clock_length = 0.7;
extern mt_functional_block_clock_height = 0.6;
extern mt_functional_block_rectangle_offset = 1.0;
extern mt_functional_block_ctrl_offset = 0.5;

// Default other whisker length
extern mt_other_whisker_length = 1.0;

// Default ASIM_MODEL/DESC/MFG/PKG/RTG/TOLER property names
extern mt_asim_model_name = "VALUE";
extern mt_desc_name = "DESC";
extern mt_mfg_name = "MFG";
extern mt_pkg_name = "PKG";
extern mt_rtg_name = "RTG";
extern mt_tol_name = "TOLER";

// Default GROUND/VCC/VDD net names
extern mt_ground_name = "GROUND";
extern mt_vcc_name = "VCC";
extern mt_vdd_name = "VDD";

// Default PIN properties
extern mt_digital_required_pin_property          = ["PIN", "PIN_NO", "PINTYPE", "PIN_SWAP", "PIN_GROUP", "RISE", "FALL", "DRIVE", "STABLE", "DECAY", "INIT"];
extern mt_discrete_required_pin_property         = ["PIN", "PIN_NO", "PINTYPE", "PIN_SWAP", "PIN_GROUP", "RISE", "FALL", "DRIVE"];
extern mt_functional_block_required_pin_property = ["PIN", "PINTYPE", "NET"];

// Default SYMBOL BODY properties
extern mt_digital_property_list          = ["COMP", "REF", "REF_GROUP", "INST", "MODEL", "MODELFILE", "MODEL_PASS", "SPEED"];
extern mt_power_pins_property_list       = ["POWER_NETS", "POWER_PINS", "POWER_PINS1", "POWER_PINS2", "POWER_PINS3", "POWER_PINS4"];
extern mt_analog_property_list           = ["COMP", "REF", "REF_GROUP", "INST", "VALUE", "RTG", "TOLER", "ELEMENT", "ASIM_MODEL", "MODEL", "ASIM_PARAM", "INSTPAR", "INSTPARTOL", "VARIANT", "SHARED"];
extern mt_passive_property_list          = ["COMP", "REF", "REF_GROUP", "INST", "VALUE", "RTG", "TOLER", "ELEMENT", "ASIM_MODEL", "MODEL", "ASIM_PARAM", "INSTPAR", "INSTPARTOL", "VARIANT", "BRES_VALUE"];
extern mt_mechanical_property_list       = ["COMP", "REF", "REF_GROUP", "INST", "MODEL", "PCB_INST", "CURRENT", "VALUE", "VOLTAGE"];
extern mt_pcb_property_list              = ["PART_NO", "BRD_LOC", "GEOM", "POW_TYP", "REFLOC", "DEC_CAP", "SWAPPING", "PLACEMENT_REGION", "PKG", "TECH"];
extern mt_mfg_property_list              = ["MFG", "MFG_PART_NO", "DESC"];
extern mt_functional_block_property_list = ["INST", "SHEET_ID"];

// Default property_list properties
extern mt_digital_property_name    = ["GEOM",                                  "PART_NO             GEOM                DESC", [], ""];
extern mt_analog_property_name     = ["ASIM_MODEL",                            "PART_NO             GEOM                DESC", [], ""];
extern mt_passive_property_name    = ["VALUE           RTG             TOLER", "PART_NO             GEOM                DESC", [], ""];
extern mt_mechanical_property_name = ["CURRENT",                               "PART_NO             GEOM                DESC", [], ""];

//----------------------------------------------------------------------


List of functions:

List of function keys and strokes:

The following table lists predefined function keys, control keys, mouse buttons and strokes with their function names and a description of the action they perform.

Key Name Description
$stroke_25852()
Stroke 25852
Flips vertically selected objects around the basepoint. If a single instance is selected it will be first disconnected and reconnected after flipping.
$stroke_65456()
Stroke 65456
Flips horizontally selected objects around the basepoint. If a single instance is selected it will be first disconnected and reconnected after flipping.
$stroke_5()
Stroke 5
Does a View Centered if the value of the mt_pan_mode internal state variable is set to @single.
$stroke_654()
Stroke 654
Closes the active window if the value of the mt_stroke_mode internal state variable is set to @close.
$key_f5c()
Control-F5
Performs the MT error checking on the sheet or the symbol.
$key_control_r()
Control-R
Redraws the display.
$key_lmb2s()
Double-Click Shift-LMB
Displays the Change Part View by List dialog box.


Userware Version: v8.5_4.13
Last Modified: 27 November 1997 -- [mailto] webmaster@eda.com.au