QUICKPAK(tm) PROFESSIONAL FOR DOS
=================================

The Most Comprehensive Collection of BASIC Tools Ever Produced
--------------------------------------------------------------

QuickPak Professional is a programmer's toolbox of more than 500 BASIC and 
assembly language subroutines, designed to help developers improve the quality 
of their programs and complete them faster. Included are routines for 
windowing, access to DOS and BIOS services, searching and sorting any type of 
BASIC array, creating pull-down and Lotus(r) style menus, accepting data 
input, and much more.
     Extensive documentation (700 pages) is provided with additional tutorials 
on files, arrays, subprograms, sorting, compiling and linking, plus many other 
related topics. The manual is clearly written, and includes a wealth of 
information useful and pertinent for programmers at all levels of experience. 
We provide pre-built Quick and linking libraries for use with all current 
versions of Microsoft BASIC for DOS--simply load the appropriate library, and 
you're ready to go. The high-level routines written in BASIC are easily loaded 
as source modules.

QUICKPAK IS EASY TO USE

All of the routines in QuickPak Professional are extremely easy to use. The 
number of parameters is kept to an absolute minimum, and detailed instructions 
are included for each routine. Where appropriate, the routines are designed as 
functions that return a value directly. For example, to read the disk volume 
label for Drive A:

     Volume$ = GetVol$("A")

The DOS services permit many operations that are not possible using BASIC 
alone. Routines are included to obtain a list of file and directory names from 
disk, retrieve and set the default drive, copy files, determine the total and 
free space on a disk, read or change a file's date, time, and attributes, and 
directly read or write disk sectors. A complete set of file and printer 
routines is also provided to eliminate the need for ON ERROR.
     Other low-level routines include string and file encryption, file and 
array searching and sorting, date and time calculations, access to mouse 
services, and extensive string manipulation. A sophisticated Print Screen 
routine operates in all BASIC-supported graphics modes and works with any 
printer that honors either the standard Epson/IBM dot matrix or HP LaserJet 
control codes.
     All of the routines that process strings and string arrays are also 
provided in an alternate version that ignores capitalization. The video 
routines operate on any screen page and automatically support the 43- and 50-
line EGA and VGA text modes.

IF YOU NEED IT, QUICKPAK PROBABLY HAS IT

QuickPak Professional also includes many complete applications that may be 
added to your programs.  Dozens of callable BASIC modules are provided, such 
as a spreadsheet and a full-featured text editor with word wrap, row and 
column block operations, and built-in mouse support. Other routines include a 
pop-up calculator, calendar, ASCII chart, file manager, plus a browse program 
that handles text files of nearly any size.
     Additional major utilities are a complete pulldown menu system with mouse 
support, vertical scrolling menus that accommodate any number of choices, and 
recursive TYPE array and file sort routines that can handle any number of sort 
keys. The editor and menu subprograms operate either normally, or in a unique 
multi-tasking mode that lets you display several menus at once and poll them 
in sequence. Also supplied is a comprehensive set of financial and scientific 
functions, including every function offered in commercial spreadsheet 
programs.
     Many routines are provided for sophisticated window handling. The window 
manager accommodates up to ten levels of window nesting and may be easily 
expanded to handle even more screens if needed. A special assembler routine 
lets you close just a portion of a larger window. Other unique subroutines let 
you write to two monitors at once, create bit arrays that occupy just one bit 
per element, run .BAT and .COM files, evaluate complex numeric expressions, 
create delays with microsecond accuracy, and load or save entire string arrays 
to disk many times faster than is possible using BASIC alone.

THE BEST FEATURES

Other unique features include routines for storing screens and data in 
expanded (EMS) or extended (XMS) memory, a string manager that overcomes 
QuickBASIC's 64k limit on string data, and a greatly simplified method for 
handling DOS errors. Tutorials include a comparison of procedure methods, 
dynamic versus static arrays, saving text and graphics images to disk, 
debugging, calling QuickPak routines from a pure assembly language program, 
and a discussion about handling critical errors. Current versions of QuickPak 
Professional also include the following features added in version 4:

     * A full complement of mouse-aware dialog box routines that support
       polling, command and option buttons, check boxes, text entry fields,
       and list fields (vertical menus).

     * A masked input routine that lets you specify valid data types (letters,
       numbers, convert to caps, etc.) for each character position in the
       field. Any characters may be used as field delimiters (such as the
       dashes in a Date or Social Security Number field), and they are skipped
       over automatically during data entry.

     * A real expression solver that lets you enter variable names and
       assignments, perform calculations, and even set up Watch expressions
       just like the BASIC editor.

     * Numerous low-level routines can search all of memory for a string, tell
       if a key on the PC's keyboard is currently being pressed and held,
       parse strings using multiple delimiters, execute another program and
       retrieve its return code (DOS error level), search the PATH for a file,
       read CMOS setup information, determine drive types and tell if they are
       fixed or floppy or on a network, and much more.

THE FULL MOON PHILOSOPHY

Full Moon Software is owned and operated by Ethan Winer, author of QuickPak 
Professional and P.D.Q. Ethan is well-known for his innovation and leadership 
in the BASIC add-ons market, and for his many contributions to PC Magazine, 
Microsoft Systems Journal, and other programming magazines. His products have 
won numerous "Editor's Choice" awards including BASICPro (now VB Programmers 
Journal), Byte, and Databased Advisor.
     As with all our products, full source code is provided at no additional 
cost, so you can see how the routines were designed and even modify them if 
you want. We genuinely want you to understand how our libraries work and be 
able to learn from them. All of our products are reasonably priced and include 
free technical assistance, but they are licensed for use by only one person 
using one computer at a time. Royalty payments are not required when our 
routines are incorporated into your compiled applications. However, you may 
not distribute our source, object, or library files. If your customers need to 
rebuild your program, they will need their own copy of our product(s).

THE BOTTOM LINE

QuickPak Professional for DOS costs $199 and works with QuickBASIC 4.x, PDS 
7.x, and VB/DOS. Add $8 for UPS ground shipping to US addresses only (no P.O. 
boxes); Connecticut residents must add 6.0% sales tax or show proof of tax-
exempt status when ordering. Please call us for overnight and foreign shipping 
costs. We accept checks, MasterCard, and VISA. We do accept purchase orders, 
but they must be accompanied by full payment.

Full Moon Software * 34 Cedar Vale Drive * New Milford, CT  06776
Voice: 860-350-8188; Fax: 860-350-6130; e-mail: ethan@ethanwiner.com

QuickPak(tm) is a trademark of Crescent Software, Inc.



============================================================================

P.D.Q.(tm)
==========

A Revolutionary Concept in High-Level Languages
-----------------------------------------------

No one would dispute the value of a program that is small and fast. Compiler 
vendors, such as Microsoft(r) and Borland(r), are constantly refining their 
products to improve the performance and size of your programs. Unfortunately, 
no high-level language even comes close to creating programs as efficient as 
those written in assembly language. That is, until now.
     This remarkable library lets you write programs that are extremely fast 
and compact, using a high-level language you already know. Unlike C, Pascal, 
or regular compiled BASIC, P.D.Q. can produce a "Hello world" program with a 
stand-alone .EXE file size of less than 900 bytes. Real programs that perform 
useful tasks may be written in less than 2,000 bytes. For example, P.D.Q. 
includes a sample setup program for Epson(r) printers with an .EXE file size 
of 1,900 bytes. Programs produced by P.D.Q. are typically half the size of an 
equivalent written in C. P.D.Q. is truly the closest you'll get to a pure 
assembler program, but without having to code in assembly language.
     The primary purpose of P.D.Q. is for writing small to medium-sized 
