% ----------------------------------------------------------------------------
%
%                                  Hans Wolfgang Loidl, RISC-Linz,  10.3.1992 
%
%
% Changes:    <By whom>, <When>, <What changes> 
%
% H.W.  Loidl, 7.11.1991, Title in \bf style, contents of
%                         `Functions' in \tt style
%
%  SW-form for registering the software products that are installed
%  on a machine in the ACPC network. 
%  NOTE: This is no independent LaTex file. It has to be included in the 
%        file that describes the corresponding ACPC group
%        or in a `frame' LaTex file (see `sw-frame.tex') where
%        formating information etc is given.
%        All SW-forms should be included into the group description file
%        after the included HW-form.
%
% ----------------------------------------------------------------------------


\subsubsection*{\bf LSC Transputer Toolset}

\begin{itemize}
 \item {\bf Name:}  Logical Systems Transputer Toolset (Version 89.1.c)   % Full name and version of the software product (sw-p).

 \item {\bf Location:} /usr0/lsc % Full path of the sw-p (references to other
                   % important directories might be included here).

 \item {\bf Type:} C preprocessor, compiler, assembler, linker. % What sort of sw-p is this?
                   % Possible entries are: (Parallelizing) Compiler, Debugger,
                   % Editor, Computer Algebra System etc.

 \item {\bf Characterization:} 
       Like the ANSI C toolset this toolset contains several programs
       for programming in  C on a transputer. Among others, this toolset
       contains the following programs:
       \begin{itemize}
        \item {\tt pp } --- the C preprocessor,
        \item {\tt tcx} --- the C compiler,
        \item {\tt tasm} --- the assembler,
        \item {\tt tlnk} --- the linker,
        \item {\tt tlib} --- the relocatable file librarian,
        \item {\tt make} --- a program maintenance utility,
        \item {\tt ld-one} --- the single transputer loader,
        \item {\tt ld-net} --- the network loader for arrays of transputers,
        \item {\tt cio} --- the host I/O driver for C I/O on the transputer,
        \item {\tt tio} --- a simple example driver for standard I/O.
       \end{itemize}

 \item {\bf Functions:} 
       For the most important tools listed above, their usage is
       described in more detail here:
   \begin{itemize}
     \item {\tt pp} --- the C preprocessor.
           This C preprocessor conforms to the ANSI Draft Proposed ``C''
           standard and contains options for backward compatibility with
           programs written for non-ANSI preprocessors.
       \begin{itemize}
        \item {Invocation:}  {\tt pp} {\it filename} \{ {\it options} \} % How to start the sw-p.
        \item {Termination:}  {\tt <CTRL> C} % How to leave the sw-p.
        \item {Help:}         % How to get help.
        \item {Example:}     {\tt pp foo.c -o foo} % An Example of a typical session with the usage
                                    % of some important features.

                             The preprocessor takes {\tt foo.c} as input and creates
                              the file {\tt foo} as output. The default suffix
                              for the produced file is `{\tt .pp}'.
        \item {Other important functions:}   % A list of important functions.
       \end{itemize}
     \item {\tt tcx} --- the C compiler. Cross compiler for the INMOS 16 and
            32 bit Transputers. It does not include preprocessing.
       \begin{itemize}
        \item {Invocation:}  {\tt tcx} {\it filename} \{ {\it options} \} % How to start the sw-p.
        \item {Termination:}  {\tt <CTRL> C} % How to leave the sw-p.
        \item {Help:}         % How to get help.
        \item {Example:}     {\tt tcx foo -v -p8} % An Example of a typical session with the usage
                                    % of some important features.

                             Compile the program {\tt foo.pp} in verbose mode
                              (option {\tt -v}) for a T800 Transputer (option
                              {\tt -p8}). The created file is {\tt foo.tal}.
        \item {Other important functions:}  {\tt } % A list of important functions.
       \end{itemize}
     \item {\tt tasm} --- the transputer assembler. A relocating assembler for
           INMOS Transputers. It supports standard INMOS mnemonics and allows
           splitting a program into separate pieces, which are combined at linkage
           time.
       \begin{itemize}
        \item {Invocation:}  {\tt tasm} {\it filename} [{\it temp-directory}] \{ {\it options} \} % How to start the sw-p.
        \item {Termination:}  {\tt <CTRL> C} % How to leave the sw-p.
        \item {Help:}         % How to get help.
        \item {Example:}     {\tt tasm foo /fast} % An Example of a typical session with the usage
                                    % of some important features.

                             Assemble the program {\tt foo.tal} and use the 
                              directory {\tt fast} for storing the temporary 
                              files. The created file is {\tt foo.trl}.
        \item {Other important functions:}   % A list of important functions.
       \end{itemize}
     \item {\tt tlnk} --- the transputer linker. This linker has been designed
           for use with INMOS Transputers. It supports multiple libraries and 
           allows complete control of load address for each program or library
           code fragment.
       \begin{itemize}
        \item {Invocation:}  {\tt tlnk} [ {\it command-file} ] 
        \item {Termination:}  {\tt <CTRL> C} % How to leave the sw-p.
        \item {Help:}         % How to get help.
        \item {Example:} {\tt tlnk} 

                         By this call the linker will ask for the files to be 
                          linked, for some flags, load address, stack address and
                          other parameters.
        \item {Other important functions:}   % A list of important functions.
       \end{itemize}
     \item {\tt ld-one} --- the single transputer loader. 
       This tool is used to load an executable file onto a single transputer.
       Executable files are created as a result of linking using {\tt tlnk}
       (default suffix `{\tt .tld}').
       The first argument is the file to be downloaded. The second file
       runs on the host and handles transputer I/O requests.
       \begin{itemize}
        \item {Invocation:}  {\tt ld-one} {\it filename} {\it filename}
        \item {Termination:}  {\tt <CTRL> C} % How to leave the sw-p.
        \item {Help:}         % How to get help.
        \item {Example:}     {\tt ld-one foo tio}

                             This starts {\tt foo.tld} on a single transputer
                              and {\tt tio} on the host for I/O handling.
        \item {Other important functions:}   % A list of important functions.
       \end{itemize}
     \item {\tt ld-net} --- the network transputer loader.
       This tool is used to load a collection of executable files onto a 
       network of transputers.
       Executable files are created as a result of linking using {\tt tlnk}
       (default suffix {\tt .tld}).
       The first argument is the file specifying the file to read to determine
       network topology and the list of programs to be loaded. The remaining 
       parameters on the command line are passed to the host driver program.
       \begin{itemize}
        \item {Invocation:}  {\tt ld-net} {\it network-info-file} {\it arguments}
        \item {Termination:} {\tt <CTRL> C} % How to leave the sw-p.
        \item {Help:}        % How to get help.
        \item {Example:}     {\tt ld-net load}

                             Take the network-information-file {\tt load.nif}
                              and load the program, that is specified in 
                              {\tt load}, on a network, whose topology is also 
                              specified in {\tt load}. The program will be executed
                              with the program {\tt cio.exe} handling the I/O.
        \item {Other important functions:}   % A list of important functions.
       \end{itemize}
   \end{itemize}


 \item {\bf Installation:}  
                          \verb+SET TMP=Z:\USR\TMP+ (directory for temporary files).

                          \verb+SET PPINC=Z:\USR0\LSC\TINCLUDE+ (directory for include files).

                          \verb+SET TLIB=Z:\USR0\LSC\TLIBRARY+ (directory for libraries).


                          Add the following directory to your path: 
                          \verb+Z:\USR0\LSC\DOS+.
 
 % Which environment vars have to be set, etc.

 \item {\bf Manuals:}  ``Logical Systems Transputer Toolset'', by Logical
                       Systems, 1989.
                            % Name, location and version of the manuals for this
                            % sw-p.
 
\end{itemize}


