;
                                   QLUX.COM                                   

             Size (recs) CRC   Version    Author/Latest Issue      Disk
QLUX.COM      19k (145)  755E  1.21       Sean Sullivan 4/90       Z3COM10
QLUXKMD.COM   18k (140)  EE21  1.21       Sean Sullivan 4/90       Z3COM10
QLUXZMD.COM   18k (140)  0E9A  1.21       Sean Sullivan 4/90       Z3COM10

  1- Configuration  2- Notes  3- Examples of Use                              

   QLUX is a replacement for the standard LUX program.  It is written in Basic
and is easily modified to use  programs  of your choice.   It  uses the multi-
command line feature of ZCPR (ZCMD) and will easily adapt to most RCP/M setups
including NZCOM.
 
   QLUX.COM is for local use,  QLUXKMD and QLUXZMD for BBS use.   Vs 1.21 adds 
CR, UNCR,  LT,  READ,  VIEW, and VDE commands for the local version and a ZCMD 
command for Z-System commands  not  found  in the  local  version.
:1
 Configuration - 1/4 

   Comment out any commands in the BASIC source you do not want to use and any
parts of the help menu you do not want to be shown.   Vs. 1.21 has the command 
line buffer (aka MCL) located at F500.   Change that address  and put together 
with BASCOM and L80 (or whatever linker you may have - SLRNK, DLINKLOC, etc.).


OPTIONS TO EDIT:

The following are the options that may be changed to suit your setup:

MCL=&HFC00
MCL is the address of the multi-command buffer that accepts the QLUX commands.
This address may  be  found on ZCPR3 (NZCOM) systems by running Z3LOC with the 
'Z' option.  If you are using ZCMD you must check the source code.
 Configuration - 2/4 

DEBUG=FALSE
The Debug  option sends  the  command  line to  the screen.   To  be used when
commands do not work as you expect.

PASSCMD=FALSE
The Passcmd option sends  all commands to the  MCL  regardless of whether they 
are QLUX resident (It is up to the operating system to deal  with  the  passed 
command).

LBRDIR$="DIR"
Any version of the SD program will do.

ZIPDIR$="UNZIP"
UNZIP099 is the latest ZIP directory program.

ARCDIR$="UNARC"
UNARC16 is typically used although the later  SD  versions can display an ARC/
ARK directory too.
 Configuration - 3/4 

LZHDIR$="LHRD"
LHRD11 is the latest version as of this date.  Also used as a LZH file typer.

MODEM$="ZMD"
ZMD, KMD, NUKMD, XMODEM may be used.   It  is expected  that  the program will
have the capability of sending an ARC/ARK member as well as an LBR member.

ZMODEM$="RZMP"
RZMP16 is the only one available.

TYPE$="TYPE"
Name your typer program to TYPE

LBRTYP$=LBRDIR$
Use your standard TYPE program unless your prefer something else.

ARCTYP$=ARCDIR$
UNARC16 handles both directory and file listing.
Configuration - 4/4 

LZHTYP$=LZHDIR$
LHRD11 handles both directory and file listing.

ZIPTYP$=""
A ZIP typer program is not yet available (but is expected soon)

MENU$="MENU"
Whatever name you use for your Menu program.



Compile:  BASCOM =QLUX110/O/E/Z/C
   Link:  L80 QLUX110,QREL/S,OBSLIB/S,LUX/N/E
   or     SLRNK LUX/N,QLUX110,QREL/S,/E