applications, where program size and execution speed are critical. A wealth of 
string, DOS, and BIOS services are provided, along with full support for 
modern programming constructs. Best of all, TSR programming and interrupt 
handling are built into the P.D.Q. library. You can create complete memory-
resident applications in just minutes, instead of days or even weeks. TSR 
capabilities are added by using four simple subroutine calls. The P.D.Q. 
routines then handle all the details of memory allocation, the DOS "busy 
flag," deinstallation, and so forth. A P.D.Q. program can even intercept 
multiple interrupts if needed, with separate program entry points for each. 
Without doubt, P.D.Q. is the most exciting concept in high-level languages to 
come along in years.

AS EASY AS BASIC

P.D.Q. is a replacement linking library for use with Microsoft's QuickBASIC, 
PDS, and VB/DOS compilers. You simply compile your programs with BC.EXE as 
usual and then link it with the P.D.Q. library file. By completely rewriting 
the BASIC language library, we were able to greatly improve the efficiency of 
the resultant code. All of the "hand-holding" BASIC normally adds to every 
program has been removed, leaving only the essential elements. Therefore, you 
can be productive immediately, without having to struggle to learn a new 
language.
     We also overhauled BASIC's convoluted method of handling DOS errors. 
Where conventional BASIC requires you to first define an error handler and 
then set up an ON ERROR trap to jump there, P.D.Q. lets you simply test the 
success or failure of the most recent DOS operation, as this short program 
fragment illustrates:

     OPEN "ACCOUNTS.DAT" FOR INPUT AS #1
     IF ERR = 53 THEN PRINT "Sorry, file not found."

THE SPIRIT OF PERFORMANCE

Our goal in designing P.D.Q. was to place code size and execution speed above 
all other considerations. Many programmers mistakenly believe that compiled 
languages are inherently large and slow, but nothing could be further from the 
truth. In many cases, Microsoft's BASIC compilers generate object code as 
efficient as a human hand-coding in assembly language. The real difficulty 
with most compilers is the way their language libraries are implemented. By 
taking an entirely new approach to language design, P.D.Q. can create programs 
that are nearly as small and fast as those written in assembly language.
     Like most compilers, Microsoft BASIC translates simple program statements 
directly to the equivalent machine-code. For example, X% = X% + 1 is compiled 
by BASIC to INC WORD PTR [X%]. However, more complex commands, such as OPEN, 
MID$, and CLS, generate calls to the BASIC language library. And that's where 
P.D.Q. comes in. All of the BASIC language routines in the P.D.Q. library are 
extremely efficient and have been optimized to the fewest number of bytes and 
machine clock cycles.

BUT ISN'T THAT WHAT C IS FOR?

One of the promises of C was to provide smaller and faster programs, in 
exchange for additional programming effort. If you were willing to step down 
to a lower level language, nearer to assembler, the compiler would reciprocate 
by generating a more efficient program. But this simply isn't true--current C 
compilers offer little if any improvement over compiled BASIC. In fact, 
compared to P.D.Q. C is just another slow and bloated high-level language! 
Further, many people will agree that C programs are notoriously difficult to 
write, and even harder to debug. By contrast, P.D.Q. is as easy as BASIC 
because it is BASIC, while providing a level of performance clearly superior 
to C. And everyone knows that performance is what programming is all about.

HOW WE DID IT

In order to achieve such impressive file sizes and high performance, we did 
have to make some compromises. Many of BASIC's advanced math and graphics 
statements are not supported, and in some cases a slight amount of additional 
programming effort is required. However, all of BASIC's powerful string 
handling features are available, and dozens of useful language extensions are 
also provided. In all, 165 BASIC statements and keywords are supported. Please 
remember that P.D.Q. is intended mainly as an alternative to writing in 
assembly language, and as such it is extremely powerful and easy to use.
     Even without BASIC's most advanced features, many useful and varied 
programs may be written using P.D.Q. These include DOS utilities, TSR printer 
drivers, pop-up calculators and help programs, DOS shells, screen capture 
utilities, and Install programs. Many such examples are included with P.D.Q. 
along with full source code.

SEEING IS BELIEVING

The benchmark timings below were made on a 386-25 computer but slowed down to 
8 MHz. to obtain repeatable results. A RAM disk was used for the read/write 
timings. All file sizes are in bytes, and all times are in seconds.
     The NumOff utility turns the NumLock key off, and the Hello program 
simply prints "Hello"--these show the effective minimum program size for each 
language system. Note that the P.D.Q. Hello program includes the entire 
dynamic string management portion of the runtime library. The DOS filter 
program accepts input from STDIN, capitalizes it and strips the high bit from 
each character, and sends the result through STDOUT.
     The Epson Setup program is a menu-driven utility that sends escape codes 
for various printer settings. The TSR version can be popped up over any text-
mode program, and it saves and restores the underlying screen. Finally, the 
.EXE file size program is a clone of Peter Norton's 9k original FS.COM 
utility. It reads all files whose names match a given specification, adds up 
their sizes, and also verifies if they will fit onto a selected target drive. 
Like Norton's, our version also takes the target cluster size into account 
when determining if the files will fit.
     For the long integer multiply test, 150 multiplications were performed in 
a loop 1,000 times. Please note that the Turbo C programs were compiled using 
the Small Model, which produces .COM files. Also note that we have optimized 
long integer operations for size rather than speed. Finally, a bug in the sort 
routine provided with QuickC is responsible for its poor showing in that 
category.

  +--------------------------------------------------------------------------+
  |                       .EXE FILE SIZE COMPARISONS                         |
  |                      P.D.Q.     QC 2.0     TC 2.0     TP 5.5     QB 4.5  |
  |                      ------     ------     ------     ------     ------  |
  | NumOff Utility          418      2,371        990      2,845     10,325  |
  | Hello Program           754      5,363      3,958      3,260     12,798  |
  | DOS Filter            1,482      5,345      4,970      3,443     19,523  |
  | Epson Setup           2,228      7,837      8,030      8,014     35,877  |
  | TSR Epson Setup       4,800       n/a        n/a        n/a        n/a   |
  | File Size Program     4,956     10,537      7,814      8,809     19,650  |
  |                                                                          |
  |    Of all the popular language compilers, P.D.Q. clearly provides the    |
  |    smallest .EXE file sizes.                                             |
  +--------------------------------------------------------------------------+


  +--------------------------------------------------------------------------+
  |                           TIMING COMPARISONS                             |
  |                              P.D.Q.   QC 2.0   TC 2.0   TP 5.5   QB 4.5  |
  |                              ------   ------   ------   ------   ------  |
  | Long Integer Multiply         2.64      2.31     2.25     7.52     3.02  |
  | Long Integer Multiply (386)   2.20      2.31     2.25     7.52     3.02  |
  | Sort 3,000 10-byte Strings    0.60    144.89     1.54     0.99     1.92  |
  | Print 3,000 70-byte Strings   0.88      1.15     1.04     3.52     2.04  |
  | Write 500 80-byte Records     0.33      0.33     0.66     0.44     0.38  |
  | Read 500 80-byte Records      0.27      0.27     0.27     0.49     0.28  |
  |                                                                          |
  |    As you can see, P.D.Q. is more than competitive with the fastest      |
  |    language compilers.                                                   |
  +--------------------------------------------------------------------------+


WHAT'S INCLUDED

P.D.Q. is supplied as two library files--PDQ.LIB is intended for use with any 
IBM PC or compatible computer, and PDQ386.LIB is a 386-specific version for 
use with 386 or later processors.
     Dozens of useful language extensions are provided, including memory 
