import Sound.Alsa.Sequencer
main :: IO ()
main =
do putStrLn "Starting."
h <- open default_seq_name open_output Block
set_client_name h "HS3"
putStrLn "Created sequencer."
x <- get_client_id h
putStrLn ("My id is: " ++ show x)
let me = Addr { addr_client = x, addr_port = port_unknown }
-- tgt_addr <- parse_address h "HS1:255"
let tgt_addr = Addr client_broadcast port_unknown
print tgt_addr
getChar
event_output_direct h (e1 me tgt_addr)
getChar
close h
putStrLn "Closed sequencer."
`alsa_catch` \e -> putStrLn ("Problem: " ++ exception_description e)
e1 from to = Event
{ ev_high_priority = False
, ev_tag = 0
, ev_queue = queue_direct
, ev_timestamp = TickTime 0
, ev_source = from
, ev_dest = to
, ev_data = NoteEv NoteOn (simple_note 0 60 100)
}