SP Linking with SuperLib

 Linking with either RTLINK or BLINKER is fairly
 painless. (OR EXOSPACE FOR 5.3)

 For RTLINK I use:

     RTLINK FI <file> LIB SUPER35

 For BLINKER I use


 For EXOSPACE (5.3) I use


 Of course you may also use a link file.


SP Changing SuperLib

 If you wish to change the source code to certain
 SUPER.Lib modules and replace them in the SUPER.LIB file,
 you will need access to a library manager.

 The most popular and accessible is LIB.EXE, from
 Microsoft, which comes with many Microsoft compilers.
 You will need version 3.11 or above of LIB.EXE.

 To update the library, do the following:

   1. Change and test the .PRG, .C  or .ASM module.

      for Clipper (PRG) modules, I use:

          CLIPPER <file>  -n  -w

      for  C  (C) modules, I use:  (MSC 5.0)

          CL /c  /AL  /Zl  /Oalt /FPa  /Gs  /Fo<file>.obj <file>.c

      for Assembly (ASM) modules, I use: (MASM 5.10)

          MASM   <file>;

   2. After testing, use the following to replace the module in
      the library with the new .OBJ file:

            LIB SUP??? -+<objectfilename> ;


            LIB SUP???  -+<objectfilename1>+<objectfilename2>;

 The semicolon is important.

 Further documentation will be found in the LIB.EXE
 reference manual.


SP Internal Datafile Structures


  SMODULE        C       8    Calling Proc
  SFIELD         C       10   Calling variable
  SDESCR         C       25   Description/box title
  SSTRING        C       160  Display expression
  SRETURN        C       75   Return expression
  SDBFILE        C       8    DBF file
  SIND           C       8    Index file


  H_MOD          C       10   Calling Proc
  H_VAR          C       10   Calling variable
  H_MEMO         M       10   Help text
  HW_T           N       2    Window top
  HW_L           N       2    Window Left
  HW_B           N       2    Window Bottom
  HW_R           N       2    Window right


  DESC           C      45    Description of list
  LIST           C      200   Delimited string of list


  DESCRIPT       C       50   Description of the form
  MEMO_ORIG      M       10   Form letter


  CATEGORY       C       10   Category of item
  ITEM           C       60   Item description
  PRIORITY       C       2    Priority of item
  DOBY           D       8    Do by date
  DONE           L       1    Done marker
  LONG_DESC      C       231  Long description


  DBF            C      12    DBF query built for
  DES            C      30    Description of query
  FQUERY         C      220   Query expression


  SF_DBF         C   8    Dbf name
  SF_NDXKEY      C   60   Sort key(index)
  SF_MAJKEY      C   60   Major sort key
  SF_MINKEY      C   60   Minor sort key
  SF_TITLE       C   35   Report name
  SF_MAJTEXT     C   25   Major key text
  SF_MINTEXT     C   25   Minor key text
  SF_WIDTH       N   3    Pg width chrs
  SF_LENGTH      N   3    Pg length lines
  SF_LEFTM       N   2    Left margin
  SF_TOPM        N   2    Top margin
  SF_SPACE       N   1    Line spacing
  SF_PAUSE       L   1    Pause between
  SF_NPLINES     N   1    Lines left
  SF_EJB4        L   1    Eject b4 report
  SF_EJAFT       L   1    Eject aftreport
  SF_EJMAJOR     L   1    Eject on Major
  SF_EJMINOR     L   1    Eject on Minor
  SF_EJGRAND     L   1    Eject b4 Grand
  SF_UNTOTAL     L   1    Underline ttals
  SF_MAJCHR      C   1    Major underline char
  SF_MINCHR      C   1    Minor underline char
  SF_NHEAD       N   1    # header lines
  SF_NFOOT       N   1    # footer lines
  SF_NTITL       N   1    # title lines
  SF_TSEP        C   1    Title separation char
  SF_COLSEP      C   1    Col sep char
  SF_CSEPWID     N   1    Col sep width
  SF_LINESEP     C   1    Line sep char
  SF_NCOLS       N   2    # columns
  SF_FEET        M   10   Footer contents
  SF_HEADS       M   10   Header contents
  SF_STDHEAD     L   1    Use standard header
  SF_DETAILS     M   10   Detail contents
  SF_QUERY       C   100  Last used query
  SF_FULLSUM     C   1    Full / summary
  SF_PRNCODE     C   50   Printer code pre-report
  SF_AFTCODE     C   50   Printer code post-report


  DESCRIPT       C   60      Description
  WIDTH          N   2       Label width
  SPACESBETW     N   2       Spaces between labels
  LINESBETW      N   2       Lines between labels
  ACROSS         N   2       Labels across
  LMARGIN        N   2       Left margin
  HEIGHT         N   2       Label height (lines)
  SETUPCODE      C   60      Pre print setup code
  EXITCODE       C   60      Post print code
  CONTENTS       M   10      Label contents
  PRNPORT        C   10      Printer port
  SHEETS         L   1       Using hand-fed sheets?
  LBLSPAGE       N   3       Labels per page
  TOPMARG        N   2       Top margin (lines)
  PAUSE          L   1       Pause between pages
  EJECT          L   1       Eject each page
  DBFNAME        C   8       DBF name

  SETNAME        C  40    Set name
  DMAINCOL       C  40    SLS_NORMCOL() setting
  DMAINMENU      C  40    SLS_NORMMENU() setting
  DPOPCOL        C  40    SLS_POPCOL() setting
  DPOPMENU       C  40    SLS_POPMENU() setting
  DFRAME         C  40    SLS_FRAME() setting
  DSHADATT       N   3    SLS_SHADATT() setting
  DSHADPOS       N   1    SLS_SHADPOS() setting
  DEXPLODE       L   1    SLS_XPLODE()  setting


  DATE           C   8   Appointment date
  TIME           C   5   Appointment time
  DESC           C  65   Description



  TOPIC C 35


