All documentation
I-QU PLUS-1/Installation

Installing User-Written CALC Database Procedures

How to collect user-written CALC DBPs into the I-QU PLUS-1 single-thread DMR and into the CALSIM simulator.

Last updated February 19, 1996

Two separate inclusions

Customers with local user-written CALC database procedures (DBPs) need to install them in two places when using I-QU PLUS-1: the single-thread DMR collected with I-QU PLUS-1, and the CALSIM simulator used by the DEFINE C directive. The two paths are independent — the procedure is collected twice.

Note: The CALSIM modifications described here apply only to “Old CALC” database procedures. I-QU PLUS-1 does not currently simulate the post-DMS1100-level-8 standard form.

Single-thread DMR

  1. Generate I-QU PLUS-1 normally
  2. Follow the procedure in section 3.4.3 ("Database Procedure SGSs") of the I-QU PLUS-1 Installation Guide
  3. Run DBPGEN against a fresh copy of the schema absolute (no prior DBPGEN/DBPUP)
  4. Place the result in a separate schema/subschema file from the multi-thread interface

Adding up to three DBPs to CALSIM

Apply COMUS corrections to the CALSIM element to dispatch DEFINE C reserved names U1/U2/U3 to your routine entry points, then add IN directives to GENSKEL so the relocatables are linked.

*CALSIM
-162  TNE,U  A4,2          . Was U1 on DEF C?
      J      CS00U1        . Yes
      TNE,U  A4,3          . Was U2 on DEF C?
      J      CS00U2
      TNE,U  A4,4          . Was U3 on DEF C?
      J      CS00U3
-169
CS00U1 J  CALC-entry-1
       J  CS0700
CS00U2 J  CALC-entry-2
       J  CS0700
CS00U3 J  CALC-entry-3
       J  CS0700

Then update GENSKEL (look for DEF CALSIM and place the IN lines immediately before it):

IN pf.U1-relocatable
IN pf.U2-relocatable
IN pf.U3-relocatable

More than three DBPs

Adding a fourth (or further) DBP requires changes to five elements: CALSIM, GENSKEL, IQUCDMS, KEYWORDS, and PARSE. Entries in KEYWORDS and PARSE have a one-to-one relationship; the first reserved name (U1, U2, …) is used on DEFINE C, and the second (T-U1, T-U2, …) is the internal name referenced from IQUCDMS.

  1. Do a vanilla TAPE-TO-DISK gen of I-QU PLUS-1
  2. Manually edit GENSKEL in the F0 file
  3. Apply COMUS corrections to CALSIM, IQUCDMS, KEYWORDS, and PARSE
  4. Provide SGSs for CO$TCONPROCESSOR, CO$MCONPROCESSOR, and CO$DCONPROCESSOR (5R1 or higher)
  5. Run an ALL-type COMUS BUILD (DISK-TO-TAPE or DISK-TO-DISK)
  6. Run COMUS INSTALL
Note: More than three routines is not supported in-house. Install a second copy of I-QU PLUS-1 under a second mode so your existing copy continues to function.