/*                                   VAL.C                                  */

/*+-------------------------------------------------------------------------+
  |                                                                         |
  |  This program is released to the public domain by the author on         |
  |  February 15, 1989 at the Software Development Conference,              |
  |  San Francisco, CA.  With the understanding that there are no           |
  |  warranties of any sort either expressed or implied, you may use the    |
  |  code in whole or part for any lawful purpose.  The author does not     |
  |  warrant or guarantee that this code is fit for any particular purpose. |
  |  You are under no obligation to acknowledge the author when using this  |
  |  code, but you may do so if you desire.  The author neither seeks nor   |
  |  desires any contributions for this code.                               |
  |                                                                         |
  |  Should you desire to communicate with the author, the preferred method |
  |  is via the author's bulletin board, Pontchippi.  Pontchippi is an      |
  |  OPUS board.  You may contact it directly at 504-244-1417 or via net    |
  |  mail to node 390/105.  The board has a 9600 baud US Robotics Courier   |
  |  HST modem.  Should you contact the board directly, access to the board |
  |  is granted immediately up completion of a very simple questionnaire.   |
  |                                                                         |
  |  The author wishes to acknowledge and thank Jack Purdum and Tim Leslie  |
  |  of Ecosoft for their assistance and support.  In addition to Jack and  |
  |  Tim, Steve Russell of SLR Systems was also of invaluable assistance.   |
  |  All helped in this project by debugging and offering their expert      |
  |  advice and guidance.  They always had time for me seemingly whenever   |
  |  I requested it.                                                        |
  |                                                                         |
  |  Finally, this program is dedicated to the memory of my father-in-law,  |
  |  Mariano "Val" Valentino.  The only request the author makes for        |
  |  using the program is that the program name be left as "VAL" in his     |
  |  memory.                                                                |
  |                                                                         |
  |  David Troendle                                                         |
  |  New Orleans, LA                                                        |
  |  February 10, 1989                                                                       |
  |                                                                         |
  +-------------------------------------------------------------------------+*/

To compile the slides for the linker presentation, enter the command:

              slcomp lkslides.src lkslides

This compiles the source file to the lkslides which is suitable for input
to the slide show program.  To play the slides, enter the command:

              slshow lkslides

On the menu screen, the cursor up and down keys along with the page up and
down keys will traverse through the menu.  To select a slide for viewing,
hit the enter key.

On a slide screen, the the cursor up and down keys move to either the
previous or next slide.  To return to the menu, use the enter key.  To
exit, use the escape key.
------------------------------------------------------------------------

David L.:

I have changed val somewhat but it is still in the public domain.

Here is an outline of the changes:

1) changed program to be compiled with 32-bit compiler.  Should still
   work with a 16-bit compiler, but, you need to fix the memory management
   to go back to getting the size of memory from DOS to do that.  Also
   grab an old version of asmsubs or convert it back... and you will
   need to supply functions for getting the drive and directory from
   DOS.

2) ansified as much as I could.  The following four functions are
   non-standard DOS:

   _dos_findfirst
   _dos_findnext
   _getdrive
   _dos_getpwd

   The first three can be found in the BC compiler runtime libs or
   easily implemented through DPMI... the fourth I had to create an
   assembly stub for and it is in DOSDEPS.C

3) got it to process 32-bit records.  Use the -32 switch to enable
   this feature.

4) modified memory management.  Use the -ArenaSize switch to specify
   the amount of memory to gobble up at run-time (Default 1MB) and use
   the -ChunkSize switch to tell it if you need larger segment sizes
   (Note: set ChunkSize less than ArenaSize/3 unless you don't want to link).

5) split it into seperatly compiled modules.  I really didn't want to do this
   but I couldn't debug my fixes :(.  The biggest change there is there
   is now both a 'globals.c' and a 'globals.h' that have to be maintained.

6) you can use '-' now as a command line switch

7) fixed the 'unresolved external' error to take up less screen space

8) fixed the parsing of the @ character so it can be used in
	file names now as long as it isn't the first char.  Works well
	with borland make now...

Warning: when using 32-bit mode fixups are NOT checked to be within
the frame.  This is only an issue if you have a buggy translator.  Note
that the 16-bit mode is the same as it was... fixups must reside within
the 64K of the frame.