Compiler Version for IBM, COMPAQ, and 100% Compatible Personal Computers
Publication Date: October 1991 Document Number: 501-915-01 Rev. C Copyright Notice
The KDAC500 software and this documentation are copyrighted with all rights reserved by Keithley Instruments, Inc., Cleveland, Ohio. No part of this product may be copied or repro- duced by any mechanical, photographic, electronic or other method without prior written consent of Keithley Instruments, Inc.
The KDAC500 software, including all files and data, and the diskettes on which it is con- tained (the "Licensed Software"), is licensed to you, the end user, for your own use. You do not obtain title to the licensed software. You may not sublicense, rent, lease, convey, modify, translate, convert to another programming language, decompile, or disassemble the licensed software for any purpose.
You may: a) use the software on a single machine; b) copy the software into any machine- readable or printed form only for backup in support of your use of the program on the single machine; and, c) transfer the programs and license to use to another party if the other party agrees to accept the terms and conditions of the licensing agreement. If you transfer the pro- grams, you must at the same time transfer all copies whether in printed or in machine- readable form to the same party or destroy any copies not transferred.
The KDAC500 software has been thoroughly tested and the documentation reviewed. How- ever, Keithley Instruments, Inc. does not warrant that the KDAC500 software will operate as described in this manual in every hardware and software environment. Further, Keithley In- struments, Inc. does not warrant the performance of the product for any particular purpose.
In no event is Keithley Instruments, Inc. liable for any damages resulting, directly or indi- rectly, from the use of this product.
Copyright (0) July 1989 Keithley Metrabyte/Asyst/DAC Data Acquisition Division 440 Myles Standish Blvd. Taunton, MA 02780 1-508-880-3000
All Keithley product names are trademarks or registered trademarks of Keithley Instruments, Inc. Other brand and product names are trademarks or registered trademarks of their representative holders. Table of Contents
WhatYouWillNeedtoRunKDAC500.. ................................... 1-3 InstallingKDAC500 ................................................... 1-5 Running the CONFIG Program ........................................... l-19 Methods of Creating a KDAC500 Program .................................. l-29 Methods of R unning a KDACSOO Program .................................. l-35 Operating more than One Data Acquisition System on a Single Computer ........... l-37 Initializing Hardware at Power-up with HARDINIT ........................... l-39
Brief Listing of KDAC500 Functions ....................................... 3-3 General Considerations ................................................ 3-5 CommandFormat .................................................... 3-9
Chapter 4 - KDACSOOCommands
Appendix A - Summary of KDAC500 Commands and Parameters
Appendix B - KDAC500 Error Messages
Appendix C - KDAC500 Function List
Appendix D - Engineering Unit Conversions
Appendix E - Running KDAC500/M Under the Microsoft QuickBASIC Environment Upgrade Notes For KDAC500 Version 1.4
Changes in KDACSOOVersion 1.4
The following changes have been made in KDACSOOVersion 1.4. This information collectively covers interpreter and compiler versions of the software as noted.
Enhanced language support in KDAGOO/M - The following Microsoft languages are supported by KDACSOO/M:
Microsoft QuickBASIC 4.0 Microsoft Fortran 5.0 Microsoft QuickBASIC 4.5 Microsoft BASIC P.D.S. 7.0 Microsoft QuickPascal 1.0 Microsoft BASIC P.D.S. 7.1 Microsoft C 5.0,5.1,6.0
Enhanced language support in KDACSOO/B - The following Borland languages are now supported by KDACSOO/B:
Turbo Pascal 5.0 Turbo C 1.0 Turbo Pascal 5.5 Turbo C 1.5 Turbo Pascal 6.0 Turbo C+ + 1.0
Documentation changes - The contents of previous KDACSOO/B and /M addenda have been integrated into the KDACSOO Compiler Manual. There is no additional documentation other than this manual.
NOTES ON TURBO PASCAL:
The Turbo Pascal Unit for Turbo Pascal 5.0 is named KDAC5OO.T50. The Turbo Pascal Unit for Turbo Pascal 5.5 is named KDAC5OO.T55. The Turbo Pascal Unit for Turbo Pascal 6.0 is named KDACSWTPU.
In order for Turbo Pascal to find the KDACSOOTPU files they MUST have a .TPU extension. If you are using Turbo Pascal 5.x you should delete KDACSOO.TPU from your installed version of the software and rename KDACSOO.TSx to KDACSOO.TPU. DO NOT delete KDACSOO.TPU from the distribution disks! If you use the wrong version of TPU file the Turbo Pascal compiler will generate an error message and will not be able to compile your program.
The functional interface between all versions of Turbo Pascal is exactly the same. The format of the TPU file is different, however.
KDACSOO1.4 Upgrade Notes - 1 NOTES ON TURBO C+ +:
Turbo C+ + 1.0 is supported by KDACSOO/B. However, the KDAC500 interface library is a C style library and not a C+ + library. In order to prevent Turbo C+ + from "mangling" the KDACSOO function names you will need to include the following statements when including the KDAC500 header file:
Since Turbo C+ + is also a C compiler, you can create C programs using KDACSOOwith the same library file. The Turbo C+ + library tile for KDACSOOis named TURB05OO.LIB. The file TURB05OO.LIB is used for all versions of Turbo C as well as Turbo C+ + .
NOTES ON MICROSOFT BASIC PDS:
KDACSOO Version 1.4 is compatible with the Microsoft BASIC Professional Development System Version 7.0 and 7.1 for operation under DOS only. KDACSOOwill not run under OS/2 or Microsoft Windows. Libraries are included on the KDACSOO/M diskettes to facilitate running KDACSOCI under the BASIC 7 QBX environment:
KDACQBX.LIB KDACQBX.QLB
The file KDACQBX.LlB contains the object modules that make up the KDACSOO interface. The file KDACQBX.QLB is a quick library for the QuickBASIC Extended (QBX) environment. These files are NOT compatible with Microsoft QuickBASIC.
All BASIC 7.x modules that are compiled for use with KDACSOOmust use FAR STRINGS. This means that they must be compiled using the /Fs option. According to the BASIC PDS Programmer's Guide, "If you are linking new code containing far strings with older code containing near strings, you must recompile the old code using the /Fs option. Otherwise the program will return an error message "LOW LEVEL INITIALIZATION and terminate."
NOTES ON MICROSOFT QuickPascal:
KDACSOO Version 1.4 is compatible with the Microsoft Quick Pascal Version 1.0. Every place that Turbo Pascal is referred to in the Kdac5OO/M manual also applies to QuickPascal. QuickPascal is functionally equivalent to Turbo Pascal. All the Language Syntax statements for Turbo Pascal also apply to QuickPas- cal.
The support unit for QuickPascal is named KDACSOO.QPU. This file should either be in your working directory (it will automatically be copied there during installation) or in the QuickPascal UNIT directory.
KDACSOO1.4 Upgrade Notes - 2 CHANGES TO KDACSOO/I
The only significant changes in KDACSOO Version 1.4 apply to Borland Turbo Pascal support for KDACSOO/B, and Microsoft Professional BASIC support for KDACSOO/M. The KDACSOO/I Version 1.3 manual, Revision C, also covers KDACSOO/I Version 1.4.
Changes in KDAC500 Version 1.3
The following changes have been made in KDACSOO Version 1.3. This information collectively covers interpreter and compiler versions of the software as noted. The contents of the addenda for KDAC5OO/I and KDACSOO/B/M differ slightly.
SUPPORT FOR THE WAVl MODULE (all versions) - KDACSOOV1.3 includes new commands for program- ming the WAVl waveform generator module.
REVISED DOCUMENTATION -
Installation Section:
NEW INSTALL SECTION (all versions) - Previous addenda concerning the installation of KDACSOO have been incorporated into a revised installation section for KDACSOO V1.3. Replace your existing installation information with this new section.
"Methods..." Sections:
GENERAL NOTES, PLUS NEW INFORMATION FOR USING FORTRAN (KDACSOO/B/M only) - The "Methods of Creating a KDAC500 Program" and "Methods of Running a KDAC500 Program" sec- tions have been updated. Replace your existing pages with these new pages.
Command Section:
INTON (all versions) - Revised pages are included for the INTON command. Replace your existing INTON pages with the new pages.
KDCLOCK (KDACSOO/B/M only) - A revised page for the KDCLCOK command is included for com- piler versions of KDACSOO.The page includes an example for KDACSOO/M and QuickBASIC. Replace your existing KDCLOCK page with this new page.
WAV and WAVSETUP (all versions) - New pages are included for the WAV and WAVSETUP com- mands. Insert these pages at the end of the KDACSOOcommand section.
KDACSOO/MEXAMPLE PROGRAMS NOW INCLUDED (KDACSOO/B/M only) - An application note and examples covering programming with KDACSOO/M and Microsoft QuickBASIC 4.5 have been added to the KDACSOO/B/M (compiler version) manual. This information also discusses running KDACSOO/M under the QuickBASIC environment. Add these pages to the end of the KDACSOO command section.
ENHANCEMENTS IN CONFIG.EXE (all versions) - The WAVl now appears in CONFIG's list of available modules.
KDACSOO Upgrade Notes - 3 1.4 MICROSOFT BASIC 7 IS NOT SUPPORTED (KDACSOO/B/M only) - None of the Microsoft Professional Development System BASIC Versions (6.0,7.0,7.1) are not supported for use with KDACSOO/M. You can, however, use Microsoft Professional BASIC to perform low-level access to the Keithley hardware by PEEKing and POKEing the data acquisition system command registers. In this case, KDACSOO is not used.
TRIGGER/KDTIMER BUG FIXED (all versions) - A bug which prevented KDTIMER from waiting for a back- ground trigger has been fried.
ANINQ BUG FIXED (all versions) - For multi-channel acquisition, the ANINQ command sometimes returned incorrect data to the fust width in the data array. This has been faed.
PASSING PARAMETERS TO BASICA WORKS AS DOCUMENTED (KDACSOO/I only) - KDACSOO/I V1.3 now permits passing the BASIC interpreter start-up parameters such as number of files open, buffer size, etc. These modifiers are added to the batch command used to start KDACSOO, e.g. "KDACSOO/F:5 /s:32".
Changes in KDACSOOVersion 1.2
The following changes were made in KDACSOCI Version 1.2. This information covers interpreter and compiler versions of the software as noted.
KDACSOO/I EXAMPLE PROGRAMS NOW INCLUDED (KDAC5OO/I only) - The KDACSOO/I distribution dis- kettes include several example programs which exercise most KDACSOO/I commands. The programs are stored on both the 5 " KDACSOO/I Library disk and the 3 ' combined disk under the directory "EXAM- PLES". The programs are also listed in the KDACSOO/I manual (Rev. B or later) at the end of the com- mand section.
SIMPLIFIED INSTALLATION (all versions) - The installation process now uses a single INSTALL.EXE tile to copy files, test the system environment, and generate the necessary KDACSOO files. Previous KDAC500 versions used INSTALL.BAT and KINSTALLBXE to perform these functions.
NOTE: If you choose NM1 as the interrupt method, you must select and execute the NM1 Interlock Test. On 2%-based (AT) computers, the NM1 Interlock Test will cycle the NM1 while displaying a window showing test counts and remaining time. On SOS%and SO3%-based computers, INSTALL will set the interrupt mask information, and then exit the test without exercising the interrupt test.
CHANGES IN THE INSTALL SCREEN (all versions) - The installation environment screen now shows the speed determined for the master IBIN interface, rather than the system bus or clock speed. This informa- tion is for reference, and will not affect how you perform the installation. If the installation environment screen shows a negative amount for system memory, you have insufficient memory to do an installation. 640k of system RAM is recommended. Abort INSTALL by pressing . Check your DOS AUTOEXEC.BAT and CONPIG.SYS files for resident programs or other memory users, and eliminate as many as possible. Rerun INSTALL.
KDACSOO1.4 Upgrade Notes - 4 MORE ACCURATE ASSESSMENT OF PROCESSOR SPEED (all versions) - The new installation program more accurately determines the computer processor speed, particularly in faster 2% and 3&based machines. KDACSOO has been tested on 25MHz 3%based computers, and should be compatible with 33Mhz systems as well.
INTERNAL CHANGES IN KINSTALLKIF AND CLKSPD.COM (all versions) - The installation "KIF' file includes new parameters which record additional diagnostic information concerning system timing. The new installation is not compatible with KIF files from earlier KDACSOOversions. If you have an earlier version of the software, do not install KDACSOO 1.2 in the same directory or you may mix old and new files.
The structure of the CLKSPD.COM file in KDAC.500 V1.2 differs from CLKSPD.COM in older versions. Information concerning the location of various operating parameters and variables within older CLKSPD.COM files is not valid for the V1.2 CLKSPD.COM.
ENHANCEMENTS IN CONFIG.EXE (all versions) - The CONFIG.EXE file has been recompiled for greater speed. The handling of some modules has been improved. Minor problems in CONFIG have been cor- rected.
Additional modules appear in the hardware set-up screen. The AMMl module selection provides choices for AMMl or AMMlA. The AIM3 module selection provides choices for AIM3 and AIM3A. The single module designation "DIOl" covers both the DIOl and DIOlA.
IMPROVED HANDLING OF THE AIM3A IN CONFIG (all versions) - Previous versions of CONFIG permitted the AIM3A to be assigned a cold-junction reference IONAME even though the AIM3A has no CJR or channel 32. This could result in problems at run time. The V1.2 CONFIG program will no longer accept a reference junction IONAME for the AIM3A. You may use an older CONFIG.TBL fde with KDACSOO V1.2. However, any IONAMEs which reference channel 32 on an AIM3A will be ignored.
A bug affecting KDACSOO'srecognition of IONAMEs for the AIM3A has been fued.
CHANGES IN THE HANDLING OF THE TRGl MODULE IN CONFIG (all versions) - Two changes have been made in how CONFIG handles the TRGl module:
Fist, KDACSOO V1.2 treats the TRGl module as an analog module. Previous KDACSOO versions treated the TRGl as a digital module because of the TRGl's digital trigger output signal.
If you are using a TRGl with KDACSOOV1.2, you must reinstall the module in CONFIG, and recreate the TRGl IONAMEs. You may use an older CONFIG.TBL file with KDACSOO V1.2. However, any IONAMEs which reference a TRGl will cause an error message when KDINIT is executed.
Second, the TRIG1 module can now be used as a single channel of differential analog input. Set up an IONAME which references the TRIG1 input channel, and then include the IONAME in an analog input command. The IONAME can include the following set-up parameters:
KDACSOO 1.4 Upgrade Notes - 5 Local gain of xl or x10. Default = xl. Global gain of xl, x2, x5, or x10. Default = xl. AC or DC coupling. Default = DC. Filter of 3OOHz - 1Mhz. Default = 1MHz.
ENHANCEMENTS TO INTON (all versions) - The INTON command now accepts Hertz (HZ) and millihertz (MILHZ) as time units. The legal ranges are O-65535 Hertz and O-65,535 millihertz. The maximum achiev- able rate on a 3%-based computer is approximately 6,OOOHz; slower on 2% and XT type systems. Specifying too high an interrupt rate may lock up the computer.
IMPROVED ACCURACY FOR TEMPERATURE CONVERSIONS (all versions) - In KDACSOO Vl.2, tempera- ture EUF routines dynamically select temperature conversion constants based on thermocouple and reference junction output voltages.
FIX IN GRAPHIC OVERLAYS (all versions) - When two identical graphics commands were issued consecutively in a program, the second graphics command might not produce a graph. For example, if HGRAPHRT com- mands were called in two consecutive program lines, only the first HGRAPHRT would plot a graph. This problem has been corrected.
BACKING UP YOUR KDACSOODISKE'ITES (all versions) - If you need to make back-up copies of the original KDACSOO diskettes, do so with the DOS DISKCOPY command. Using a simple DOS COPY or XCOPY command produces backups which will not function correctly when INSTALLEXE is executed.
KDACSOO 1.4 Upgrade Notes - 6 Updates and Errata
Please observe the following notes, errors, and updates pertaining to the KDACSOOmanual.
Chapter 1, Getting Started:
1. * New Installation Section (all versions) - integrates all previous changes to the installation procedure into a new replacement installation section for the manual.
2. * Methods of Creating a KDAC500 Program (KDACSOO/B/M only) - additional instructions have been included for programming with Microsoft FORTRAN. These are contained in a new replacement section for the manual.
3. * Methods of Running a KDACSOO Program (KDACSOO/B/M only) - notes and changes have been included in a new replacement section for the manual.
Chapter 2, "Engineering Units Conversion" (KDACSOO/I only):
1. The Engineering Unit Flag for LVDT/RVDT sensors under KDACSOO/I is "C.AIM9.D" rather than "CXM9D" which is shown in the KDACSCMl/Imanual.
Chapter 4, "KDACSOO Commands" (all versions):
1. ARLOAD - A dummy string (up to 255 characters) must be created for the array name prior to running ARLOAD. If the actual array name is shorter than the dummy string, the resulting array name will be padded by spaces, with length equal to that of the dummy string.
For example, if the dummy name is defined as ARN$ = SPACE$(12) and the actual name is "DATA%", ARN$ will equal "DATA%" plus 7 spaces ( "DATA% ' ) after the ARLOAD.
2. ARGET/ARPUT - The ION$ parameter takes precedence over the WID% parameter. To identify a par- ticular data set by its width parameter, set the ION$ parameter to "' (two adjacent double quotes).
3. ARSAVE - The legal time units for ARSAVE now include HZ and MILHZ. If the file is saved in one of the non-KDAC data formats using HZ or MILHZ as the time base, the time units column in the output file will be represented as fractions of a second.
4. ARSTATUS - A dummy string (up to 255 characters) must be created for the array label prior to running ARLOAD. If the actual array label is shorter than the associated dummy string, the resulting array label will be padded by spaces, with length equal to that of the dummy string. See ARLOAD command information listed above for similar requirements concerning the array name.
KDACSOO Upgrade Notes - 7 1.4 5. INTON - The fast data point acquired after INTON is issued will be taken after the specified interrupt period has elapsed.
6. KDCLOCK - Data returned for the year consists of four digits, e.g. "1990" rather than "90".
7. KDINIT - a DIOlA module and the digital section of a Model 575 will be initialized as follows when KDINIT is called: Ports A and B to logic 0; ports C and D to logic 1.
8. BGREAD and ARGET - If you intend to apply engineering units conversion, you should not mix IONAMEs for different types of modules (e.g. AIM7 and AIMS) in the same BGREAD command. This will cause the data from both types of modules to be stored in one KDACSOO array. When you issue an ARGET command with engineering units conversion, an error will be generated. Separate BGREAD commands should be used. If you plan to work exclusively in A/D counts or voltage, this limitation does not apply.
9. TRIGGER - The CHM parameter in the KDACSOOmanual shows the values "OFF" and "ON" for digital input. For interpreter BASIC and QuickBASIC only, these should be "OFF." and "ON."
10. KDCLOCK - The last line of the TIME%() parameter shows "Time%(50 year....". This should read "Tie%(S) year...".
11. FGRE+AD - The RANGE$ parameter shows W.READ_RESET" and "P2.READ ONLY" for pulse reading modes with PIMl and PIMZ. Correct syntax for BASICA and QuickBASIC is'P2.READ.RESET" and "P2.READ.ONLY".
Appendix A, "Installation of KDAC500/1 on a Dual 360K System" (KDACSOO/Ionly):
1. Under Step 3, Item 3 - KINSTALL.EXE is now INSTALL-EXE.
2. Under Step 4, Item 2 - KINSTALL.EXE is now INSTALLEXE.
KDACSOO Upgrade Notes - 8 1.4 Introduction
Welcome to the world of workstation data acquisition and control with Keithley's KDAC500, and thank you for selecting a Keithley product.
WHAT IS KDACZOO?
KDAC500 is a family of software products for data acquisition and control using Keithley's 5OOA, 5OOP,575 and 570 Measurement and Control Systems and IBM, Compaq, or 100% com- patible personal computers. The KDAC500 family consists of the following individual pack- ages:
KDAC500/1- an interpreter-based version which runs under Microsoft GWBASIC, IBM Ad- vanced BASIC (BASICA) and Compaq Advanced BASIC. KDAC500/1 is bundled with cer- tain Keithley hardware.
KDAC5OO/B- a compiler version of KDAC500 which runs under Borland's Turbo C and Turbo Pascal. KDAC500/B is available as an option.
KDAC5OO/M- a compiler version of KDAC500 which runs under Microsoft's C, QuickC, Quick Pascal, QuickBASIC, and FORTRAN. KDAC5OO/Mis available as an option.
Each package adds a number of new commands to its respective compatible language. Since KDAC500/1 runs under BASICA, it provides an easy, entry-level approach to data acquisi- tion programs under a language that is well-known and widely used. KDAC500/B and KDAC5OO/Mprovide an easy migration path for users who wish to upgrade from BASICA to faster, more structured compiler languages.
USING THIS MANUAL
In this manual you will find a complete description of the KDAC500 software package. This manual does not duplicate information in the computer hardware documentation or pro- gramming manuals except where necessary to explain specific features of KDAC500. This manual will not teach you how to program. If you need more help with programming, con- sult your local bookstore. There are numerous books available on programming languages and personal computers.
Many users of KDAC500/B and KDAC500/M will have had experience programming in Soft500, Quick500, or KDAC500/1. While these products are similar to KDAC500, there are important differences. This manual will make occasional reference to older software packages in order to call out some of those differences, and, hopefully, eliminate points of confusion for the user who is converting to KDAC500/B or KDAC500/M. If this is your first experience in programming for Keithley's data acquisition systems, these comments will not concern you.
i The first three chapters of this manual provide a quick introduction to the KDAC500 soft- ware, and cover topics such as installation, creating the hardware configuration table, run- ning KDAC500, etc. Chapter 4 includes a description of KDAC500 commands and an expla- nation of how each command is used. The commands are referenced alphabetically, and a list of all KDAC500 commands is included in the Appendix section. We recommend that you read your compiler manual and the Keithley KDAC500 manual before you begin installation and programmin g. Later, you can return to specific sections of the appropriate manual for more careful study. After a while, most users of KDAC500 will only need to use the com- mand reference section for finding the command, format, and the parameters to use with KDAC500 commands.
Some Typographical Conventions
1. In this manual, ah KDAC500 command parameters and reserved words are given in up- per case characters. Quoted strings, remarks and data statements will remain in the form input by the programmer. 2. Any items enclosed by square brackets [...I are optional. However, none of the KDAC500 commands contain options within their parameter lists. 3. The characters "<`I and `I>" delimit keystroke combinations, or file names which you must include as part of a keyboard entry. The "<" and `I>" marks themselves must not be entered. Examples include:
4. Any other punctuation that appears in the KDAC500 command format line must be en- tered as shown. However, there is some flexibility in the delimiters used to separate pa- rameters in a KDAC500 list. Valid delimiters are commas, spaces and tabs. CHAPTER 1 Getting Started
What You Will Need to Run KDAC500
Installing KDAC500
Running the CONFIG Program
Operating Modes for KDAC500
Methods of Creating a KDAC500 Program
Methods of Running a KDAC500 Program
Operating more than One Data Acquisition System on a Single Computer
Initializing Hardware at Power-up with HARDINIT What You Will Need to Run KDAC500
You will require the following items to install and run KDAC500:
DOS
You should have a DOS version which is approved by the manufacturer for use with your computer. Keithley recommends IBM PC-DOS 3.1 or later for IBM computers, Compaq DOS 3.0 or later for Compaq computers, and a manufacturer-approved version of MS-DOS 3.0 or later for compatibles. All versions of MS-DOS are not alike. A version which is optimized for use on one compatible may not operate properly on another. Versions of DOS earlier than the recommended versions may cause problems and should not be used.
COMPUTER
The KDAC500 Software System was developed to run on IBM PC, XT, AT, and PS/2 comput- ers, Compaq computers, and most compatibles. The INSTALL program used with KDAC500 performs an in-depth analysis of the computer, DOS, RAM workspace, and other hardware parameters. INSTALL then creates batch files named KLOAD.BAT and KRUNBAT, and a CLKSPD.COM file customized for the hardware environment. If INSTALL cannot accommo- date the hardware, it will abort the installation process and issue an error message. If this happens, contact the Keithley DAC applications department for assistance.
Your computer should have 640K of random access memory (RAM). A smaller RAM space will detract from the amount of data that can be acquired. Since you will also be running a compiler, make sure that your RAM space is also sufficient for that purpose. KDAC500 will not run on a system which has less than 512K of RAM. KDAC500 will not take advantage of L&l/EMS expanded memory or extended memory.
Your computer should have a fixed disk KDAC500 Compiler versions must be installed with, and have ready access to, the compiler you've chosen. The total storage space for a typical installation of KDAC500 plus compiler may be three megabytes or more. It is not realistic to operate these packages from floppy-based systems.
To take advantage of the graphics capabilities of KDAC500, your computer should have a suitable graphics adapter. This adapter may be an IBM Color Graphics Adapter, Hercules Color Card, IBM Enhanced Graphics Adapter, IBM Video Graphics Array, or 100% equiva- lent. If the adapter is non-IBM, it must be 100% compatible with its IBM counterpart. Compaq portable computers and some Compaq desktop machines have a built-in combined text-and- graphics adapter. This is also suitable for displaying KDAC500 graphics.
Some standard color graphics adapters have an NTSC composite color output which will dis- play graphics (without color) on a composite input monochrome monitor. These adapter/ monitor combinations are also suitable, although some adapters may translate certain color combinations into invisible or unreadable monochrome shades. Monochrome adapters can be used with KDAC500, although they will not support graphics. This includes Hercules (mono- chrome) Graphics cards and similar monochrome graphics cards.
l-3 Graphics adapters which require special driver programs, or which make non-standard use of the computer's non-maskable interrupt (NMI) will cause problems when KDAC500 is run.
A math coprocesser chip for the computer is optional. It will improve the speed of execution of some KDAC500 commands, notably the commands which manipulate KDAC500 arrays and do engineering units conversions. Compilers often take advantage of coprocessors, and will deliver various performance improvements. Installing KDAC500
Follow these instructions to in&ill the KDAC500 software on your computer system. These steps cover all versions of KDAC500, including the interpreter and compiler versions. The references to BASICA or GWBASIC concern installation of the interpreter version only, and are noted as such where they appear. Reference to compilers concern only the /B and /M versions.
Install the Keithley Data Acquisition Interface Card
Installation of the KDAC500 software is a dynamic process which actively checks various pa- rameters within the computer. If you have not done so already,,open your computer and in- stall your IBIN-A, IBIN-IS/Z, or System 570 interface card. Be sure to note all CAUTIONS and WARNINGS for relevant safety information. If necessary, get a technician to assist you.
A 1 WARNING: UNPLUG ALL POWER CORDS TO THE COMPUTER AND DATA AC- QUISITION HARDWARE BEFORE YOU ATTEMPT INSTALLATION.
KDAC500 is normally shipped as two 5-l /4", 360K diskettes and one 3-l/2" 720K floppy diskette. One of the 5-l/4" diskettes is labeled "Program Disk" and the other is labeled "Li- brary Disk". Both volumes are combined on the single 3-l/2" disk. The KDAC500 diskettes and software manual contain all the support needed to make full use of your Keithley data acquisition hardware.
The following instructions presume the use of 5-l/4" KDAC500 distribution diskettes unless otherwise noted. References to 720K or 1.4M diskettes as drives A: or B: presume that your computer's standard A: or B: drives are 3-l /2" units.
You should not use the original KDAC500 diskettes for day-to-day operations. Install KDAC500 on to another floppy diskette or hard disk as described below, If you anticipate doing several installations, make and use a backup copy of the originals. In any case, store the originals in a safe place.
You should use the DOS version recommended for your computer, but no version before DOS 3.1 for IBM systems, DOS 3.0 for Compaq, or DOS 3.0 for compatibles running Microsoft DOS.
The Installation Files
Installing KDAC500 involves running "INSTALL.EXE". INSTALL.EXE may use other sup- port files on the KDAC500 diskette set. The INSTALL.EXE file copies the necessary files to the destination disk, then configures the software.
1-5 Pre-installation
Before you begin the actual installation of KDAC500, make sure that any other computer con- figuration or memory-resident software has been installed and is operating properly. KDAC500 can coexist with many other types of programs, but compatibility problems may occur with some programs.
When you install KDAC500, you will specify an amount of system memory to be used for data. T,his memory will be allocated when you run KDAC500. If you add memory resident software to your operating environment after you have installed KDACSOO,you may have insufficient memory left to nm KDAC500 with the designated array space. Keep track of memory usage if you add memory-resident programs to your system, and reinstall KDAC500 if necessary.
Turn on your computer and load DOS.
Installations on Computers with Multiple Processing Speeds
Some computers have switchable CPU clock speeds. If your computer has a switchable CPU clock speed, perform data acquisition only at the CPU clock speed which was set at the time of installation.
Advanced BASIC (KDAC/I Only)
During installation of KDAC500/1, you will be prompted for the name and location of your Advanced or GW-BASIC interpreter file. At that time, enter the disk drive letter, path (if any), and complete filename of the BASIC interpreter. During installation, BASIC must be where you specify or you will receive an error message.
Approved Compilers (KDAC/M and /B Only)
The KDAC500/B and KDAC500/M packages are designed to run under any of several ap- proved compilers. The "/B" package is designed for Borland Turbo C and Turbo Pascal, while the "/M" package is intended for Microsoft C, QuickC, QuickBASIC, Quick Pascal, and FORTRAN. The supported revisions include:
KDAC500/B
Borland Turbo C Version 2.0 Borland Turbo Pascal Versions 5.0 and 5.5
KDAC500/M
Microsoft C: Versions 5.0 and 5.1 Microsoft Quickc: Versions 1.0 and 2.0
l-6 Microsoft QuickBASIC: Versions 4.0 and 4.5 Microsoft Quickl%scah Version 1.O Microsoft FORTRAN: Version 5.0
Earlier versions of these products are not supported and should not be used. Borland Turbo BASIC is also not supported.
Support for other compilers will be added from time to time. If you are considering a compil- er or version other than those listed, please call Keithley DAC for more information. The KDAC500 packages do not include the compiler. You are free to purchase an approved com- piler package for the language you desire.
Note that the installation for each of the various compilers may involve specialized path pa- rameters, environment variables, library directories, or other special configurations needed by the compiler. Make sure that your compiler is installed and operating properly before you attempt to run KDAC500. Ideally, your system path, directories, and environment variables should be organized such that you can run your compiler while working in the KDAC500 directory. See your compiler manual for more information on installing the compiler.
Disk Preparation
Most personal computers share one of a relatively few disk drive configurations. The drive configuration will dictate which drive receives the installation, and which drive serves as the source.
Installing KDAC500 requires two disk drives. The drive receiving the installation should be a fixed disk, or a 720K, XXVI, or l&I floppy drive. The diskette drive holding the KDAC500 product diskette may be any type.
Depending on the compiler, KDAC500 may be run from a fixed disk or a high-capacity floppy disk drive such as a 720K, 1Z&I, or 1.4M drive.
Running KDAC500/1 from two 360K floppy diskette is not recommended. However, an in- stallation for dual 360K floppies is outlined in the Appendix section of the KDAC500/1 man- ual. A single 360K floppy does not have enough room for a working copy of KDAC500.
For KDAC500/B or /M, note that some compilers require a fixed disk because floppy disks do not have enough room
Installing to a High-Capacity Floppy Diskette (KDAC50011,only)
These instructions assume that you have a 1.2M or 1.4M diskette drive as A: and any type of drive as B:. If your high capacity diskette drive is Drive B: rather than A:, switch the A: and B: designations in the following procedure.
l-7 These instructions also assume that you are installing KDAC500/1. Compiler versions plus the required compiler will not fit on one floppy disk.
The HC diskette which receives KDAC500 must be formatted and should also be bootable. KDACSOOmay also be installed to a non-bootable floppy diskette. Doing so will save the space on the diskette normally taken by the DOS system files at the expense of operating con- venience. To format without copying the system files, omit the "/S" option.
To format a HC floppy diskette, place the blank HC diskette in the HC drive A: and your DOS diskette in drive B:. Make B: the default drive and run FORMAT:
B: FORMAT A: /S
Unless told otherwise, FORMAT assumes that a diskette formatted in a HC drive is a high-ca- pacity diskette. The system will format the diskette in drive A: and copy over the DOS system files.
Install KDACSOO/Iin its own directory on the HC diskette. When you run INSTALL, the de- sired target directory will be created automatically if it does not already exist.
Replace your DOS diskette in Drive B: with the KDAC500/1 Program Disk and continue with the section `The INSTALL Environment".
Installing KDACSOOon a Fixed Disk
Normally, the bootable fixed disk on a personal computer is drive C:. If you have two fixed disks, or if your disk is divided into `logical" drives, you may also have drives D:, E:, F:, etc. KDAC500 may be installed on any drive.
Fixed disk installation is recommended for all versions of KDAC, and provides maximum convenience.
You should install KDAC500 in a separate directory on the fixed disk. When you run IN- STALL, the desired target directory will be created automatically if it does not already exist.
Place the KDAC500 Program Disk in Drive A: and continue with the section `The INSTALL Environment".
The INSTALL Environment
The INSTALL program initially checks the computer hardware and then generates an infor- mation screen with pull-down menus (see Figure l-1). The INSTALL environment will
l-8 prompt you for information. Some responses will require that you enter alpha or numeric characters, while other responses will be simple menu selections. In both cases, the available entries will be obvious or self explanatory. Figure l-2 is a map of the installation process. In- terpretive BASIC will appear only for KDAC500/1.
Modify New Save Load Config Wit Allows user to modify displayed parameters.
Keithley DAC KDACSDD Installation I Array Space / Maximun Size: 64K / 182K Master IBIN Timer Speed: 1.00 MHz Machine Type: IBM AT or compatible
Specify Name`of BASIC (2) I I r I I I I I 1 I Modify New Save LOi ad Config Quit I I I (Restart INSTALL (Run CONFIG.EXE) (End INSTALL) at @%heck System" I I Specify harduare (Auto reboot (Write .BAT Files to Disk) configuration and if NM1 Interlock I IONAMES was detected) (Write .KIF File to Disk)
t Specify array space (Load .K F from Disk) I
k RTM Graphics -,- Enable/Disable rtm k Select Display (3) , CGA
/-- Specify Display Size -,- L Select Address 400 x 200 E ::: + 400 x 350 t_ VGA (3) + 640 x 200 L Unknown L 640 x 350
c Interface Card(s) -I- Add - Specify address - (Check for card) k Delete - Select address I /- Modify CONFIG I II I - Set IRP Level (4)
I c NMI I Test for NM1 interlock (5) l- Change BASIC (2) + Clock k (Set NM1 Reset Mask) (6) k9or2 L (Set NM1 Interlock Fix ON/OFF) (6)
t:
NOTES: 1. Processes in parentheses ( ) are performed by the installation software. 2. KDACSOO/I interpreter version, only. BASIC interpreter name may be respecified through the Whange BASIC@@ option. 3. Installation automatically determines type of primary display, and will show WNKND~JN~~ if display type is not recognized. VGA is not cospatible with RTM card. 4. IRQ is set only for the first interface card. IRP9 on an AT = IRQ2 on a PC/XT. 5. Must be performed by user if NW has been selected. See manual for details. 6. Hay also be modified manually.
Figure 1-2. Main Install Map
l-10 Running Install
The simplest method for running INSTALL is to make the floppy diskette holding the KDAC500 distribution diskette the default, and then execute "INSTALL" at the DOS com- mand line.
If you are using the 5-l/4" diskettes, insert the diskette marked "Program" into the disk drive. Later, INSTALL will prompt you to change to the "Library" diskette. The 3-l/2" disk- ette contains all the KDAC500 Program and Library files, and will not require a disk change.
The floppy disk volumne will typically be A: or B:. Change to the appropriate drive and run INSTALL:
A: INSTALL
The INSTALL program wilI respond with the following screen. If the source and destination are correct, press . If not, chang `9"' to "N" and press . You will then have an opportunity to change the source and destination.
Data Acquisition & Control Install C2.00)
Setup The Source Drive is: A:
The Destination Path is: C:\KEITHLEY\
1 Is this correct? (Y/N) fYl,l[
KDACSOOInstallation Screen
When you accept the indicated setup, the INSTALL program will copy the files from the KDAC500 diskette(s) to the target, and then run the remainder of the installation program. Proceed to the next section "Modifying the Installation Parameters".
l-11 You may specify the source and destination for the installation as part of the INSTALL com- mand line. If you elect to use this method, you should specify source, destination, and direc- tory on the INSTALL command line. The following optional syntax may be used:
NOTE: You must leave a space between all items entered in the INSTALL command line or the installation will not be completed properly.
Make the drive holding the source diskette the default drive.
A:
Enter the INSTALL command. The optional format is:
INSTALL
where:
is the drive containing the KDACSOOdiskette (A:, B:, etc.). Source Drive is required.
[Destination Drive] is the drive to which KDAC500 will be installed (C:, D:, etc.) Destina- tion Drive is optional. If it is omitted, "C:" will be assumed.
[Destination Path] is the path to KDAC500. The path name must begin with the "\`I back- slash. Destination Path is optional. If it is omitted, KDAC500 will be installed to directory KEITHLEY off the root directory of the destination drive.
If you want to install to a root directory, use "\" as the destination path. This is not recom- mended for fixed disks, but may be desirable for a floppy disk installation.
If this is a floppy disk installation with the destination in drive A: and the source in Drive B:, you can start the installation with the command:
INSTALL B: A:
If this is an installation to the root directory of a floppy disk in drive B: and the source is Drive A:, start the installation with the command:
INSTALL A: B: \
Entering the Name and Path of Interpreter BASIC (KDACII, only)
For an installation of KDAC500/1, INSTALL will ask you for the name and location of your BASIC interpreter. Typical names are BASICA.COM, BASICA.EXE, GWBASIC.EXE and GW-
l-12 BASICEXE. Specify the drive letter, complete path, and complete BASIC filename, then press . The installation will check your version of BASIC, during which the computer screen will briefly go blank.
Modifying the Installation Parameters
SELECT "MODIFY" FROM THE PULL-DOWN MENU: After you have specified the name and location of your BASIC interpreter, you will see the screen in Figure 2-1. If the menu is not visible, it can be invoked by pressing the cEso key.
Once visible, any menu choice can be invoked by using the cursor keys to move the cursor to the desired choice, and then pressing . You may also press the first letter of the menu word.
Select MODIFY - The cursor will drop down into the information screen and let you change selected installation parameters. You may change any or all of the following items.
ARRAY SPACE - The Array Space line shows the following information:
Array Space / Maximum Size
"Array Space" shows what you have specified for the desired array workspace. "Maxi- mum RAM" is a suggested maximum amount of RAM available for data arrays.
NOTE: For KDAC500/1, the suggested maximum is based on the sizes of IBM PC-DOS 3.3, GWBASIC 3.2, and the KDAC500 software. Your DOS and BASIC versions may re- quire slight adjustment of the suggested maximum. Under some circumstances, you may enter more than the suggested RAM size.
NOTE: If you specify too large an amount of RAM, you will receive an error message when you run KDAC500, or run into other problems. For a first installation, it is best to select a small array memory size, e.g. 64k for KDAC500/1, or 8-16k for a compiler version. After you become familiar with the software, you can change the memory size.
Select ARRAY SPACE and press . A box will appear on the screen, Type the size of the array space you want and press .
RTM GRAPHICS - If you have an RTM (Dataq WFS-200) waveform scroller card in- stalled in your computer and would like to use it for KDAC500 graphics, select RTM GRAPHICS and press .
ENABLE/DISABLE - to enable use of the RTM card, move the cursor to this choice and press . The feature will toggle on or off. RTM cannot be enabled if the detected monitor adapter is VGA.
l-13 SET DISPLAY TYPE - move the cursor to this option and Press . Select the type of monitor you will be using with the RTM (Dataq) WFS-200 waveform scroller card. VGA video is not compatible with the WFS-200.
ADDRESS - select this option and press . Type the hardware address of the RTM card as installed in your system (see the RTM manual for more information)
DISPLAY SIZE - select this option and press . Move the cursor to the de- sired display size and press . The only valid choice if you are using a CGA card with the RTM card is 640x200. Note messages on the INSTALL screen for more information.
INTERFACE CARD(S) -You must specify the address of each Keithley hardware interface board installed in your computer. If you do not specify a hardware inter- face, the software will not be able to access the data acquisition system connected to that interface card. Select INTERFACE CARD(S) and press .
NOTE: If you are installing to a ES/2 with Microchannel bus (I'S/2 Model 50,60,70, and 80), the only parameter you may change under INTERFACE CARD(S) is "MOD- IFY CONFIG". The interrupt is set as part of the hardware installation using the ES/2 Reference Diskette.
ADD - Selecting "INTERFACE CARD(S)" when there are no cards shown will auto- matically move to "ADD" and prompt you for an address. For additional interfaces, select ADD and press .
You will be prompted for the first two characters (in hexadecimal) of the boards ad- dress. For example, if a board is installed at address CFF80 (hex), you would enter "CF'.
After you add the first card, the menu moves directly to the "SET INTERRUPT LEVEL" option.
Repeat the ADD step for each interface installed in your computer,
DELETE - to remove a board from the configuration, select DELETE and press ter>. Use the cursor keys to select the board for deletion and press . Repeat this step for each interface you want to remove from the configuration process.
MODIFY CONFIG - The default name of the configuration table file for the first in- terface you identify is "CONFIG.TBL". Additional boards will be named "CON- FIGlTBL", "CONFIG2.TBL", etc. To specify a different name, select MODIFY CON- FIG and press . Use the cursor keys to select the name to be changed and press . Type the desired name and press .
1-14 SET INTERRUPT LEVEL - This option selects a hardware interrupt within the PC which will be used to control background (timed) data acquisition. The choices, in order of system priority, are "NMI", "CLOCK", 9,3, and 5. NMI is the computer's non-maskable (highest priority) interrupt. CLOCK is the computer system clock. If you are using an 8088-based PC or XT, Level 9 corresponds to IRQ2 in the PC.
NM1 is the suggested method, but may not be compatible with all types of PC hard- ware. Specifically, the NMI is used by some video adapters and by 80386 systems op- erating in virtual 8086 mode. These systems will conflict with KDAC500 if it also at- tempts to use the NMI.
NOTE: For non-Microchannel computers, you must select an interrupt method as part of the installation. If you do not select an interrupt system, operating errors will result when you run KDAC500.
Move the cursor over the desired choice and press . If you select "NMI", you will receive a submenu with the following choices:
TEST FOR NMI INTERLOCK - This choice will check the computer micropro- cessor for compatibility with use of NMI and Keithley interface, and then install the NMI as the interrupt system for KDAC500.
SET NMI RESET MASK - The previous option "TEST FOR NMI INTERLOCK" will normally set this parameter automatically if it is required. This option should not normally be selected unless an installation problem requires you to manually adjust an installation's parameters. The NMI RESET MASK sets up an installa- tion parameter which helps determine the software's use of the computer's non- maskable interrupt.
NMI INTERLOCK FIX ON/OFF - The option "TEST FOR NMI INTERLOCK' will normally set this parameter automatically if it is required. Some early 80286 microprocessors have an internal problem which causes background data acqui- sition to spontaneously abort. NMI FIX will correct the problem through soft- ware. NMI fix also disables the system clock, so BASIC commands such as "TIMER" will not work when the NMI fix is in place.
CAUTION: You should not change the NM1 RESET MASK or NM1 FIX unless you have experienced trouble with the installation, and have been instructed by Keithley DAC technical support to do so. The following chart is for refer- ence only.
NOTE: If the NMI interlock is detected on your computer, you may also choose CLOCK or Level 9,3, or 5.
l-15 1 COMPUTER IMASK INMIFIX]
* Exhibits NMI Interlock, a defect in some early 80286 processor chips can cause the computer system to spontaneously lose inter- rupts when executing background programs. If this occurs, contact Keithley DAC technical support.
RUN "CONFIG" FROM THE FULL-DOWN MENU: The "CONFIG" option will run the CONFIG.EXE program which enables you to set up a hardware configuration table for each system connected to an interface in your computer. The CONFIG option defaults to the first interface in the INTERFACE CARD(S) list. To set up configuration tables for other interfaces, select the proper modules and other information, and save the table under the name "CON- FIGl", "CONFIG2", etc. See the section of this manual covering CONFIG.EXE for more infor- mation of running CONFIG.
SAVE YOUR INSTALLATION: The "SAVE" option will create one or more of the following files: KDAC500.BAT, KINSTALLKIF, KLOAD.BAT, and KRUN.BAT. KDAC500.BAT is used to start KDAC500/1 in non-resident mode. KINSTALLKIF is a record of the all the informa- tion which has been entered in the installation screen.
KLOAD.EXE is used to make the KDAC500 kernel memory resident. KRUN.BAT is used to run compiled programs generated under compiler versions of KDAC500, and does not apply to KDAC500/1.
SELECT "QUIT" FROM THE PULL-DOWN MENU The "QUIT" option will close the instal- lation screen. If the NMI interlock problem was detected, the computer will automatically reboot when you quit.
Other MENU Options
NEW - This option will reset all parameters on the installation screen. The current data shown on the screen will be lost. This does not affect the information stored to disk unless you execute SAVE.
LOAD - This option loads the last KINSTALLKIF file saved to disk. It enables you to make minor changes to an existing installation without having to re-enter all the information.
For Future Installations
Once KDAC500 has been installed, you can change setup parameters by re-running IN- STALL.EXE on the destination, or by running the INSTALL program directly.
1-16 The syntax for the INSTALL command is:
INSTALL 1-f I [ -mono I [ -rtm ]
Any or all the modifiers may be used.
Details on the INSTALL command line modifiers are as follows:
-f The "-f" modifier tells KINSTALL to automatically load and use the set-up information in the KINSTALLKIF file, rather than rechecking the system. This option will permit you to modify parts of an installation without having to re-enter all the information..
-mono The "-mono" modifier selects monochrome output. Normally, the program is able to sense what type of display adaptor the computer has and adjust the display accordingly. Where a composite monochrome monitor is being driven by a CGA, the color pallet is translated into various shades and pat- terns which may be unreadable under some circumstances. In these cases the -mono modifier overrides the sensing of a display adaptor and improves the readability of the screen.
-RTM The "-RTM" modifier can be used to specify all the set up information for the RTM (Dataq WFS-ZOO) waveform scroller card. The full syntax for the RTM modifier is:
-rtmcdisplay_area>
There are four possible values for the display area:
LL = 400 pixels horizontal x 200 pixels vertical HL = 640 pixels horizontal x 200 pixels vertical LH = 400 pixels horizontal x 350 pixels vertical HH = 640 pixels horizontal x 350 pixels vertical
When operating on a CGA the only valid display area specification is HL. When no display area is specified a default of HI-I (for EGA or MONO) is used.
The scroller card address is a number from 0 to 3f8 (hex) which must be evenly divisible by 8. The default address is 308.
NOTE: in order to specify an alternate address, a display area must also be specified.
The KINSTALL.KIF File
When you write an installation to disk with SAVE, a file named "KINSTALL.KIF" is also written to disk. This file is a record of the information entered in the installation screen. This information is valuable when you contact the applications department for help.
1-17 Installations Involving the 500GPIB Module
If your system includes a 5OOGPIBmodule, note that KDAC500 does not perform installation steps for this module. The 500GPIB driver installation is outlined in the 500GPIB manual. It requires that the user manually edit the DOS AUTOEXEC.BAT file to insert the required command line.
If You Have Problems Installing KDACSOO
If you experience any problems with INSTALL, first review your