Amiga Does It Better    by Robert J. Wilt

Zeroth BADGE Killer Demo entry -- October, 1987

(C) 1987  by Robert J. Wilt

May be freely redistributed.


This video, entitled "Amiga Does It Better", is from an
 alternate universe where not only does Commodore advertise
 the Amiga, but the Beatles are still together!

To Run:
   You'll need more than 512K.
   Make sure all the data files are in the current directory.  There's a
     list at the end of this README file.
  To start, type "Killer" from the CLI, or double-click the icon.
  If you don't have enough memory, or the proper data files are not
     present, you'll get a message like "initmusic error" or
     "initgfx error".
  Once video starts, click upper left corner if you wish to exit.  (Sorry,
     as of the moment you can't bail out before then.)
  The video lasts exactly one minute.  Ideal for television use!!


Thanks to all who (unknowingly) contributed:
  The instruments are from some old Amiga music demo.  Thanks to Bobby Deen
     for information on the file format.  Thanks to whoever for the
     instruments.
  Thanks to Rob Peck for a working example of how to use the audio device.
  Special thanks to the artists whose pictures I usurped.  They include
     RJA, (Opus), GJ (?) (Gorilla), Sullivan (Marilyn), HUD (lunar
     landscape), and to the unknowns who created the Bugs Bunny and
     Fractal Firestorm pictures.
  Thanks to the Beatles for music I never tire of.
  And finally, thanks to Commodore-Amiga for a way to express my
     creative (dis)ability.


Technical Notes:
  The picture files are not IFF, but rather are bitmap structures followed
    by 5 planes of data.
  The instruments are not IFF either, they are from an old music demo
    that comes from I-don't-know-where.
  The screen is a 640x200x5 bitmap.  It is displayed in 320x200 mode,
    so only half is visible at a time.  This is very convenient for
    purposes of scrolling and double-buffered animation.
  Three tasks are used: a high-priority music task, a medium-priority
    graphics task, and a very-high-priority monitor task which looks for
    Close requests from the user.
  Timing is supplied by a vertical-blank interrupt routine.  Both the
    graphics and music tasks have a list of "events" which describe what
    to do and when to do it.  These tasks set an "alarm clock" for the
    next event, and then sleep until the vertical-blank routine wakes them
    up.  The graphics task especially tends to get behind in places (i.e.
    slight jitter in scrolling of Yellow Submarine at start), and in
    that case just keeps doing things until it's caught up.
  The program was compiled with Lattice 3.03.
  Source will be out "sometime" (like, say, after my general exam).

For Further Information:
  Robert J. Wilt
  19 Warner St. Apt. 1
  Somerville, MA  02144

  rjw@space.mit.edu


LIST OF NECESSARY FILES:

  bassgt.ss                        clar1.ss
  fuzzgtr.ss                       guitlow.ss
  Killer                           s0_sub.bm
  s0_subrt.bm                      s10_atlogo.bm
  s10_contact.bm                   s10_invaders.bm
  s11_parts.bm                     s11_surface.bm
  s12_chkamiga.bm                  s1_amiga.bm
  s1_amigmonlogo.bm                s1_better.bm
  s1_cld1.bm                       s1_cld2.bm
  s1_cld3.bm                       s1_doesit.bm
  s1_sun.bm                        s2_!.bm
  s2_2.bm                          s2_3.bm
  s2_a.bm                          s2_acornlogo.bm
  s2_g.bm                          s2_h.bm
  s2_n.bm                          s2_o.bm
  s2_r.bm                          s2_w.bm
  s3_0.bm                          s3_2.bm
  s3_4.bm                          s3_dx.bm
  s3_e.bm                          s3_integral.bm
  s3_leftpar.bm                    s3_pi.bm
  s3_qed.bm                        s3_rightpar.bm
  s4_hallogo.bm                    s4_knob1.bm
  s4_knob2.bm                      s4_knob3.bm
  s4_profitlos.bm                  s5_1987.bm
  s5_loss.bm                       s5_oops.bm
  s5_profit.bm                     s6_mouse.bm
  s6_tv100.bm                      s7_mouse.bm
  s7_Mousetrap.bm                  s7_parts.bm
  s8_bartlett.bm                   s8_opus.bm
  s9_bunny.bm                      s9_fstorm.bm
  s9_gorilla.bm                    s9_marylin.bm
  trumpet.ss                       vibmid.ss                        