allocation; DOS critical error trapping; block memory moves; a string array 
sort; a complete set of TSR extensions with optional swapping to EMS or disk; 
output through STDERR; access to the parent environment, and much more. Many 
examples and complete utilities are included, as well as a comprehensive 
owner's manual. The manual documents every BASIC internal routine and shows 
how to use P.D.Q. as a toolbox for use with assembly language. This remarkable 
product has revolutionized BASIC programming and has received countless 
outstanding reviews. The original 1.0 version was awarded Byte Magazine's User 
Choice Award for language of the year in 1990.
     As with all our products, full source code is provided at no additional 
cost, so you can see how the routines were designed and even modify them if 
you want. We genuinely want you to understand how our libraries work and be 
able to learn from them. All of our products are reasonably priced and include 
free technical assistance, but they are licensed for use by only one person 
using one computer at a time. Royalty payments are not required when our 
routines are incorporated into your compiled applications. However, you may 
not distribute our source, object, or library files. If your customers need to 
rebuild your program, they will need their own copy of our product(s).

     "The talk of the programming community...is P.D.Q. Hot stuff for sure."
     --John Dvorak, PC Magazine, 11/89

     "Every BASIC programmer ought to have P.D.Q.--the speed and code size
     will amaze you." --Jerry Pournelle, Byte Magazine, 2/90

     "If you want your programs to look like they were coded in assembly
     language, or if you want to learn about BASIC's innards, you'll find
     P.D.Q. a useful and powerful addition to your toolbox." --Phil Weber,
     BASICPro Magazine, 4/93

     "I feel sure the approach taken [in P.D.Q.] is the approach the whole
     industry will follow in the future." --Bruce Tonkin, Dr. Dobb's Journal,
     12/89

     "The combination of TSR ability and small code makes P.D.Q. a contender
     for language development of choice." --Jeff Angus, Computer Language,
     12/89

     "I think P.D.Q. will likely become one of the best selling add-ons of all
     time." --Jim Pyle, PCM Magazine, 2/90

     "You can write TSR code without having to worry about the technicalities.
     I like P.D.Q." --Hardin Brothers, PC Resource, 3/90

THE BOTTOM LINE

P.D.Q. costs only $149 and works with QuickBASIC 4.x, PDS 7.x, and VB/DOS. Add 
$8 for UPS ground shipping to US addresses only (no P.O. boxes); Connecticut 
residents must add 6.0% sales tax or show proof of tax-exempt status when 
ordering. Please call us for overnight and foreign shipping costs. We accept 
checks, MasterCard, and VISA. We do accept purchase orders, but they must be 
accompanied by full payment.


Full Moon Software * 34 Cedar Vale Drive * New Milford, CT  06776
Voice: 860-350-8188; Fax: 860-350-6130; e-mail: ethan@ethanwiner.com

P.D.Q.(tm) is a trademark of Crescent Software, Inc.



==============================================================================

QUICKSCREEN(tm) AND GRAPHICS QUICKSCREEN(tm)
============================================

Create Attractive Text- and Graphics-Based Data-Entry Screens in Minutes
------------------------------------------------------------------------

There's no disputing that a good screen design program can help you create 
attractive programs and complete them quickly. The old-fashioned approach 
using LOCATE, COLOR, and PRINT simply takes too long when the screens are 
complex, or when there are many data entry fields. Painting screens and 
creating forms with a sophisticated screen design program is far easier than 
the trial and error method and affords greater creativity and a better 
finished result. But equally important to the savings of time and effort is 
the reduction in your program's code size.
     QuickScreen and Graphics QuickScreen (two separate products) are the most 
elegant screen management systems ever developed for use with Microsoft 
compiled BASIC. QuickScreen lets you quickly design forms and input screens 
for display in text mode on any computer (the 43- and 50-line modes are also 
supported), while Graphics QuickScreen uses BASIC's graphics screen modes 9 
(EGA) and 12 (VGA) and supports 25, 30, 43, and 60 lines. Both programs 
include a powerful screen designer to create screens and input fields, and 
both use supplied code that's added to your programs to handle all aspects of 
data entry. We provide full source code for the routines, so you can modify 
them if you want.
     Quickly draw text and backgrounds, create data-entry fields with field-
level help text, and even specify formulas for automatic field calculations, 
such as subtotals. The screen and field definitions are kept in a disk file, 
letting you make changes without recompiling, and the same data-entry routines 
are used for all screens. Compare that to clunky code generators that create 
many redundant pages of code for each and every screen. QuickScreen images are 
stored in compressed form, and the field definitions for multiple screens can 
be combined to reduce the number of files you must distribute. Graphics 
screens are stored in the popular .PCX format, while text screens can be 
combined to a single file or optionally linked directly into your .EXE 
program.

AN ELEGANT WAY TO CREATE BEAUTIFUL SCREENS

Both products include a sophisticated menu-driven screen design program that 
lets you create the screens and  define the data entry fields. These screen 
designers are fashioned after Microsoft's BASIC editors, and they use the same 
familiar menus and shortcut keys. Portions of the screen may be painted any 
color. Blocks are easily moved, copied, or deleted. Boxes and lines are drawn 
dynamically without disturbing the rest of the screen. Text-mode screens may 
be displayed with a variety of attractive video effects, such as vertical and 
horizontal wipes, exploding box, dissolve, opening curtain, roll-away, and 
many more. Graphics QuickScreen's designer is even more capable, offering many 
of the features found in commercial Paint programs. These include the 
following:

     * A pop-up drawing and color palette that keeps the entire screen in
       progress visible at all times.

     * User-defined snap-to-grid settings that simplify the alignment of
       fields and other objects.

     * A re-color palette that easily lets you change all occurrences of one
       color to another.

     * A tile palette that provides 119 dithered colors and 24 different tile
       patterns.

     * A zoom feature that lets you easily edit individual pixels.

     * Scalable fonts for creating captions and labels.

QUICKSCREEN FIELD TYPES

QuickScreen supports 17 different field types, and Graphics QuickScreen adds 
single-line scrolling text, horizontal and vertical scroll bars, and push-
buttons. The native field types include string, proper string, upper case, 
numeric string, integer, long integer, single and double precision, currency, 
American and European date, phone, zip code, social security number, logical, 
multiple choice, and memo (multi-line text). Optional attributes may be 
applied to identify fields as protected (read-only), relational, and indexed.
     Proper name fields are used to enforce the correct capitalization for 
names. For example, if "john smith" is entered, it is converted automatically 
to "John Smith." Logical fields are similar to Yes/No fields, but any two 
choices may be specified. Multiple choice fields let you define a list of 
acceptable choices, which are then presented in a scrolling menu. This method 
also lets you save disk space by storing only the choice numbers instead of 
the equivalent text. Memo fields use a mini-word processor that features 
automatic word wrapping, and horizontal and vertical scrolling to accommodate 
more text than can fit in the allotted screen space. Date calculations are 
fully supported, and the field data is packed to only two bytes to save disk 
space.
     Relational and indexed fields are flagged by the editing subroutines, 
although any indexing and relational operations must be handled by your 
program. Protected fields may be viewed by the user, but they are protected 
from being changed. Push buttons let you easily accept commands, such as Save, 
Load, or Print, and scroll bars provide a convenient way for users to select a 
single value from a range of values.
     Formulas for calculated fields may be based on any combination of fields 
