Advanced Communication Board Developer's Toolkit 1997-2000 DOS Tools and Utilities for ACB and SeaMAC products. ---------------------------------------------------------------------- ---------------------------------------------------------------------- This document is organized with the following conventions: Section 1.0 Introduction Section 2.0 ACB Developer's Toolkit Contents and Diskette Layout Section 3.0 Recommended Documentation Section 4.0 Development Recommendations Section 5.0 What To Do If A Problem Occurs Section 6.0 Technical Support and Feedback Section 7.0 Updates and Fixes ---------------------------------------------------------------------- ---------------------------------------------------------------------- Section 1.0 Introduction Welcome to the Advanced Communication Board Developer's Toolkit. This diskette provides the developer with programming samples and technical insight to aid in the development of reliable applications and device drivers for the ACB Family of communication cards. All source code on this diskette is provided to the ACB developer with royalty free use. Our goal in publishing this collection of source code and technical information is twofold. First, to provide the developer with ample information to develop ACB based applications, and second, to listen to the developer and channel any suggestions into our technical support efforts. During ACB application development, if questions, comments, or suggestions arise, please feel free to contact Technical Support at the numbers listed at the end of this document. ---------------------------------------------------------------------- ---------------------------------------------------------------------- Section 2.0 ACB Developer's Toolkit Contents and Diskette Layout The following is a brief description of the layout of the ACB Developer's Toolkit. Note: all files are not listed, only the important text files that make further reference to diagnostics, source code, and other text files. Root Directory \ README.TXT The file currently being read. \APP_NOTE Application Notes APP_NOTE.TXT This file contains a detailed listing of all application notes on the diskette. \UTIL Utilities and Diagnostics UTIL.TXT This file contains an in-depth explanation of all utility and diagnostics programs located on the diskette. \SAMPLES Source Code Examples SAMPLES.TXT This text file contains a brief description of all source code and sample programs on the ACB Developer's Toolkit. Note that each sample program is in a separate sub-directory. \LIBRARY ACB I/O Run Time Modules LIBRARY.TXT This file contains an explanation of all library files that are provided with the ACB Developer's Toolkit. This file also details the syntax and calling procedure for all routines that are included in the modules that are located in this directory. Several header files are also explained in the document. \DOC Miscellaneous text files REFER.TXT References to other printed documentation that may aid the developer in understanding unfamiliar topics. \PCMCIA Drivers and diagnostic programs for PCMCIA PC Cards are located in this directory. See file PCMCIA.TXT for details. \DRV Driver software. DRIVERS.TXT This file contains information on software drivers for ACB products. ---------------------------------------------------------------------- ---------------------------------------------------------------------- Section 3.0 Recommended Documentation Before beginning to develop applications based on the ACB Family of cards you will need the manual that is provided with the ACB card that you are using, this diskette (ACB Developer's Toolkit), and a Zilog SCC User Manual. SCC Users Manuals may be obtained from Zilog or by calling technical support at the phone number listed at the end of this document. If you are new to communications programming, the Advanced Communication Board Resource Kit is available through the numbers listed at the end of this document. The ACB Resource Kit is a training document designed to introduce the ACB Family of cards and provide basic information relating to the ACB cards and typical ACB applications. For more in-depth information on advanced topics, please refer to the file REFER.TXT located in the \DOC directory on this diskette. ---------------------------------------------------------------------- ---------------------------------------------------------------------- Section 4.0 Development Recommendations Recommending a development procedure that is detailed and specific to your application is very difficult due to the wide range of applications that the ACB cards can accommodate. We have found that it is best to first determine the method of programming that is necessary for your application. For example polled, interrupts, direct memory access (DMA) or a combination of two or more. This should be determined by the data rate that is to be maintained and the availability of system resources (such as available IRQs and DMA channels). Second, refer to the file SAMPLES.TXT located in the \SAMPLE directory and locate one or more sample programs that best match your application (for example SDLC/HDLC and DMA). Execute the samples provided to ensure that the hardware, jumper settings, and cabling are correct. The utility programs located in the \UTIL directory will also be very helpful when diagnosing cabling or configuration problems. Next, refer to the \APP_NOTE directory and the SCC User Manual to find additional information that may be helpful when developing an application or device driver. Once you begin to write an application, first, concentrate on the 85x30 initialization. This simple process is a very important step in ACB development. Please refer to the sample programs and the SCC User Manual for recommended write register initialization order. The order of register initialization is just as important as the values that are written to the registers. Once the initialization values are written, the rest of the device initializations can be constructed by copying portions of the sample files or by using the library modules provided in the \LIBRARY directory. The library modules simplify DMA and interrupt driven programming initialization allowing the developer to concentrate on other portions of the application. Once the application has been written, the testing portion of the development phase should be executed. Testing the application on different computers and configurations will reveal most errors that are caused by incorrect initialization order and violation of SCC recover time (refer to \APP_NOTE directory for more information on SCC recovery time). These two programming problems are often difficult to diagnose yet extremely simple to remedy. If questions or comments arise concerning ACB development, feel free to contact technical support at the numbers listed at the end of this document. ---------------------------------------------------------------------- ---------------------------------------------------------------------- Section 5.0 What To Do If A Problem Occurs If a problem does occur during or after ACB development, there are several diagnostic tools provided on the diskette to aid in determining the source of the problem. All diagnostic programs are located in the \UTIL directory. A loop-back plug may need to be constructed to fully test the ACB card. Please refer to the \APP_NOTE directory for an application note on constructing simple loop-back connectors. These utility programs will help determine if the problem resides in the application software or the hardware configuration. In either case, please remember that technical support is available through the numbers listed at the end of this document. ---------------------------------------------------------------------- ---------------------------------------------------------------------- Section 6.0 Technical Support and Feedback Technical Support and feedback for the ACB Developer's Toolkit and all ACB cards is available through the following correspondence: Sealevel Systems Incorporated 155 Technology Place P.O. Box 830 Liberty, SC 29657 USA VOICE: (864) 843-4343 FAX: (864) 843-3067 INTERNET: support@sealevel.com www.sealevel.com ---------------------------------------------------------------------- ---------------------------------------------------------------------- Section 7.0 Updates and Fixes In an effort to provide the most value to you, our customer, the ACB product line has been upgraded at no additional cost to provide an 85230­8 ESCC in place of the standard 8530­6 SCC. This upgrade maintains 100% compatibility with the previous controller chip and also offers additional benefits that could not be enjoyed with the 8530-6 SCC. The 85230-8 ESCC has larger FIFOs and enhanced SDLC/HDLC capabilities. If you have been using this ACB card with the 8530-6 SCC then you do not need to modify any code to continue running just as you have been. Should you decide to take advantage of the additional features of the 85230-8 ESCC then simply refer to the application notes included on your ACB Developer’s Toolkit Diskette. Existing source code and examples on this diskette can be modified easily to take advantage of the 85230-8 ESCC. For details on fully exploiting the enhanced versions of the SCC, please refer to the Zilog SCC User Manual. ---------------------------------------------------------------------- ----------------------------------------------------------------------