creates the COMfile LUX.COM.
:2
 QLUX Notes - 1/4 

   a. QLUX presently does not support  DU: specifications.   The  ARUNZ  alias 
      "LUX  $td1$tu1:;qlux $*;$hb:",  however,  will  allow you  to  access  a 
      LBR/ARC/ARK/ZIP/LZH file in  any DU:  from the ZCPR3 command A0> prompt.  
      However, you will not be able to successfully access a  LBR/ARC/ARK/ZIP/
      LZH file in a specific DU:  from  the QLUX command prompt.   If  you use 
      this ARUNZ LUX alias approach,  it will be assumed that the program will 
      be named QLUX.COM.

   b. QLUX121.COM requires the following files to be online:   DIR,  LDIR,  LT
      (ZLT), NULU, LBREXT (renamed to LGET),  LPUT,  SETD,  UNARC,  ARK,  ADS,
      UNZIP  (UNZIP099),  EXPLODE.OVR  (UNZIP099),  UNREDUCE.OVR   (UNZIP099),
      UNSHRINK.OVR (UNZIP099),  LHRD (LH-CPM12),  LHVW (LH-CPM12), CR (CRLZH),
      UNCR (UNCRLZH), and VDE (ZDE13).   UNZIP, EXPLODE.OVR, UNREDUCE.OVR, and
      UNSHRINK.OVR may all have to be on  the same DU:  as the ZIP file or you
      may want to rename UNZIP.COM to UNZIP099.COM and use  SETDRU to  make  a
      UNZIP.COM file that makes UNZIP099.COM look for its OVR files elsewhere.
 QLUX Notes - 2/4 

   c. QLUXKMD.COM and  QLUXZMD.COM requires the following files to  be online:  
      DIR, LDIR, LT (ZLT), UNARC, UNZIP (ZIPDIR), LHVW (LH-CPM12), KMD or ZMD, 
      RZMP, CHAT, COMMENT,  MENU, FOR, and NEW.   These  files  are assumed to 
      have been made "safe" for BBS use.

   d. Vs 1.21 updates (4/12/90, Sean Sullivan):
      - TYPE command for .LBR files now calls on LT.COM (or ZLT.COM renamed as 
        LT.COM).   TYPE command  for .ZIP files now displays error message "++ 
        Cannot type ZIPped files ++".  TYEP (sic) is  added  as  equivalent to 
        TYPE (a frequent misspelling).
      - CR,  UNCR,  LT,  READ,  VIEW,  and  VDE commands  added  for crunching 
        uncrunching, typing, and editing files found outside archive. 
      - NULU command also added to supplement  PUT command for LBR files.  PUT 
        command for LBR files now uses LPUT instead of NULU.  
      - GET command for  LBR  files  now  requires  LBREXT  (renamed to  LGET) 
        instead of LT.  
 QLUX Notes - 3/4 

      - ZCMD added for  using  Z-System  commands not found in QLUX.  ZCMD can 
        only do one single command at a time, i.e., no multiple commands.  The
        only restriction of using ZCMD is that  the  command line  buffer must
        be external.  If the internal command line is used, it will  get wiped
        out at the first occurence of a warm boot.
      - SEND command fixed.   Changed  SEND ALL command to SENDALL.   SEND ALL 
        was being interpreted as downloading  a single  LBR  member file named 
        "ALL".   Added  alternate  code for KMD if you don't use ZMD.  Changed 
        ZSEND ALL command to ZSENDALL for RZMP download of entire LBR/ZIP/ARC/
        ARK/LZH file.
      - NEW command was added since there was a FOR command.
      - Adjustments to  help  menu and syntax display.  The syntax display now 
        follows ZCPR3-style syntax displays and now shows the  current version 
        number.

   e. Vs. 1.20 updates (9/22/89, Sean Sullivan):
      - Now assumes a combination of the  following files  being online:  DIR,
        LDIR, TYPE (LT29),  NULU,  SETD,  UNARC, ARK,  ADS, UNZIP, LHRD, LHVW, 
        ZMD, and RZMP.
 QLUX Notes - 4/4 

      - GET command added to extract  member files  and  PUT command to insert 
        new files into archive -- only for LBR, using NULU, and ARC/ARK, using 
        ARK.   Also  a  DATE command  for  date/time-stamping LBR  and ARC/ARK 
        files.   GET,  PUT,  and  DATE command assumes same respective command 
        line formats as if you're using  LT,  UNARC,  UNZIP,  LHRD, NULU, ARK, 
        SETD,  or ADS at the QLUX command line  prompt  but without specifying 
        the archive file.  
      - Another new directory command is SD where you can see ALL the files in 
        the current DU:  (as opposed to FILES  allowing  you  to  see only the 
        files with the same .EXT as the file QLUX is currently attached to).
      - Provided additional ways to exit program (Q, E, X, CPM), put help menu 
        in program, plus a few other minor changes.

   f. Vs 1.10 updates (9/17/89, Lawrence Davis):
      - Configured for QBBS usage.   MCL  routines  courtesy  of  Chris Mcewen
        (Socrates QBBS 201/754-9067).
:3
 Examples of Use - 1/2 

   a. Example of ZCMD syntax:   QLUX:LIBRARY.LBR (?=HELP)>>zcmd vlu           

   b. A0:ROOT>lt library.lbr a:file.dyc
      QLUX:LIBRARY.LBR (?=HELP)>>get a:file.dyc

   c. A0:ROOT>unarc archive.ark a:filename.typ
      QLUX:ARCHIVE.ARK (?=HELP)>>get a:filename.typ

   d. A0:ROOT>unzip zipped.zip member.fil
      QLUX:ZIPPED.ZIP (?=HELP)>>get member.fil

   e. A0:ROOT>lhrd lewzhuff.lzh member.doc
      QLUX:LEWZHUFF.LZH (?=HELP)>>get member.doc

   f. A0:ROOT>nulu -o library.lbr -a file -x
      QLUX:LIBRARY.LBR (?=HELP)>>put -a file -x

   g. A0:ROOT>ark archive.ark newfile.fil
      QLUX:ARCHIVE.ARK (?=HELP)>>put newfile.fil
 Examples of Use - 2/2 

   h. A0:ROOT>setd library.lbr 09/22/89 existing.fil /o
      QLUX:LIBRARY.LBR (?=HELP)>>date 09/22/89 existing.fil /o

   i. A0:ROOT>ads archive.ark 09/22/89 13:54 specific.fil
      QLUX: ARCHIVE.ARK (?=HELP)>>date 09/22/89 13:54 specific.fil
