Miscellaneous Utilities

ramlog
cache
fntcmd
businfo
memshow
modat
mpegmo
null
probe

The following applications (located in ${CHEOPS_BASE}/local/src/utils/) are miscellanious utilities for managing an Cheops System.


ramlog

This program is a part of the Cheops Ramlog system, used to log real time events in a fast and compressed manner for later decoding and display. It is used to setup and display the ramlog. Identical functionality is built into the Magic7 monitor.

Usage:

  ramlog [( I1 | stm ) <card_id> ]  # I1 or StateMachine log selection
          ( init  |                          # initialize a log
            help  |                          # prints longer usage description
            start |                          # enable logging
            stop  |                          # disable logging
            clear |                          # clear an existing log
            view [ params ] |                # monitors log continuously
            dump [ params ] )                # dumps contents of log  

where the optional dump and view params are:

-e <msg_set>
exclude a msg set from dump (inc. all by default)
-i <msg_set>
include a msg set (excludes all by default)
-c <msg_set>
condense exclusive log sequences of msg set
-o < offset>
Start dumping from given offset into log

Multiple -i or -e parameters (but not both) may be provided.

The <msg_set> is one of the following:

ramlog
ramlog primitives (start, stop, dec, hex, stime)
text
ramlog text primitive
n_ints
Norman Interrupts (output, input, flood)
n_basic
Norman Basic (request,start_flood,rm_flood,etc)
n_nile
Norman Nile (find_nile,strt_nile,save_nile,rm_nile)
n_timing
Norman Timing
n_error
Norman Error (no_ok,illegal,unk)
scsi
SCSI Log (all I/O, not just errors)
scsi_rare
SCSI messages rare on common systems
i1ag
I1 Address Generator debug messages
i1msg
I1 Message Passing system debug messages
wbr
Whiteboard message passing protocol


cache

This program is used to reconfigure the instruction and data caches on the P2 local processor, without crashing the currently running operating system. It also allows the testing of the data cache operation.

Usage:

   cache ( data | inst )  ( on | off | test )


fntcmd

This command displays a text string in an anti-aliased font on a Cheops output module.

Usage:

     fntcmd  <string>
           [ -f <font path> ]
           [ -o <output card> ]
           [ -x <xpos> ]
           [ -y <ypos> ]
           [ -col <color> ] 


businfo

This program prints out the current setting of the bus parameters on the P2 local processor it is executed on. It takes no arguments.


memshow

This program is a looking glass into P2 memory. You can actually watch how your buffers are allocated and filled !

Usage:

      memshow <upper_3_digits_of_addr>  # e.g. 310
              [ -clear ]
              [ -high ]
              [ -bias <n> ]
              [ -V ]


modat

This program takes in an monochrome image sequence in datfile, does motion estimation (ME), and outputs a datfile. A motion estimation datfile should have 3 channels: x vectors, y vectors, and minimum errors. There are other information which should be included in the descriptor: frame distance, pel accracy, level of hierachical motion estimation, ME mode (i.e. frame based, field based, dual prime) and search range. Level 0 means ME is done by full search.

Usage:

   modat <input_datfile>
               [ -of <output_file> ]
               [ -om <output_module> ]
               [ -hack ]
               [ -fat ]
               [ -V ]


mpegmo

Seems to be an MPEG version of modat.

Usage:

   mpegmo <input_datfile>
               [ -of <output_file> ]
               [ -om <output_module> ]
               [ -hack ]
               [ -fat ]
               [ -V ]

Motion vector format:
    Support
        - frame (X, Y)
        - field (Xt, Yt) (Xb, Yb)
        - Dual Prime (Xt, Yt) (Xb, Yb)
                              | may not need (Xb, Yb) FFS.
    File format
                name
             /   |     \
            /    |      \
        desc1   data1   menu
                         /  \
                        /    \
                      desc1   data2
        desc1
          _blocksize
          _menu
          _estimator             (sw / cheops)
          _search_range_x
          _search_range_y
	  _search_type           (full, N_step or Hier)
	  -byte_order


        data 1   frames x vect_type x channels x Y/blocksize x X/blocksize
                  dset     chan       dim[0]      dim[1]        dim[2]

                vect_dist (2*m -1), distance  relative to current frame ie
                                ref to  m frames in past upto
                                        m -1 frames in future
                          eg m = 3   have -3, -2, -1, 1,  2 in that order

                channels  0 = x component   +ve = right
                          1 = y component   +ve = down

                data_type is signed shorts at full pel accuracy,
                1/2 pel and Dual prime refinements to be done by encoder.


        data 2   frames x vec_dist 
                  dset     chan

                 data_type is short

		 bit 0 - frame mv's present
		 bit 1 - field mv's present
		 bit 2 - dual prime mv's present


null

The ever popular NULL program, which does nothing, never returns, and doesn't load down the CPU. It is useful for filling process slots while testing. It takes no arguments !


probe

This program seems to probe the output module, allowing interactive, formatted printing of it's contents.


Return to
Software Index
Return to Cheops Homepage
cheops-web@media.mit.edu
This is a "fix it yourself" page, located at /mas/garden/cheops/WWW/software/utils.html