plus both numeric and string constants. String formulas may be used to 
concatenate other fields to the calculated field. All of BASIC's math, 
logical, and relational operators are supported for field calculations, as are 
the transcendental (Trig) functions. Full mouse support is built into both the 
screen designer programs and also the supplied data entry modules that are 
added to your programs. The editing routines are called in a unique polled 
mode, which lets your program display,  save, or print data, even while new 
data is being entered. All editing, movement from field to field, and field 
calculations are handled for you automatically.

USING QUICKSCREEN AND GRAPHICS QUICKSCREEN

The QuickScreen subroutines are provided as BASIC source code that you load 
along with your program. The actual field contents are passed in a string 
array, with each element corresponding to one data-entry field. You may also 
pre-load one or more elements with default values and examine each field upon 
return. Further, all of the fields are combined for you into a single string, 
ready to be written to disk. Likewise, a record that has been read from disk 
is unpacked into separate fields automatically. This saves you from the tedium 
of writing MKI$, CVS, LSET, and FIELD statements for each different data file.

QuickScreen also includes a screen capture TSR program that lets you import 
any text-mode screen from any program. Graphics QuickScreen includes a similar 
utility for graphics, saving the image in a standard .PCX file. Besides 
display screens and data-entry forms, Graphics QuickScreen lets you design 3D 
sizable buttons, menus, and scroll bars that look and operate just like 
Microsoft Visual Basic(tm). When a push button is clicked it actually 
depresses, just like the buttons in a real Windows program. Imagine being able 
to write programs that look just like Windows but with the blazing speed of 
DOS! This is the closest you can get to a true graphical user interface (GUI) 
but without having to program in Windows.

THE FULL MOON PHILOSOPHY

As with all our products, full source code is provided at no additional cost, 
so you can see how the routines were designed and even modify them if you 
want. We genuinely want you to understand how our libraries work and be able 
to learn from them. All of our products are reasonably priced and include free 
technical assistance, but they are licensed for use by only one person using 
one computer at a time. Royalty payments are not required when our routines 
are incorporated into your compiled applications. However, you may not 
distribute our source, object, or library files. If your customers need to 
rebuild your program, they will need their own copy of our product(s).

     "The documentation for Graphics QuickScreen is among the best I've seen.
     It is well organized and serves both as a good tutorial and an excellent
     reference guide...For those dissatisfied with Visual Basic for DOS's text
     mode interface, Graphics QuickScreen offers considerably more flexibility
     to the programmer. --Michael Yard, BASICPro, 4/93

THE BOTTOM LINE

QuickScreen and Graphics QuickScreen cost $149 (each), and they work with 
QuickBASIC 4.x, PDS 7.x, and VB/DOS. Add $8 for UPS ground shipping to US 
addresses only (no P.O. boxes); Connecticut residents must add 6.0% sales tax 
or show proof of tax-exempt status. Please call for overnight and foreign 
shipping costs. We accept checks, MasterCard, and VISA. We do accept purchase 
orders, but they must be accompanied by full payment.

Full Moon Software * 34 Cedar Vale Drive * New Milford, CT  06776
Voice: 860-350-8188; Fax: 860-350-6130; e-mail: ethan@ethanwiner.com

QuickScreen(tm) and Graphics QuickScreen(tm) are trademarks of Crescent 
Software, Inc.



=============================================================================

THE COMPRESSION WORKSHOP(tm)
============================

Routines to Compress and Decompress Data
----------------------------------------

The Compression Workshop is a collection of subroutines and functions for 
compressing and decompressing array, string, file, and video memory data. 
Several complete programs are provided, including a full-featured Install 
utility you can use to distribute your own applications in compressed form, 
and also a disk backup and restore program that can be added to your programs 
or used stand-alone.
     The compression and decompression routines are designed for use with 
arrays, strings, and files. Numeric, TYPE, and fixed-length string arrays may 
be stored in compressed form on disk, either individually or in groups within 
a single file. One or more program or data files may also be combined into a 
single compressed file. Arrays may be compressed either in place (within 
memory) or stored in a disk file. When storing an array in a file, you 
indicate if the file is to be created, or if the array is to be added to an 
existing compressed file. Likewise, array data may be decompressed in place or 
read from disk. When compressing an array in memory, the compressed data 
replaces the original array contents, and the array is redimensioned to the 
new, smaller size automatically.
     Separate routines are provided to manipulate data in memory and on disk. 
Individual strings may be compressed and decompressed in place only, and the 
result is assigned to the same string. Video memory may be copied to an array 
using supplied routines and then compressed and optionally stored on disk. A 
compressed file that holds other files (not one that holds arrays) may 
optionally be converted to a self-extracting .EXE program that unpacks itself 
when run, placing all of the files it contains into the current directory or 
any specified directory.
     Finally, several complete demonstration programs are provided to show how 
the various Compression Workshop routines are used. These include utilities 
for compressing and decompressing groups of files based on command line 
options; an Install program that supports multiple distribution disks with 
separate target paths for all the files within each compressed file; and a 
stand-alone hard disk backup program that also shows how the backup and 
restore routines are added to your own programs. The backup and restore 
routines feature automatic disk formatting, volume labeling, traversing nested 
subdirectory levels, and they can optionally manipulate each file's archive 
bit. They can also automatically detect when a disk is changed, making them 
very easy for your customers to use.

THE FULL MOON PHILOSOPHY

As with all our products, full source code is provided at no additional cost, 
so you can see how the routines were designed and even modify them if you 
want. We genuinely want you to understand how our libraries work and be able 
to learn from them. All of our products are reasonably priced and include free 
technical assistance, but they are licensed for use by only one person using 
one computer at a time. Royalty payments are not required when our routines 
are incorporated into your compiled applications. However, you may not 
distribute our source, object, or library files. If your customers need to 
rebuild your program, they will need their own copy of our product(s).

THE BOTTOM LINE

The Compression Workshop costs $149 and works with QuickBASIC 4.x, PDS 7.x, 
and VB/DOS. Add $8 for UPS ground shipping to US addresses only (no P.O. 
boxes); Connecticut residents must add 6.0% sales tax or show proof of tax-
exempt status when ordering. Please call for overnight and foreign shipping 
costs. We accept checks, MasterCard, and VISA. We do accept purchase orders, 
but they must be accompanied by full payment.

Full Moon Software * 34 Cedar Vale Drive * New Milford, CT  06776
Voice: 860-350-8188; Fax: 860-350-6130; e-mail: ethan@ethanwiner.com

Compression Workshop(tm) is a trademark of Crescent Software, Inc.



=============================================================================

THE GRAPHICS WORKSHOP(tm)
=========================

Create Blazing Graphics--With Half the Code
-------------------------------------------

The Graphics Workshop is a comprehensive collection of graphic subroutines for 
use with EGA and VGA displays. Five major components add capabilities not 
present in regular BASIC and also reduce the size of your programs:

     * Low-level graphics primitives that are faster and smaller than their
       BASIC equivalents and include options not available in BASIC alone.

     * Routines for saving and loading full-screen images in .PCX files.

     * Text display routines that accept both foreground and background colors
       and can scale to nearly any size.

     * High-level menu and input routines.

     * Special video effects, including wipes, fades, and exploding images.

A NEW WAY TO HANDLE GRAPHICS

The Graphics Workshop is mainly intended for use with the EGA and VGA screen 
modes; however, some routines are also provided for use with CGA and Hercules 
displays, as noted. One of the reasons the Graphics Workshop routines are so 
much smaller and faster than BASIC's is because they don't have to accommodate 
so many different display memory methods. Also, BASIC requires floating point 
math calculations as part of its handling of VIEW and WINDOW, even when 
plotting a single pixel. In contrast, the Graphics Workshop routines use 
integer arguments exclusively and can reduce the size of your programs by as 
much as 25K. The Graphics Workshop is also ideal for use with our P.D.Q. 
library to add advanced graphics capabilities to programs that need to be as 
small as possible. In all, the Graphics Workshop includes more than 140 
routines, 35 BASIC demonstration programs, two font design systems, a .PCX 
file capture utility, and extensive documentation.

