home *** CD-ROM | disk | FTP | other *** search
-
-
- TURBO PASCAL FAST LIBRARY
- -------------------------
-
-
- TURBO PASCAL Fast Library(TPFL) is (c) Copyright 1990 by L. B. Neal.
- All rights reserved.
-
- TPFL is distributed as "shareware". This means you may try it out before
- you need to pay for it. If you find the items presented in this package
- to be useful and of value you in time saving or money savings you MUST
- pay the registration fee of $5.00 or nolonger use the package. In any
- case you may NOT use the FUNCTIONS or PROCEDURES presented in this package
- in a program without paying the registration fee.
-
- IF you send $7.00, I will mail you a disk with the next significant upgrade
- of the package.
-
- LEGAL NOTICE
- ------------
-
- TPFL is presented "as is" without any form of warranty! I will NOT and
- cannot assume any responsibilty for the performance or non-performance of
- any portion of this package.
-
-
-
- Registered users may freely use the FUNCTIONS or PROCEDURES included for
- private or commercial programs.
-
- The registration fee is onetime only! However, if you need direct upgrades
- I must ask for a nominal $2.00 to cover media, handling and mailing costs.
- Updated versions will be made available to the BBS distribution system.
-
- Software "vendors" and "distributors" may offer this package as long as it
- costs no more than $5.00 and the package is totally intact.
-
- USERS NOTE: If you purchased TPFL from anyone but L. B. Neal you have NOT
- registered the product! You have paid a fee to another party
- for media, handling and/or mailing costs.
-
-
- PACKAGE DESCRIPTION
- -------------------
-
- TPFL consists of the following files:
-
- TPFL.DOC This documentation file.
-
- TPFL5.TPU Turbo Pascal 5.0 TPU non-overlay.
-
- TPFL5_O.TPU Turbo Pascal 5.0 TPU for-overlay.
-
- TPFL55.TPU Turbo Pascal 5.5 TPU non-overlay.
-
- TPFL55_O.TPU Turbo Pascal 5.5 TPU for-overlay.
-
- TPFLDEMO.PAS A small demo of the package contents.
-
- TPFLDEMO.EXE Compiled demo using TP 5.0.
-
- TPFLDEM2.PAS Second Demo of other features.
-
- TPFLDEM2.EXE Compiled Demo2 using TP 5.0.
-
-
- PACKAGE CONTENTS
- ----------------
-
- The FUNCTIONS and PROCEDURES in the TPU's are described below:
-
- TYPE Strg = String[255];
- Wstr = String[255];
-
- VAR Delay_Calc: Real;
- { Used by SDelay. This value MUST be provided by the following }
- { method: Delay_Calc := CpuSpeed/4.77. CpuSpeed being an }
- { Integer or Real representing the approximate CPU speed of }
- { the machine the program is running on. }
-
-
-
- FUNCTION StrCopy(cs: Strg; strt, scnt: Integer): Strg;
- { This replaces the Copy( from TP. It should be called exactly as }
- { you would call the normal Copy Function. This version is much }
- { faster in action. }
-
- FUNCTION StrAdd(astrg,bstrg: Strg): Strg;
- { This replaces ConCat and adding strings via '+' sign which }
- { really calls ConCat. This Function is much faster than using the}
- { provided concat function. It will add bstring to the end of }
- { astring and return the result. }
-
- FUNCTION IntegerToStr(i_in:Integer):Strg;
- { Returns a string representing the value of the Integer i_in. }
-
- FUNCTION WordToStr(w_in:Word):Strg;
- { Returns a string representing the value of the Word w_in. }
-
- FUNCTION LongIntToStr(l_in:LongInt):Strg;
- { Returns a string representing the value of the LongInt l_in. }
-
- FUNCTION RealToStr(r_in:Real; Num_Base:Integer):Strg;
- { Returns a string representing the value of r_in in the number }
- { base called by Num_Base: ie 10 for Decimal, 16 for Hex }
-
- PROCEDURE SDELAY(Ms : Word);
- { Provides a relativly stable Delay equal to the Delay }
- { Function. The Delay provided will pretty close to the value }
- { provided in Ms. If this Procedure is called in a loop }
- { situation the call overhead will make the effective delay }
- { longer than expected especially when Ms has small values that }
- { in the 1 to 10 range. }
-
- PROCEDURE WrtStr(strin: Wstr; Wmode,ChkSnow: Boolean);
- { Writes from 1 to 255 characters. DirectVideo is set to match }
- { Wmode. CheckSnow is set to match ChkSnow. The starting values }
- { are reset at the end of the procedure. NOTE: Slower than normal}
- { Write, if DirectVideo, but allows local control of Video. }
- { AS of 0.92 uses WriteTTY for False mode! }
-
- PROCEDURE WrtLnStr(strin: Wstr; Wmode,ChkSnow: Boolean);
- { Writes from 1 to 255 characters. DirectVideo is set to match }
- { Wmode. CheckSnow is set to match ChkSnow. The starting values }
- { are reset at the end of the procedure. A Cr/Lf sequence is }
- { at the end of strin. NOTE: Slower than normal WriteLn, if }
- { DirectVideo, but allows local control of Video. }
- { AS of 0.92 uses WriteTTY for False mode! }
-
- FUNCTION TimeStr(showsec:Boolean):Strg;
- { Returns a string representing the time in this format: }
- { HR:MN:SC ie 18:03:55, if showsec is false then only HR:MN }
- { is returned ie 18:03. }
-
- FUNCTION TimeCnt:Longint;
- { Returns a value which is the number of seconds in the day that }
- { have passed being from 0 to 86,400. }
-
- FUNCTION Today:Strg;
- { Returns the date in this format: "03/15/90" }
-
- FUNCTION GetDate(ShowTime:Boolean):Strg;
- { Returns the date formated with the time if ShowTime = True as: }
- { "18:03 Mon May 15,1990" or if ShowTime = False then it returns }
- { the date as: "Mon May 15,1990". }
-
- FUNCTION TodayNumCnt(dt:strg):integer;
- { Returns the integer number of what day this is. }
-
-
- { 0.91+}
- FUNCTION IsInChar(IsInTest1,IsInTest2:Char; IsInFeed:Char): Boolean;
- { Returns True if IsInFeed is between IsIntest1 & IsIntest2 }
-
- FUNCTION IsInStrg(TestChar:Char; ChkStrg: Strg): Boolean;
- { Returns True if Char is in ChkStrg }
-
- FUNCTION WhrStrg(TstChar:Char; TstStrg: Strg): Integer;
- { Returns Integer indicating the position of TstChar in ChkStrg }
- { Faster replacement for POS( function. }
-
- { 0.92+ }
- { ---------------------------------------------------------------- }
- { NOTE: The next Five PROCEDURES are meant to replace the BIOS }
- { ScreenWrites of TP. TP writes all BIOS chars one-at-a-time }
- { which adds immense overhead. IF your program must use }
- { BIOS screen writes this set will give considerable speed }
- { increase! These routines are for ASCII Characters ONLY! }
-
- PROCEDURE Windo(StartX,StartY,EndX,EndY: Byte);
- { Lets TPFL know of Window in use and then tells TP! }
-
- PROCEDURE WriteTTY(strgin: Strg);
- { Writes a string to the screen via BIOS w/curr attribute }
- { Moves cursor to next position. Sometimes called Write TTY }
- { NOTE: Knows about windows! }
-
- PROCEDURE WriteLnTTY(strgin: Strg);
- { Writes a string to the screen via BIOS w/curr attribute }
- { Moves cursor to next position. Sometimes called Write TTY }
- { NOTE: Knows about windows! }
-
- PROCEDURE WinWrite(strgin: Strg; attr:Byte);
- { BIOS screen write that knows of screen windows. ASCII char ONLY! }
- { Windo MUST be used to define all Windows! }
-
- PROCEDURE WinWriteLn(strin: Strg; attr: Byte);
- { BIOS string screen write that knows of screen windows }
- { For ASCII strings ONLY! }
- { Windo MUST be used to define all Windows! }
- { ---------------------------------------------------------------- }
-
-
- PACKAGE USE/ADVANTAGES
- ----------------------
-
- The FUNCTIONS and PROCEDURES are intended to provide you the user
- the ability to make your programs run faster and/or eliminate the
- need to write specialty routines with the resulting cost in time
- and perhaps money.
-
- Several of the items provide sustitutions for standard FUNCTIONS or
- PROCEDURES that will run much faster.
-
- Other items are intended to supplement the normally provided items
- in the libraries.
-
- Since I have provided TPFL in UNITS, unused code will NOT be pulled
- into your final .EXE of the program compiled.
-
- PACKAGE DISADVANTAGES
- ---------------------
-
- I'm sure you will note that the source code becomes a bit larger using
- the routines in TPFL. However, you will find the resulting programs
- will generally run significantly faster than using the built-in features.
-
- This NOT a problem with TP! A generalized feature MUST contain overhead
- because to provides many features which may or may not be used in your
- particular application. Where TPFL is inadequate by all means use the
- fine routines provided with the compiler. If a TPFL feature indicates
- it will support your application please give it a try. If the feature
- does not perform as described please bring it to my attention ASAP!
-
-
- THE FUTURE
- ----------
- TPFL will continue to evolve and improve based on:
-
- 1. Registrations.
-
- 2. User feedback.
-
- I will gladly address adding new FUNCTIONS or PROCEDURES when suggested.
-
- HOW TO REGISTER
- ---------------
-
- Send me a Check or Money Order made out to L. B. Neal. As of this
- version my mailing address is:
-
- L. B Neal
- 370 Altair Way #103
- Sunnyvale, CA 94086
-
- Please feel free to inclose any comments or suggestions about improving
- TPFL.
-
-
- EDITORIAL
- ---------
-
- This package and all of the other thousands of fine programs and
- support items would not be possible except for the efforts of BORLAND
- INTERNATIONAL who took a crippled learning language called "PASCAL"
- and created a powerful developement language which I feel is still
- superior to "C", even TURBO C!
-
- All of the flap about "C" has made some folks think TURBO PASCAL is
- nolonger a powerful versatile language. This is an error!
-
- The changes in 5.0 and 5.5 have brought TP much power similiar to
- MODULA-2 that is in no way available with any "C" compiler that I'm
- familiar with and I own at least 6 of them.
-
- TP may NOT be "portable" but it is aimed at getting the most out of
- the machine it was written for NOT a pretty fair or mediocre performance
- on any ol' computer you point it at.
-
-
- FINAL COMMENTS
- --------------
- I hope you find these first versions of TPFL to be useful. Future versions
- will attempt to supplement the features of TP to provide an opportunity
- for improved program performance and versatility.
-
- Several packages offer outstanding improvements in screen handling and
- other aspects of programs not covered in TPFL. I see no reason to try
- to duplicate their fine offerings. I will try to fill another void in
- the chain. Please investigate and support those authors if their
- product is of value.
-
-