Updated PCI IDs to latest snapshot.
[tangerine.git] / workbench / libs / camd / removemidilink.c
blob6160faccb96fc73f272edf7c59c135ca2fe8895e
1 /*
2 Copyright © 1995-2007, The AROS Development Team. All rights reserved.
3 $Id$
5 Desc:
6 Lang: English
7 */
10 #include <proto/exec.h>
12 #include "camd_intern.h"
15 /*****************************************************************************
17 NAME */
19 AROS_LH1(void, RemoveMidiLink,
21 /* SYNOPSIS */
22 AROS_LHA(struct MidiLink *, midilink, A0),
24 /* LOCATION */
25 struct CamdBase *, CamdBase, 15, Camd)
27 /* FUNCTION
28 Removes and frees a midilink from the system.
30 INPUTS
31 midilink - pointer to midilink to remove.
33 RESULT
35 NOTES
37 EXAMPLE
39 BUGS
41 SEE ALSO
43 INTERNALS
45 HISTORY
47 2001-01-12 ksvalast first created
49 *****************************************************************************/
51 AROS_LIBFUNC_INIT
53 ObtainSemaphore(CB(CamdBase)->CLSemaphore);
55 UnlinkMidiLink(midilink,TRUE,CamdBase);
57 ReleaseSemaphore(CB(CamdBase)->CLSemaphore);
59 if(midilink->ml_ParserData!=NULL) FreeMem(midilink->ml_ParserData,sizeof(struct DriverData));
60 FreeMem(midilink,sizeof(struct MidiLink));
62 AROS_LIBFUNC_EXIT