packages feed

alsa-seq-tests-0.1: test1.hs

import Sound.Alsa.Sequencer

main :: IO ()
main =
  do putStrLn "Starting."
     h <- open default_seq_name open_input Block
     set_client_name h "HS1"
     putStrLn "Created sequencer."
     p1 <- create_simple_port h "one"
            (caps [cap_write,cap_subs_write]) type_midi_generic

     p2 <- create_simple_port h "two"
            (caps [cap_write,cap_subs_write]) type_midi_generic
     putStrLn "Created ports."
     let loop = do putStrLn "waiting for an event:"
                   e <- event_input h
                   print e
                   loop
     loop
     delete_port h p1
     delete_port h p2
     putStrLn "Deleted ports."
     close h
     putStrLn "Closed sequencer."
  `alsa_catch` \e -> putStrLn ("Problem: " ++ exception_description e)