LOW-LEVEL ROUTINES

The Graphics Workshop provides small-code replacements for many of BASIC's 
graphics primitives including CIRCLE, POINT, and LINE (including with box 
fill). SCREEN replacements are also included to avoid the usual overhead 
associated with that command. Unlike regular BASIC, all of the low-level 
routines accept the AND, OR, and XOR style options. This lets you easily add 
rubber-banding and other special effects to your programs.
     Other low-level routines include saving and restoring areas of the 
screen, plotting and reading individual points, coloring selected portions of 
the screen, and scrolling regions up, down, left, or right. The Graphics 
Workshop  low-level routines are designed to operate in all the EGA and VGA 
Screen modes including 256 colors.

HIGH-LEVEL ROUTINES

Many high-level routines are provided for creating pull-down and vertical 
"light bar" menus, as well as horizontal Lotus-style menus. The pull-down and 
vertical menu routines include integrated mouse handling and feature a unique 
polled mode that lets your program continue while waiting for user input.
     Two pull-down menu programs are included, to look and operate just like 
the menus in the BASIC editor and Windows, respectively. The vertical menu 
accommodates nearly any number of choices, and you can control its size and 
placement on the screen. If more items are present than can be displayed, the 
menu scrolls automatically. All of the Graphics Workshop menus are very easy 
to set up and call, using a single string array to define the menu choices. 
All of the menus also save and restore the underlying screen automatically. 
Existing video memory can be optionally used for storing the screen portions. 
This avoids having to create separate arrays for storage, leaving that much 
more memory for your programs.
     The Graphics Workshop also includes a text input routine complete with a 
simulated cursor allowing new text to be added or existing text edited. Both 
insert and overstrike modes are allowed, and the color and length of the input 
field can be controlled. A pop-up "message box" subroutine lets you easily 
place text within any window.

LOADING AND SAVING .PCX FILES

Routines are provided for loading and saving full-screen graphics images using 
the popular .PCX file format. All of the BASIC-supported video modes are 
accommodated including VGA, VGA 256-color, EGA, CGA, and even Hercules 
monochrome. This lets you import high-quality images from all of the popular 
PC paint programs. Because .PCX screens are compressed, you may store images 
using as little memory and disk space as possible.

DISPLAYING TEXT

The Graphics Workshop PRINT replacement is up to ten times faster than 
BASIC's, and it lets you specify both the foreground and background colors. 
Text may be placed vertically at any arbitrary pixel position, which greatly 
simplifies adding legends and titles to your graphics screens. Two complete 
font definition systems are included for designing your own proportional 
character sets and controlling fully their size, placement, and even angle.

SPECIAL EFFECTS

A variety of clever special effects are provided, which you incorporate into 
your own programs. Effects include wipes, fades, slides, and imploding and 
exploding screens. All of the tools you need to design your own effects are 
also included. A complete script-driven slide show program lets you create 
self-running displays using any of the Graphics Workshop special effects.
     A full complement of mouse routines is available to read and set the 
mouse cursor position and define new cursor shapes. Additional routines report 
which buttons are pressed, turn the mouse cursor on and off, and control the 
mouse motion sensitivity.
     Finally, the Graphics Workshop furnishes a sophisticated routine for 
printing the display contents to either an Epson/IBM or compatible dot-matrix 
printer, or an HP LaserJet. Images may be printed from any of the BASIC-
supported video modes, either right side up or sideways. When using a Laser 
printer the image can also be placed anywhere on the page. Colors may be 
optionally translated to hatching patterns automatically. This feature is 
important for distinguishing different portions of a complex graphics screen 
when printed in black and white.

THE FULL MOON PHILOSOPHY

As with all our products, full source code is provided at no additional cost, 
so you can see how the routines were designed and even modify them if you 
want. We genuinely want you to understand how our libraries work and be able 
to learn from them. All of our products are reasonably priced and include free 
technical assistance, but they are licensed for use by only one person using 
one computer at a time. Royalty payments are not required when our routines 
are incorporated into your compiled applications. However, you may not 
distribute our source, object, or library files. If your customers need to 
rebuild your program, they will need their own copy of our product(s).

THE BOTTOM LINE

The Graphics Workshop costs $149 and works with QuickBASIC 4.x, PDS 7.x, and 
VB/DOS. Add $8 for UPS ground shipping to US addresses only (no P.O. boxes); 
Connecticut residents must add 6.0% sales tax or show proof of tax-exempt 
status when ordering. Please call for overnight and foreign shipping costs. We 
accept checks, MasterCard, and VISA. We do accept purchase orders, but they 
must be accompanied by full payment.

Full Moon Software * 34 Cedar Vale Drive * New Milford, CT  06776
Voice: 860-350-8188; Fax: 860-350-6130; e-mail: ethan@ethanwiner.com

Graphics Workshop(tm) is a trademark of Crescent Software, Inc.



==============================================================================

GRAPHPAK PROFESSIONAL(tm)
=========================

Add Professional-looking Graphs and Charts to Your Programs
-----------------------------------------------------------

GraphPak Professional is a collection of BASIC subroutines for displaying a 
variety of line, bar, and pie charts and graphs from within your own programs. 
The high-level routines provide a simple way to display complete graphs 
quickly, by passing arrays containing the numeric data and list of data 
legends. Low-level subprograms may be accessed directly to draw individual 
bars, lines, text strings, and so forth. Routines are also provided to save 
and load full-screen images in the popular .PCX format, for importing into 
desktop publishing programs. In all, GraphPak Professional lets you create six 
different types of graphs, and all can be drawn using an attractive 3D effect. 
The graph types are Bar, Pie, Line (linear, log, semi-log), High-Low-Close, 
Scatter Plot, and Surface Plot.
     A font editor is included that lets you create and edit custom fonts, as 
well as a tile designer which allows easy creation of interesting and 
attractive background patterns. Tiles are used throughout the GraphPak 
routines to paint the various bars and patterns used in the graphs. By using 
the tile editing program, you can design and specify a variety of hatching 
patterns to be used in your graphs.
     Seven different graphics video screen modes are supported: VGA screens 11 
and 12, EGA screens 9 and 10, CGA screens 1 and 2, and Hercules monochrome. An 
assembly language routine is provided to determine the type of monitor that is 
currently active, and the information it returns helps you select an 
appropriate screen mode. To make this even easier, GraphPak Professional 
includes a routine to initialize the highest resolution screen mode available 
for you automatically. Another subroutine is included to save EGA and VGA 
screens to disk, and yet another lets you print the screens.

THE FULL MOON PHILOSOPHY

As with all our products, full source code is provided at no additional cost, 
so you can see how the routines were designed and even modify them if you 
want. We genuinely want you to understand how our libraries work and be able 
to learn from them. All of our products are reasonably priced and include free 
technical assistance, but they are licensed for use by only one person using 
one computer at a time. Royalty payments are not required when our routines 
are incorporated into your compiled applications. However, you may not 
distribute our source, object, or library files. If your customers need to 
rebuild your program, they will need their own copy of our product(s).

     "Working with the variety of different graphic modes available on PCs is
     not a trivial matter, and GraphPak Professional does an admirable job of
     freeing the programmer from this concern...When it comes to graph types,
     GraphPak Professional covers almost every kind imaginable." --Michael
     Yard, BASICPro, 4/93

