M1 Utilities

m1format
m1load
m1ls
m1show
m1testpatt
m1setfps
m1rm
m1peek

The following applications (located in ${CHEOPS_BASE}/local/src/utils/m1/) are general utilities for managing an M1 Memory module. Many of them provide host access to the "filesystem" resident on the modules. The Cheops Movie library provides applications with simple access to large data structures stored in the M1 memory. These volatile data structures may be loaded from the host, copied back to the host, and loaded by the I1 digitizer or the H1 HiPPI interface.


m1format

This application initializes the memory allocation and object directory structure on one or more M1 modules. It must be executed manually once, after every power cycle of a Cheops system. The movie directory, memory allocation structures, and data stored in M1 will survive system resets if power is continuous.

Usage:

         m1format [-module < module_num> ]   [ -force ]

If this application determines that an M1 has already been formatted, it will not re-format the module unless the -force option is specified.

If no module argument is specified, this application attempts to format ALL modules found !

This object directory is primarily aimed at storing sequences of two-dimensional arrays of samples (frames), but may be easily extended (either internally or externally) to support any desired object datatype. The directory consists of a singly linked list of movie_obj_desc structures, located in a particular page of M1 memory.

This utility is just a command line interface for the movie_format() library function.


m1load

Loads a DATfile into a movie file structure on an M1 module.

Usage:

       m1load < filename>   [ < movie_name>   ]
              [ -fps < frame_rate>   ]  # frame rate in Hz
              [ -m < module_no>   ]     # which M1 module ?
              [ -v ]                 # print out lots of info

If no < movie_name> is provided, a stripped version of the filename will be used.


m1ls

Lists the objects currently stored in an movie database.

Usage:

       m1ls [< movie_name> ]
	  [ -l | -g | -x ]
          [-m < module_num> ]

Where one of the following options selects an extended listing :

-l
Long listing
-g
Fragment list (reveals actual physical memory usage)
-x
Frame list (painfully long)

If no module argument is specified, this application lists the movies found on ALL modules !


m1show

This program takes plays one or more movies that have been loaded into an M1 memory card (using m1load or m1testpatt ) and transfers them over the nile bus to the output card.

NOTE: This application is TOTALLY INCOMPATIBLE with NORMAN. Don't even think about it.

Usage:

      m1show < movie_name>   [   < movie_name>   ]
             [ -location < x>   < y>   ]   # location on display
             [ -output < module_no>   ] # output card to use
             [ -clear ]              # clear screen at startup
             [ -palindrome ]         # enable palindromic mode
             [ -debug ]              # turn on debugging

No subsampling of the image is possible using this application (due to lack of hardware support unless the P2 module actually handles the data.) Likewise, some image sizes may not play, given a particular destination location. In general, horizontal sizes that have some small multiple which is also a multiple of 512 will work better. (If you want to know more about this, send wad@media.mit.edu mail.)


m1testpatt

This is the movie test pattern generator. It will generate a movie in M1 memory that has a particular data pattern in it.

Usage:

      m1testpatt < movie_name> 
                 [ -size < t>   < y>   < x>   ]    # time x vertical x horizontal
                 [ -pattern < patt_name>   ] # see below
                 [ -fps < frame_rate>   ]    # playback rate, in Hz
                 [ -module < module_no>   ]  # select which M1 to use
                 [ -debug ]               # turn on debugging

Where < pattern> is one of the following :

color
Changing colors (whole field)
sweep
Moving color bars
diag
Moving color diagonal swatches
static
black and white random values
random
(color) random values
cross
moving crosshairs
test
recently tweaked test pattern


m1rm

This utility deletes a file from the M1 module.

Usage:

        m1rm < movie_name>
NOTE: As of 1/96, this function still doesn't free up the memory associated with the movie, it merely removes it from the directory structure. To free up the resources of a movie, the M1 must currently be
reformatted.


m1setfps

This program allows a user to change the frame rate of a movie once it has been loaded into memory...

Usage:

         m1setfps < movie_name>   < frame_rate>


m1peek

Utility to examine m1 memory. Ask carltonj@media.mit.edu for an introduction.


Return to
Software Index
Return to Cheops Homepage
cheops-web@media.mit.edu
This is a "fix it yourself" page, located at ${CHEOPS_BASE}/WWW/software/utilsm1.html