SP Internal Datafiles

 SuperLib uses a number of internal datafiles to store

 such things as queries, reports and colors.

 All of these files have default names - for instance
 queries are stored in QUERIES.DBF by default. SuperLib 3.x
 provides a series of functions to determine internal file names
 and locations.

 All of these functions start with SLSF_ (Super Lib System File )

 Function                 Purpose                Default

 SLSF_REPORT([cNew])      Stored reports         SFREPORT
 SLSF_QUERY([cNew])       Stored queries         QUERIES
 SLSF_FORM([cNew])        FORMLETR() forms       FORM
 SLSF_HELP([cNew])        Help records           HELP
 SLSF_LIST([cNew])        LISTER() definitions   PLIST
 SLSF_SCROLL([cNew])      Lookup definitions     SCROLLER
 SLSF_COLOR([cNew])       Color sets             COLORS
 SLSF_TODO([cNew])        TODOLIST() dbf         TODO
 SLSF_TDN1([cNew])        TODOLIST 1st index     TODO
 SLSF_TDN2([cNew])        TODOLIST 2nd  index    TODOP
 SLSF_TDN3([cNew])        TODOLIST 3rd  index    TODOD
 SLSF_APPT([cNew])        Appointments           APPOINT
 SLSF_LABEL([cNew])       Labels database        CLABELS
 SLSF_OLD([cNew])         O.L.D. doc database    SLOLDS

 Where [cNew] optionally sets the path and/or filename.
 If [cNew] is passed, this is the value returned as

 For example, to change the default file and place
 where reports are stored when using REPORTER(),

              // sets the report file
              // to MYREPORT.DBF in
              // c:\HIDDEN

 These take the place of the following public
 variables in earlier versions of SuperLib:

     _REPORTS   = "SFREPORT"   (for reports)
     _FORMS     = "FORM"       (for form letters)
     _QUERIES   = "QUERIES"    (for queries)
     _LISTER    = "PLIST"      (for lister)
     _TODODBF   = "TODO"       (for todo list)
     _TODONTX1  = "TODO"       (TODO category INDEX)
     _TODONTX2  = "TODOP"      (TODO priority INDEX)
     _TODONTX3  = "TODOD"      (TODO do by INDEX)
     _HELP      = "HELP"       (for help)
     _SCROLLER  = "SCROLLER"   (for scroller)
     _COLORS    = "COLORS"     (for colors)

 COLORS are now stored in a DBF file, rather than a
 .MEM file.