THE BOTTOM LINE

GraphPak Professional costs only $79, which represents a substantial savings 
compared to its original price of $149. It works with QuickBASIC 4.x, PDS 7.x, 
and VB/DOS. Add $8 for UPS ground shipping to US addresses only (no P.O. 
boxes); Connecticut residents must add 6.0% sales tax or show proof of tax-
exempt status when ordering. Please call for overnight and foreign shipping 
costs. We accept checks, MasterCard, and VISA. We do accept purchase orders, 
but they must be accompanied by full payment.

Full Moon Software * 34 Cedar Vale Drive * New Milford, CT  06776
Voice: 860-350-8188; Fax: 860-350-6130; e-mail: ethan@ethanwiner.com

GraphPak Professional(tm) is a trademark of Crescent Software, Inc.



==============================================================================

PDQCOMM(tm)
===========

Add Full-Featured Communications to Your Compiled BASIC Programs
----------------------------------------------------------------

PDQComm contains both high- and low-level communications routines that let you 
go far beyond what is possible using BASIC's native OPEN "COM" command alone. 
PDQComm was originally written for use with our P.D.Q. replacement link 
library, because the P.D.Q. OPEN statement doesn't support a Com port 
argument. Therefore, these tools are necessary to add communications when 
using P.D.Q. However, PDQComm is also ideal for use with regular BASIC 
programs, to avoid the need for ON ERROR and to add advanced features not 
available using BASIC commands alone. Many programmers prefer to avoid ON 
ERROR when possible, because of the code size and speed penalties that ON 
ERROR imposes.
     PDQComm offers many enhancements not available in BASIC such as 16550 
FIFO support, non-standard protocols, and XModem CRC, YModem, and ASCII file 
transfers. Other important enhancements include a unique LINE INPUT 
replacement that accepts a time-out value, functions to read and set the 
hardware lines, the ability to communicate at speeds up to 115k BPS, and much 
more. The timed input routine is particularly valuable because it prevents 
your PC from hanging if the remote terminal never sends a CHR$(13) to end the 
current line. PDQComm also lets you change the baud rate and other Com port 
parameters, even while the port is open. All of the PDQComm routines are 
designed to emulate the syntax of the BASIC routines they replace, to make 
them easier to learn and use. For example, to determine how many characters 
have been received and still wait to be read, you'd use the ComLoc function, 
as opposed to BASIC's LOC. Although PDQComm supports ports 1 through 4, only 
two ports may be open at one time, unless you have hardware specifically 
designed to operate all four ports at once.
     Also included are routines that emulate ANSI, DEC VT52 and VT100, Data 
General D215, and generic terminals. The ANSI emulation provides all the color 
and cursor control abilities of ANSI.SYS, without having to waste memory 
loading that driver. The emulation routines can operate within a windowed 
area, and you can even have multiple windows active at one time. You control 
how the emulation routines print, specifying either direct writing to video 
memory for maximum speed, or through the BIOS for compatibility with other 
programs.
     All the PDQComm routines are very small and thus add very little to the 
size of your .EXE files--the core routines needed for a complete terminal 
program add less than 2500 bytes! Compare that to the 12k compiled BASIC adds 
when you use OPEN "COM." Many useful examples are included, and the PDQComm 
documentation contains extensive tutorial information, including a complete 
overview of communications in general. Additional tutorials explain modems, 
serial cables, port parameters, and UARTs. All the important standard Hayes 
commands are described in detail, and each emulation also includes a table of 
control codes that are recognized.

THE FULL MOON PHILOSOPHY

As with all our products, full source code is provided at no additional cost, 
so you can see how the routines were designed and even modify them if you 
want. We genuinely want you to understand how our libraries work and be able 
to learn from them. All of our products are reasonably priced and include free 
technical assistance, but they are licensed for use by only one person using 
one computer at a time. Royalty payments are not required when our routines 
are incorporated into your compiled applications. However, you may not 
distribute our source, object, or library files. If your customers need to 
rebuild your program, they will need their own copy of our product(s).

THE BOTTOM LINE

PDQComm costs $129 and works with QuickBASIC 4.x, PDS 7.x, and VB/DOS. Add $8 
for UPS ground shipping to US addresses only (no P.O. boxes); Connecticut 
residents must add 6.0% sales tax or show proof of tax-exempt status when 
ordering. Please call for overnight and foreign shipping costs. We accept 
checks, MasterCard, and VISA. We do accept purchase orders, but they must be 
accompanied by full payment.

Full Moon Software * 34 Cedar Vale Drive * New Milford, CT  06776
Voice: 860-350-8188; Fax: 860-350-6130; e-mail: ethan@ethanwiner.com

PDQComm(tm) is a trademark of Crescent Software, Inc.



=============================================================================

DON MALIN'S CROSS REFERENCE PROGRAM (XREF)(tm)
==============================================

The Most Sophisticated Cross-Reference Program Ever Developed
-------------------------------------------------------------

Serious programmers have always understood the value of a good cross-reference 
program, but with today's large, modular applications, much more is often 
necessary. XREF is a sophisticated cross-reference utility program that 
provides comprehensive documentation about an entire application. Unlike other 
cross-reference programs you may have seen that merely list each variable, 
XREF provides a wealth of useful reports that show exactly what is going on in 
your programs. Of course, XREF does a terrific job of listing variables in 
alphabetical order, so you can quickly spot any that are misspelled. But XREF 
goes far beyond that--it is the very best way to completely document your 
entire program. XREF is also ideal when you need to understand and work on 
someone else's programs, or update a program you wrote long ago.
     XREF is extremely easy to use, and all of its operations are handled 
using pull-down menus and dialog boxes. This avoids having to memorize 
confusing commands or option switches. Most aspect of the program, such as 
report and printer settings, are user-definable, and the current setup may be 
saved to individual configuration files or to a system default configuration 
file. Many useful reports can be created, and they may be sent to a printer, a 
disk file, or viewed on-screen in a unique browse mode that lets you scroll 
the report vertically and horizontally. The report browsing feature is 
particularly valuable because the reports are available immediately for 
viewing without tying up your printer or wasting paper.
     XREF examines all of the files that comprise your application, including 
