home *** CD-ROM | disk | FTP | other *** search
- ------------------------------------------------------------------------------
- | Essential Communications Library (ECL) Ver. 4.0 |
- ------------------------------------------------------------------------------
-
- To install the product, simply put the ECL disk #1 in the A: drive and type :
-
- A:INSTALL
-
- The installation process is menu driven so it will be self explanatory and
- easy to use. The install program will not build a directory for you.
-
- The contents of the disks are as follows :
-
- DISK 1
- ---------------------------------
- READ.ME - This is it!
- INSTALL.EXE - Installation program.
- PKUNZIP.EXE - Unzipping utility
- ECLSRCC.ZIP - All ECL "C" source code
- XCOMMS.ZIP - XCOMMS.exe zipped
- TECLM.ZIP - TURBO C Bundled Medium Library
-
- DISK 2
- ---------------------------------
- MECLS.ZIP - MicroSoft Bundled Small Library
- MECLSTSR.ZIP - MicroSoft Unbundled Small Library
- MECLL.ZIP - MicroSoft Bundled Large Library
- MECLLTSR.ZIP - MicroSoft Unbundled Large Library
- MECLMTSR.ZIP - MicroSoft Unbundled Medium Library
-
- DISK 3
- ---------------------------------
- TECLS.ZIP - TURBO C Bundled Small Library
- TECLSTSR.ZIP - TURBO C Unbundled Small Library
- TECLL.ZIP - TURBO C Bundled Large Library
- TECLLTSR.ZIP - TURBO C Unbundled Large Library
- TECLMTSR.ZIP - TURBO C Unbundled Medium Library
-
- DISK 4
- ---------------------------------
- DEMOS.ZIP - Demo programs
- ECLHEAD.ZIP - ECL headder files.
- MECLM.ZIP - MicroSoft Bundled Medium Library
- ECLSRCA.ZIP - All ECL *.asm and *.inc source code
-
- ------------------------------------------------------------------------------
- | ECL COMPACT MEMORY MODEL |
- ------------------------------------------------------------------------------
- The Small, Medium and Large Memory Model libraries are included on these
- disks. If you require the Compact memory model, you can download it
- form our BBS (201-762-0339; 8 Data, 1 Stop, No Parity) or we can send
- it to you via the mail.
-
- ------------------------------------------------------------------------------
- | CORRECTIONS TO THE MANUAL |
- ------------------------------------------------------------------------------
- * ADDED FUNCTIONS :
-
- NAME
- xc_t16550 - Test for existance of NS16550A UART. The function always
- disables the FIFO's if they are present.
- SYNOPSIS
- int xc_t16550(
- int port_number) /* Communications port */
- DESCRIPTION
- Test for existance of NS16550A UART. The function always disables the
- UART's FIFOs if they are present. The function set_16550() can also be
- used to detect the presence of the NS16550A UART.
-
- RETURNS
- 0 : NS16550A not present
- 1 : NS16550A present
-
- NOTES
- None
-
- EXAMPLE
- #include <stdio.h>
- #include <stdlib.h>
- #include <conio.h>
- #include "eclproto.h"
- #include "xc.h"
-
- void main(int argc, char *argv[])
- {
- int i;
- int port;
-
- if (argc != 2) {
- printf("\n16550_t [port]\n");
- return;
- }
- port = atoi(argv[1]);
- xc_entr(8);
- /* if COM3-use share logic, if COM4-use share2 logic */
- if (port==2) { /* configure COM2 to look like COM3 */
- setport(0X2F8,1,3,COM3,0);
- printf("\nCOM2 is configured to look like COM3\n-Hit any key\n");
- getch();
- }
- if (port==3) { /* configure COM2 to look like COM4 */
- setport(0X3F8,1,4,COM1,0);
- setport(0X2F8,1,3,COM4,1);
- printf("\nCOM2 is configured to look like COM4\n-Hit any key\n");
- getch();
- }
-
- i = xc_t16550(port);
- printf("\nstat = %d, %0X\n",i,i);
- xc_exit();
- }
-
- ------------------------------------------------------------------------------
- | PROGRAMMING CHANGES FROM VERSION 3.0 ECL |
- ------------------------------------------------------------------------------
- NONE
-
- ------------------------------------------------------------------------------
- | RECOMPILING |
- ------------------------------------------------------------------------------
-
- If you plan to alter any code, follow the below format for recompilation.
-
- Microsoft Recompilation Turbo C Recompilation
- ------------------------- -------------------------
- Small : cl /c /Zl /Gs file Small : tcc -c file
- Medium : cl /c /Zl /Gs /AM file Medium : tcc -c -mm file
- Large : cl /c /Zl /Gs /AL file Large : tcc -c -ml file
- Compact : cl /c /Zl /Gs /AC file Compact : tcc -c -mc file
-
- ------------------------------------------------------------------------------
- | ASSEMBLER MODIFICATIONS |
- ------------------------------------------------------------------------------
- If you modify the assembler code, you need to know a few
- things. These are in the manual but the summary version
- is as follows.
-
- First, the ASM files need an include file called ECLMACRO.INC.
-
- Second, when assembling any module, you must define the
- memory model with a /D switch (/DSMALL or /DLARGE etc. for
- MicroSoft and Turbo.
-
- Third, when assembling XCOMMS, you must also use /D to
- determine wheteher or not you are building a new XCOMMS.EXE
- or XCOMMS.OBJ for the bundled library. No /D defaults to
- the XCOMMS.EXE and /DBUNDLD will build an XCOMMS.OBJ.
-
- Fourth, always use the /MX switch.
-
- Fifth, to build a new eclsubx.obj:
- for SMALL and COMPACT memory model :
- masm /MX /DNUMBER=digipcxx /DSMALLMODEL eclsubx.asm
- for LARGE and MEDIUM memory model :
- masm /MX /DNUMBER=digipcxx /DLARGEMODEL eclsubx.asm
-
- TSR / BUNDLED LIBRARY DIFFERENCES:
- Obviously, most of the libraries are identical in content.
- The differences are as follows:
- The TSR library (Unbundled) contains the following ASM files:
- XC_FASTR.ASM XC_UPEND.ASM I86.ASM
- The TSR library (Unbundled) also contains all of the C files
- except: XCBUNDLD.C
-
- The BUNDLED library contains the following ASM files:
- XCOMMS.ASM XCINTF.ASM I86.ASM
- XC_FASTR.ASM XC_UPEND.ASM ECLSUBX.ASM
- The BUNDLED library also contains all of the C files except:
- XCTSR.C
-
- Creation of XCOMMS.EXE :
- 1. Assemble XCOMMS.ASM, XC_TSR.ASM, and THE_END.ASM
- without the /DBUNDLD option.
- MASM /DSMALL /MX XCOMMS.ASM
- MASM /DSMALL /MX XC_TSR.ASM
- MASM /DSMALL /MX THE_END.ASM
- 2. Link XCOMMS.OBJ with XC_TSR.OBJ AND THE_END.OBJ
- to generate XCOMMS.EXE
- LINK XCOMMS+XC_TSR+THE_END;
- 3. The warning message "no stack segment" is normal
- and does not indicate a failure in creation of
- XCOMMS.EXE
-
- /*************************** read.me end ************************************/