Annotation of researchv10dc/cmd/omovie/README, revision 1.1.1.1

1.1       root        1: 
                      2:                anim -- Algorithm Animation
                      3: 
                      4:                Jon Bentley (research!jlb)
                      5:                Brian Kernighan (research!bwk)
                      6: 
                      7: 
                      8: EXECUTIVE SUMMARY
                      9: 
                     10: Create a description of an animation in the language
                     11: described in script.def, using whatever tools you like
                     12: (e.g., awk programs, C programs).
                     13: Show the movie on a 5620 or X11 system with movie.
                     14: (Suntools support has been withdrawn as of 12/87.)
                     15: (AT&T 630 terminal support added, somewhat incompletely, 5/88.)
                     16: Print selected frames through pic and troff with stills.
                     17: 
                     18: LANGUAGE
                     19: 
                     20: The language is defined but not explained much in script.def.
                     21: The awk program isort.gen can be run to give an example of
                     22: data in the script language, then processed subsequently
                     23: to make a movie or a set of stills.  This uses a newish
                     24: (circa 1985) version of awk.
                     25: 
                     26: DOCUMENTATION
                     27: 
                     28: "A System for Algorithm Animation -- Tutorial and User Manual"
                     29: Computing Science Tech Report 132, January, 1987.
                     30: 
                     31: PRIMARY PROGRAMS
                     32: 
                     33: movie
                     34:        shell script
                     35:        "movie file.s" develops file.s if necessary to make file.i,
                     36:        then displays it on the terminal (5620, 630 or X-windows only)
                     37:        using anim.
                     38: 
                     39: stills
                     40:        shell script, invoking giant awk program stills.awk.
                     41:        A troff preprocessor that creates pic pictures of
                     42:        selected frames.  Input language defined in stills.def
                     43: 
                     44: develop
                     45:        shell script, called by movie and stills.
                     46:        Input language defined in script.def, output language
                     47:                ("intermediate") defined in int.def.
                     48:        Uses fdevelop (C program) to do the work; code in
                     49:                fdevelop.h, fdevelop.c, fdsymbol.c, fdutil.c
                     50: 
                     51: anim
                     52:        Host program converts output of develop into format
                     53:        suitable for 5620/blit, 630 or X window system.
                     54:        On the 5620 or 630, downloads terminal process;
                     55:        under X11, creates a new window for the movie.
                     56: 
                     57:        Try
                     58:                isort.gen >dev.s (an example in this directory)
                     59:                movie dev.s (equivalent to develop dev.s; anim dev.i)
                     60: 
                     61:        The files test.s and test.i can be used for experimenting
                     62:        with the host and terminal programs before worrying about
                     63:        develop.
                     64: 
                     65: animterm
                     66:        The terminal program, invoked only by anim.
                     67:        Talks to the mouse after the data has been loaded.
                     68: 
                     69: 
                     70: SUPPORT PROGRAMS
                     71: 
                     72: show.clicks    make a new view to count clicks
                     73: view.clicks    print summary of views and clicks
                     74: newer.c                tests file ages;  install if needed
                     75:                (used in develop)
                     76: 
                     77: INSTALLATION
                     78: 
                     79:        You will have to change some directory names and other parameters in
                     80:                movie
                     81:                stills
                     82:                develop
                     83:                makefile
                     84:                x11.make or blit.make or 630.make
                     85: 
                     86:        BIN = directory where movie and stills are (e.g., /usr/bin)
                     87:        LIB = directory where develop, fdevelop, stills.awk, anim, animterm
                     88:                are (e.g., /usr/lib).
                     89:        TERM = blit or 630 or x11 (yes, lower case)
                     90:        DMDCC = dmdcc or 3cc or m32cc or ..., depending on the local name
                     91:                for the compiler for the terminal
                     92:        TERMLD = 32ld or dmdld or ..., depending on the program that
                     93:                downloads 5620 or 630 terminals
                     94:        V9  only if you are running the version 9 code (mux)
                     95:        SYS_V  if you are running SystemV layers code
                     96: 
                     97:        Then
                     98:                make
                     99: 
                    100: PROBLEMS
                    101: 
                    102:        The locations of compilers, downloaders, and similar things
                    103:        vary wildly from system to system.  Although we have tried
                    104:        to parameterize these in the makefiles, you will almost certainly
                    105:        have to fiddle with file names and perhaps defined constants
                    106:        in the makefiles.
                    107: 
                    108:        The 630 implementation is not really solid.  In particular,
                    109:        term.c needs some work to deal better with the fact that int's
                    110:        are only 16 bits.  Memory allocation ought to be done better
                    111:        (by calling lalloc instead of alloc) but that stumbles across
                    112:        some bugs in the 630 compiler, so for the moment you are limited
                    113:        to somewhat smaller pictures than might be possible.
                    114: 
                    115:        As a by-product, the default memory allocation is set
                    116:        to 65000 bytes on the blit and 630.  This can be set
                    117:        higher by recompiling host.c on the blit, or by using the
                    118:        -m option on anim.
                    119: 
                    120: 
                    121: APPLICATIONS, not provided here
                    122: 
                    123: bp     bin packing
                    124: grammar        generate random sentences; rec desc parser for arithmetic
                    125: heaps  heaps, heapsort, etc.
                    126: malloc profile malloc
                    127: misc   miscellaneous -- hanoi, nls data
                    128: mst    minimum spanning trees
                    129: sort   sort algorithms
                    130: stars  galaxy simulation
                    131: trees  random binary search trees
                    132: 
                    133: 
                    134: ACKNOWLEDGEMENT
                    135: 
                    136:        The code for the animation system owes an enormous debt to
                    137:        Howard Trickey, who first figured out how to deal with
                    138:        the egregious Suntools window system, and then wrote the
                    139:        X11 version included here.
                    140: 
                    141:        The Suntools code is still included, in sunterm.c, sunhost.c,
                    142:        and sun.make, but is not maintained.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.