those modules that are external to your main BASIC program file. Further, all 
Include files are read and processed. XREF understands COMMON and SHARED, as 
well as DIM AS, DEFINT, and all the other DEFtype statements. XREF is 
compatible with all versions of Microsoft BASIC for DOS, including GW-BASIC 
and BASICA, so it is ideal when you are converting a large program from those 
earlier dialects. Because XREF processes your program in a single pass, it is 
also extremely fast. XREF reads all of the source code that is associated with 
your program and then parses the individual program objects into tables. 
Object types include key words, DEF FN functions, SUB and FUNCTION procedures, 
line labels, and CONST constants. Other object types include simple numeric, 
string, and TYPE variables, as well as Static and Dynamic numeric, string, and 
TYPE arrays. After all of the source code has been read, XREF creates a 
database of the object tables for further processing. This lets you run other 
reports later on, without having to process the source files again. XREF 
offers many different perspectives on a program, by providing the following 
information:

     * GENERATES SOURCE LISTINGS WITH HEADERS AND PHYSICAL LINE NUMBERS. Line
       numbers can be listed as relative to the beginning of procedures, like
       the BASIC editor, or relative to the start of the source file.

     * COMPLETE CONTROL OVER HOW PROGRAMS ARE LISTED. Each procedure can start
       on a new page if you prefer. XREF also prints a Table of Contents for
       the entire listing showing the starting page number for each procedure.

     * CREATES CALL TREE DIAGRAMS. The XREF Call Tree report shows the
       interrelationships between all of the procedures used in your
       application. The report may be organized either alphabetically, or in
       logical (order of occurrence) order. This helps you to more easily
       visualize the overall structure of your program.

     * GENERATES AN OBJECT SUMMARY REPORT. The Object Summary report lists all
       of your program objects, such as BASIC key words, SUB and FUNCTION
       procedures, simple and TYPE variables, and both Static and Dynamic
       arrays. Objects are grouped by their type and displayed alphabetically.
       Each object is listed showing where it was defined and how many times
       it was used. The BASIC Key Word report shows which statements you have
       used, flagging those that bring in the BASIC floating point library,
       thus increasing the size of your .EXE program file. This report also
       shows which key words are not supported by our P.D.Q. library. The
       Object Summary report also identifies variables referenced only once,
       as well as procedures that are declared or defined but never used.


     * PROVIDES COMPLETE INFORMATION ABOUT EACH VARIABLE. Program elements can
       be listed by procedure along with their type, so you can easily see
       which variables are passed as parameters and which are Static, Dynamic,
       and Shared. If the same element is used in different modules (such as
       COMMON variables), this is listed as well. These features let you know
       immediately which variables are affected by procedures and which are
       private.

     * UNDERSTANDS ALL BASIC SOURCE LISTING METACOMMANDS. Although Microsoft
       no longer documents the various metacommands in their manuals, all
       current versions of the compiler recognize them. The XREF owner's
       manual provides a complete listing of all useful options, and the
       program honors them as it displays the various reports. This lets you
       define titles and subtitles for each page, turn the source listing on
       and off, and so forth.

     * EXTRACTS QUOTED STRINGS FOR SPELL CHECKING. A special utility is
       provided to extract all quoted strings and remarks and write them to a
       file, so you can proof and spell-check them using any word processor. A
       companion utility merges the corrected text back into your program
       files, with the original spacing intact. This feature also helps if you
       need to translate all of a program's text to a foreign language.

     * REMOVES UNUSED LINE NUMBERS FROM OLD PROGRAMS. Many programmers don't
       realize that unnecessary line numbers can slow down the BASIC compiler
       and impinge on its working memory. Line numbers can also make a program
       larger and run more slowly when certain compiler options are used. A
       separate utility is included to remove all line numbers from your
       source files that are not actually needed.

     * SIMPLIFIES MODULARIZATION. A unique report shows all of the variables
       that are referenced both within a given range of source lines and also
       referenced outside that range. If you need to convert a section of code
       (such as a GOSUB routine) into a subprogram or function, this report
       shows you which variables must be passed or shared.

THE FULL MOON PHILOSOPHY

As with all our products, full source code is provided at no additional cost, 
so you can see how the routines were designed and even modify them if you 
want. We genuinely want you to understand how our libraries work and be able 
to learn from them. All of our products are reasonably priced and include free 
technical assistance, but they are licensed for use by only one person using 
one computer at a time. Royalty payments are not required when our routines 
are incorporated into your compiled applications. However, you may not 
distribute our source, object, or library files. If your customers need to 
rebuild your program, they will need their own copy of our product(s).

     "This product can prevent keeping track of variables from becoming a
     nightmare, make debugging easier, help optimize code, and generally
     save you many hours managing your programs...Without question, XREF is
     a valuable tool for all BASIC programmers."--Bill Reilly, BASICPro, 4/93

THE BOTTOM LINE

Don Malin's XREF costs $79 and works with QuickBASIC 4.x, PDS 7.x, and VB/DOS. 
Add $8 for UPS ground shipping to US addresses only (no P.O. boxes); 
Connecticut residents must add 6.0% sales tax or show proof of tax-exempt 
status when ordering. Please call for overnight and foreign shipping costs. We 
accept checks, MasterCard, and VISA. We do accept purchase orders, but they 
must be accompanied by full payment.

Full Moon Software * 34 Cedar Vale Drive * New Milford, CT  06776
Voice: 860-350-8188; Fax: 860-350-6130; e-mail: ethan@ethanwiner.com

Don Malin's XREF(tm) is a trademark of Crescent Software, Inc.



=============================================================================

QUICKPAK(tm) SCIENTIFIC
=======================

A Powerful Numerical Analysis Toolbox for DOS Compiled BASIC
------------------------------------------------------------

QuickPak Scientific is a comprehensive collection of subroutines and functions 
that add numerical analysis to your BASIC programs. Each routine is provided 
in the form of a flexible and easy to use BASIC algorithm designed to help you 
solve practical and challenging problems in engineering, science, and other 
technical applications. QuickPak Scientific consists of three key components 
designed to simplify your numerical analysis programming:

     * Source code for state-of-the-art BASIC subroutines and functions. These
       routines perform a variety of fundamental and sophisticated numerical
       analysis tasks which may be too time-consuming or difficult to program
       and debug yourself.

     * Interactive BASIC demonstration programs. These sample programs
       illustrate the proper procedure for working with each QuickPak
       Scientific routine. Many of these programs also provide an example
       problem for solution, and each program displays information about the
       algorithm and its performance.

     * The QuickPak Scientific owner's manual. This comprehensive document
       describes the procedures for integrating the QuickPak Scientific
       algorithms into your own BASIC applications. It also serves as a
       tutorial about the art and science of numerical analysis and includes
       many programming hints and tips.

Every QuickPak Scientific algorithm includes a complete description of the 
required input and resultant output. Many of the demonstration programs offer 
an example problem for solution--the software interactively prompts you for 
the required inputs, and several programs also recommend typical input values. 
Other interactive programs allow the BASIC programmer to assess the effects of 
such things as step size, algorithm iterations, convergence criteria, and 
other factors on the behavior and performance of a particular numerical 
method. To illustrate this point, the following is a typical output from the 
QuickPak Scientific Simpson Integration program:

     +----------------------------------------------------------------+
     |                        PROGRAM DEMOINT5.BAS                    |
     |           Adaptive Integration of User-Defined Functions       |
     |    Function Lower Integration Limit = 0                        |
     |    Upper Integration Limit          = 1                        |
     |    Solution Accuracy                = .00000001                |
     |    Integral Value                   = .74682413                |
     |    Estimated Error                  =  1.0925039D-10           |
     +----------------------------------------------------------------+

     * SYSTEMS OF LINEAR EQUATIONS: The Linear Algebra routines solve systems 
of linear equations using the LU decomposition, Gauss-Jordan elimination, and 
iterative improvement methods. An algorithm is also included for solving 
tridiagonal systems of linear equations using Gaussian elimination with 
partial solving.

     * ORDINARY AND PARTIAL DIFFERENTIAL EQUATIONS: QuickPak Scientific 
contains a complete set of algorithms for solving first- and second-order 
systems of ordinary differential equations. These methods include the classic 
fourth-order Runge-Kutta and Nystrom methods, three adaptive Runge-Kutta-
Fehlberg algorithms, and a variable-order Adams-Bashforth-Moulton predicator-
corrector subroutine. Efficient BASIC subroutines are also provided for 
solving the Poisson heat and wave partial differential equations.

     * INTEGRATION AND DIFFERENTIATION: The ability to numerically integrate 
