DEBUGGER(OPCSDEFS)      Optical Printer Control System       DEBUGGER(OPCSDEFS)

    NAME
        debugger - enable OPCS debugging

    SYNOPSIS
        debugger [value]

    EXAMPLE
        debugger 3    # enable somewhat heavy debugging
        debugger 0    # disable all debugging

    DESCRIPTION
        Intended only for debugging the OPCS software during development.
        To view velocities for motor runs, use VELSAV(OPCS) instead.

    EXAMPLE USE
        To capture the voluminous data, start OPCS with output redirected
        to a file, blindly run the commands to test, then quit. Example:

            C:\> opcs > output.log
            ldefs -c debugger 3         <-- type this and hit return
            pro2 5                      <-- type this and hit return
            qq                          <-- type this and hit return
            C:\> more output.log        <-- view the debugger output

        Look for "POST MORTEM" in the output which will show a hexdump
        of motor runs. Example:

             A    B    C    D    E    F    G    H     <-- Channels
             |    |    |    |    |    |    |    |
POST MORTEM \|/  \|/  \|/  \|/  \|/  \|/  \|/  \|/
56eb-0000: 000b 0000 0000 0000 0000 0000 0000 0000  \
56eb-0020: 0059 0000 0000 0000 0000 0000 0000 0000   |
56eb-0040: 00a6 0000 0000 0000 0000 0000 0000 0000   |
56eb-0060: 00b2 0000 0000 0000 0000 0000 0000 0000   | Hex dump
56eb-0080: 00df 0000 0000 0000 0000 0000 0000 0000   | of Ring Buffer
56eb-00a0: 00de 0000 0000 0000 0000 0000 0000 0000   |
56eb-00c0: 00de 0000 0000 0000 0000 0000 0000 0000   :       __ Indicates
56eb-00e0: 00de 0000 0000 0000 0000 0000 0000 0000          /   ROTATION bit
56eb-0100: 50df 0000 0000 0000 0000 0000 0000 0000  <-AS <-ROT  Set (in 'A')
56eb-0120: 00de 0000 0000 0000 0000 0000 0000 0000     \
56eb-0140: 00de 0000 0000 0000 0000 0000 0000 0000      \__ Indicates ALLSTOP
56eb-0160: 00de 0000 0000 0000 0000 0000 0000 0000          Bit Set (in 'A')
56eb-0180: 00de 0000 0000 0000 0000 0000 0000 0000 
56eb-01a0: 00df 0000 0000 0000 0000 0000 0000 0000 
56eb-01c0: 00de 0000 0000 0000 0000 0000 0000 0000 
56eb-01e0: 00de 0000 0000 0000 0000 0000 0000 0000 
56eb-0200: 00de 0000 0000 0000 0000 0000 0000 0000 
56eb-0220: 50df 0000 0000 0000 0000 0000 0000 0000  <-AS <-ROT
56eb-0240: 00b2 0000 0000 0000 0000 0000 0000 0000  <-ASADDR
56eb-0260: 00a6 0000 0000 0000 0000 0000 0000 0000      \__ Indicates ALLSTOP
56eb-0280: 0059 0000 0000 0000 0000 0000 0000 0000          Address
56eb-02a0: 000b 0000 0000 0000 0000 0000 0000 0000
56eb-02c0: 0000 0000 0000 0000 0000 0000 0000 0000          
56eb-02e0: 8000 8000 8000 8000 8000 8000 8000 8000
 TOTAL     0fa0 0000 0000 0000 0000 0000 0000 0000  <- total distance in hex
 TOTAL     4000 0    0    0    0    0    0    0     <- total distance in dec

    WARNING
        When debugging is enabled, software may not control hardware
        correctly due to the volume of data generated.
© Copyright 1997 Greg Ercolano. All rights reserved.