AshLite Compared to A-Shell/Windows

29 July, 2006
last modified

As mentioned earlier, AshLite is simplified version of A-Shell for Windows and has been designed for utilities of limited scope and duration. If you are thinking about using AshLite, it is very important that you understand how it differs from A-Shell. Following is a summary of the significant differences between AshLite and A-Shell/Windows.

  1. The main executable is ashlite.exe (instead of ashw32.exe), and the initialization file is ashlite.ini (instead of miame.ini).
     
  2.  The main executable, and its initialization file are typically installed in the "Windows directory", so that it can be launched from the host application without knowing anything about the directory structure and search path of each workstation. (Every Windows workstation has a "Windows directory", although the actual path to it may vary.)
     
  3. All of the rest of the files, including your programs and data, will typically be kept in a single directory (instead of the AMOS-like directory hierarchy used by A-Shell.) If you follow the Windows convention, this directory would be C:\Program Files\MicroSabio\AshLite\Run (although there is nothing stopping you from using any other directory.) The AshLite.Ini references this directory with a new RUNDIR= statement, which replaces all of the DEVICE= statements in the miame.ini file.
     
  4. There are no PPN's in AshLite, and no LOG.LIT. However, as a convenience for re-using existing programs, all references to AMOS-style devices and PPN's (e.g. "DSK8:XXX.DAT[132,44]") in file access statements will be mapped to the single directory where everything lives. You can also, within AlphaBasic, read and write native filespecs across the entire range of the filesystem space. And you can use embedded environment variables within filespecs (e.g. "%TEMP%\WORK.DAT"). ERSATZ devices are not supported.
     
  5. There is no JOBTBL.SYS or QFLOCK.SYS, and the XCALLs which access them (e.g. XLOCK, FLOCK and their cousins) are not available.
     
  6. There is no COMMON.SBR (or any of its cousins, such as INCOM, PEEK, POKE, etc.)
     
  7. There is no CHAIN operation.
     
  8. Standard licensing is similar to that for A-Shell/Windows (serial number and matching key stored in the INI file) except that each workstation must be separately licensed. The license is tied to both the licensee name and the local machine name.
     
  9. There is no RUN.LIT, and you don't need to specify the command "RUN" to execute a compiled program. Typing "PROG" at the dot prompt will attempt to execute PROG.RUN, and if that is not present, then PROG.CMD.  (PROG.LIT and PROG.DO will be ignored.)
     
  10. Only a few LIT commands are included: ABOUT, VUE, COMPIL, COPY, ERASE, DIR
     
  11. COMPIL acts like COMPIL/X:2 under A-Shell. That is, it supports the BasicPlus syntax and A-Shell extensions, but the resulting RUN files will not be compatible with AMOS. Programs compiled under AMOS will however run under AshLite.  (Since OCMPIL is not provided, for old ISAM support, use the /I switch.)
     
  12. DO files and LIT files (other than those included with the release) are not supported.
     
  13.  By default, AshLite comes up with no user interface (although it can be displayed by doubleclicking on the icon in the notification area of the Task Bar.) This is equivalent to launching A-Shell/Windows with the –zi switch. Use the –ui switch with AshLite to force the window to be displayed normally.