user-defined analytic and tabulated functions is also part of QuickPak 
Scientific. Tabular data can be integrated with either Simpson or cubic spline 
subroutines. Single definite integrals of analytic user-defined functions can 
be quickly and accurately evaluated with a Romberg algorithm. A Composite 
Simpson method is also provided for integrating both double and triple 
definite integrals of analytic functions you define. An adaptive integration 
method based on Simpson's method completes this series of algorithms. The 
derivatives of both user-defined analytic and tabulated functions can also be 
calculated with QuickPak Scientific. These three differentiation subroutines 
perform numerical differentiation by the classic methods of finite-divided 
differences, Lagrange's method, and cubic splines.

     * NON-LINEAR EQUATIONS AND OPTIMIZATION: QuickPak Scientific has six 
subroutines for non-linear equations. These solve for the real roots of the 
general, quadratic, cubic, and quartic equations. This series of routines also 
includes an algorithm for computing the real and complex roots of any 
polynomial up to order 36. Two other routines solve single non-linear 
equations, both with and without derivatives. Non-linear optimization is the 
most powerful numerical method for technical applications--it's also the most 
difficult to implement. QuickPak Scientific provides five flexible and 
powerful algorithms for this purpose. These subroutines can be used to solve 
for the minimum or maximum of scalar functions of one or more variables. A 
complete program is included for solving the constrained, non-linear 
optimization problem. (The source is more than 20,000 lines of BASIC code!)

     * INTERPOLATION AND CURVE FITTING: Important technical information often 
exists in the form of empirical or experimental data which must be carefully 
interpreted. To address this need, QuickPak Scientific includes several 
routines for interpolating tabulated data in the form y = f(x) using both 
natural and clamped cubic spline techniques. A subroutine is also provided 
which can linearly interpolate both two- and three-dimensional tabular data. 
Curve-fitting of experimental data is very important in science and 
engineering, and QuickPak Scientific provides three flexible subroutines for 
this purpose. The first algorithm can fit data to simple linear, log, and 
exponential functions. The second performs a least-squares fit to data of the 
form y = f(x), and the third subroutine calculates fitting coefficients to a 
three-dimensional surface of the form z = f(x, y) using a Maclaurin series.

     * FAST FOURIER TRANSFORMS: QuickPak Scientific offers two algorithms 
which compute the forward and inverse Fast Fourier transforms of real or 
complex data. These routines transform both one- and two-dimensional data 
using the Danielson-Lanczos or bit reversal methods.

     * STATISTICS AND COMPLEX NUMBERS: Also included are routines for 
computing characteristics of Normal, Chi-squared, F-distribution, and T-
distribution statistical functions. These algorithms can determine point x 
from probability and degrees of freedom, or determine probability for point x 
for each type of statistical distribution. QuickPak Scientific includes eight 
routines for performing calculations with complex numbers. These subroutines 
can add, subtract, multiply, and divide two complex numbers, raise a complex 
number to a power, compute its Nth and square root, and find the reciprocal of 
a complex number.

     * TRIGONOMETRY: BASIC's built-in capabilities are extended with the 
QuickPak Scientific trigonometry routines. These flexible functions provide 
easy-to-use inverse sine, cosine, tangent, and hyperbolic functions.

     * VECTORS AND MATRICES: The QuickPak Scientific matrix subprograms 
provide flexible algorithms for performing a variety of calculations involving 
matrices. Included are subroutines for computing the inverse and determinant 
of a square matrix, eigenvalues and eigenvectors, rank of a matrix, and 
fundamental matrix operations, such as addition, subtraction, and 
multiplication. The vector routines let you easily perform numerical 
calculations involving vectors. These calculations include the dot and cross 
product of two vectors; fundamental operations such as vector addition, 
subtraction, and multiplication; and the triple scalar and vector products.

THE FULL MOON PHILOSOPHY

As with all our products, full source code is provided at no additional cost, 
so you can see how the routines were designed and even modify them if you 
want. We genuinely want you to understand how our libraries work and be able 
to learn from them. All of our products are reasonably priced and include free 
technical assistance, but they are licensed for use by only one person using 
one computer at a time. Royalty payments are not required when our routines 
are incorporated into your compiled applications. However, you may not 
distribute our source, object, or library files. If your customers need to 
rebuild your program, they will need their own copy of our product(s).

THE BOTTOM LINE

QuickPak Scientific costs $149 and works with QuickBASIC 4.x, PDS 7.x, and 
VB/DOS. Add $8 for UPS ground shipping to US addresses only (no P.O. boxes); 
Connecticut residents must add 6.0% sales tax or show proof of tax-exempt 
status when ordering. Please call for overnight and foreign shipping costs. We 
accept checks, MasterCard, and VISA. We do accept purchase orders, but they 
must be accompanied by full payment.

Full Moon Software * 34 Cedar Vale Drive * New Milford, CT  06776
Voice: 860-350-8188; Fax: 860-350-6130; e-mail: ethan@ethanwiner.com

QuickPak(tm) Scientific is a trademark of Crescent Software, Inc.



===============================================================================

           CURRENT PRODUCT VERSION NUMBERS, WITH NEW AND UPDATE PRICES

Product                 Version     Price New   Full Upgrade  Disk-Only Upgrade
---------------------   -------     ---------   ------------  -----------------
QuickPak Professional    4.20        $199.00      $99.00          $39.00
P.D.Q.                   3.14        $149.00      $59.00          $29.00
PDQComm                  2.64        $129.00      $49.00          $12.00
QuickScreen              4.02        $149.00      $59.00          $12.00
Graphics QuickScreen     1.12        $149.00        n/a           $12.00
Compression Workshop     1.11        $149.00        n/a           $12.00
Graphics Workshop        1.17        $149.00        n/a           $12.00
GraphPak Professional    3.08         $79.00      $49.00          $12.00
Don Malin's XREF         2.24         $79.00      $39.00          $12.00
QuickPak Scientific      3.10        $149.00      $59.00          $12.00

Shipping charges (USA only, per order):         Serial number (upgrades only):
     Standard UPS ground:     $8.00                     ______________________
     UPS Blue (2nd day):     $12.00                     ______________________
     UPS Red (overnight):    $21.00                     ______________________
     UPS COD add (per order): $4.75                     ______________________

Foreign orders are shipped by UPS Expedited service or US Postal Express Mail 
(whichever is cheaper), and are charged at our actual cost.

The full upgrades listed above include a manual, and are needed if your 
version's major number is less than the current version. For example, if you 
have P.D.Q. version 2.1 you need the major upgrade. But for P.D.Q. version 
3.02 the disk-only upgrade is sufficient because you already have the current 
manual (the new features are listed in a README file). A new manual was 
created for PDQComm at version 2.50, so if your version is earlier than that 
you will need a new manual.  All upgrade orders require a valid serial number 
and the current version number of your product.

Name: _________________________________________________________________
Company: ______________________________________________________________
Address: ______________________________________________________________
Address: ______________________________________________________________
City: ________________________________ State: _________ Zip: __________
Daytime phone number: _________________________________________________

If ordering by mail, please indicate the products and/or upgrades you are 
ordering by printing this page and circling their prices on the table above.  
All products are supplied on 3-1/2" disks unless specified otherwise. Please 
note: we use UPS for all shipping, and they cannot deliver to a P.O. Box.

                              Subtotal of products purchased: ________________
                      Connecticut residents add 6% sales tax: ________________
                                                    Shipping: ________________
                                         COD (if applicable): ________________
                                            Total this order: ________________

Method of payment (indicate one):
     * Check     * Money Order    * COD (cash only)    * MasterCard  * Visa

Credit card number:                                           Expiration date:
     ___________________________________________               _______________

Signature: _______________________________________________  Date: ____________


Full Moon Software * 34 Cedar Vale Drive * New Milford, CT  06776
Voice: 860-350-8188;  e-mail: ethanw@ethanwiner.com
