--------------------------------------------------------------------------------
                          VME_Access Documentation
                          -------------------------

13-Sep-2000: 

General:

    VME_Access is a fairly small Windows application for interactive and script 
    level access to one or more VME Crates connected to a PC via Bit3 Model 617 
    or 618 PCI to VME Bus Adaptors.  

    see \Trics\Doc\VME_Access_Installation.txt for help installing this software

    see \Trics\Doc\VME_Access_Release_Notes.txt for additional details.

    This application uses Windows Dialog Boxes to interact with the user
    and prints a running log of the user actions to a Console Window.

    Running the program will also create a logfile in \Trics\D0_Log.
    This logfile will copy every line written out to the Console Window.
    The Log File will have a name identifying the day the executable was 
    started, and the version of the executable: VME_ACCESS_YYYYMMDD_Vn_m.LOG;p
    e.g. VME_ACCESS_20000913_V1_0.LOG;1 

    The user can manually issue individual VME IO commands, or run a VME IO 
    Command Files (a.k.a. scripts).

VME IO Dialog:

  VME Address:
    The VME address is most easily specified in Hex form using the prefix '0x'.

  Data Out:
    The Data to write can be specified in Decimal form, in Hex form (using 
    the prefix '0x'), or in binary form (using the prefix '0b').

  Data In:
    This is a read only field that is written to when a VME Read operation is 
    performed.

  Repeat Count:
    For Test purposes, a repeat count can be specified to repeat the VME IO
    operation (read or write) a specified number of times.

  Adaptor Number:
    The user can specify the Bit3 Adaptor Unit Number to use. The first Adaptor
    has index #0.  The Adaptor Unit Number is not directly related to the PCI 
    Slot Number. The Bit3 documentation states that there is no sure way 
    to predict the Adaptor Unit Number assignment from the PCI Slot assignment.  
    The Bit3 documentation also suggests that this assignemt remains fixed for 
    a given PC configuration.
        
  Address Space:
    The user can specify which type of VME cycle to perform in the remote crate.
    Choices are A32, A24 or A16, or DPM to reach the Dual Port Memory Module 
    of the remote Adaptor. Note that no VME cycle is performed in the remote
    backplane during VME Read Write to the Dual Port Memory.

  Data Size:
    The user can specify which type of Data Transfer to perform in the remote 
    crate.  Choices are D32, D16 or D8. Note that not all combinations of 
    Address Space and Data Size are supported by VME.

  Further Address Modifier Specification:
    The user can chose from "Supervisor" vs "Non-Privileged" and "Program" vs 
    "Data" Data Access modes to further identify the Address Modifier issued
    during the VME IO operation.

  Bit3 Interface mode:
    The user can chose between using the Bit3 API for each individual VME access
    (i.e. use bt_read and bt_write) or use the Memory Map method to first map
    a section of VME space to the program's virtual address space and then 
    access the VME space by simply de-referencing pointers.

    There is very little visible difference between the two methods for 
    individual manual IO.  If the Repeat Count is set to a high number, 
    the Memory Mapped method will be roughly 10 times faster over the API 
    method.

  Display Format:
    The user can chose from Hexadecimal, Decimal or Binary to change the 
    display format of the Data In and Data Out values.
    Note that no matter what is currently selected for the display format,
    the user can still specify the Data In in any format, as long as the
    proper prefix is used.

  Read After Write:
    This option automatically generates a VME Read to the same VME Address
    after each VME Write performed when clicking on the "Write" button, or
    during the execution of command files.

  Inverted Data Out:
    This option automatically inverts the data specified during a VME Write.
    

VME IO Command Files:

    Documentation for the Syntax of VME IO Command Files is available at
    http://www.pa.msu.edu/hep/d0/ftp/tcc/trics_ii/syntax_rules_vme_io.vio
    and \Trics\Doc\Syntax_Rules_VME_IO.vio

    It is also available by clicking on the "Syntax Rules" Button of the
    VME IO Dialog.

    The NT environment variable %TRICS% is defined by VME_Access to point 
    to the directory "\Trics on" the default drive holding the executable.
    This environment variable can be used in Command files, e.g.
    Call_File:    %TRICS%\Scratch\Test.vio

  Command File Name:
    Select the File to execute by entering its full path in the Combo Box, 
    or by hunting it down through the "Find" Button.

  Execute:
    Execute the command file by clicking on the "Execute" Button.

  Show Progress:
    The "Show Progress" option will cause every VME Read or Write action 
    executed in the command file to be echoed to the VME Address and 
    Data Out or Data In fields of the VME IO Dialog.

  Show Details:
    "The Show Details" option will generate Messages to the Console (and 
    the logfile) for every VME Read or Write performed by the command file.
