//    Instruction Example :     long music.amplitude.get (long)


        screen.resolution.set (512,384)

        music.play ("avo\music.xm")

        text.display ("Press a key to exit.",CENTER,350)

        @vumeter=macro.vumeter.create ("avo\gradient.gif",4,OFF)

        repeat ()
          macro.vumeter.display (@vumeter,60,(384/2))
        until (keyboard.get ())

        script.stop ()

        function macro.vumeter.create ($filename,%space,%base) : objectid
          %vumeter_space=%space
          %vumeter_base=%base
          return (picture.load ($filename))
        end function

        procedure macro.vumeter.display (@pic,%x,%y)
          local (%width,%height,!div,%vumeter_x,%i)
          %width=picture.width.get (@pic)
          %height=picture.height.get (@pic)
          !div=256/%height
          %vumeter_x=0
          for (%i=1 to music.channel.number.get())
            if (%vumeter_amplitude[%i]>%vumeter_amplitude2[%i])
              %vumeter_amplitude2[%i]=%vumeter_amplitude[%i]
            else ()
              %vumeter_amplitude2[%i]-=1
            endif ()
            picture.block.display (@pic,%x+%vumeter_x,%y+%vumeter_y,0,0,%width,%height)
            screen.block.clear (%x+%vumeter_x,%y,%width,%height-%vumeter_amplitude2[%i]-%vumeter_base)
            %vumeter_x+=%width+%vumeter_space
            %vumeter_amplitude[%i]=(music.amplitude.get (%i-1)/!div)
          next ()
          time.wait (0.004)
        end procedure