minor corrections by M.Taguchi
[reactos.git] / reactos / apps / tests / miditest / miditest.c
1 #include <windows.h>
2 #include <stdio.h>
3 #include <mmsystem.h>
4
5 // WINE's mmsystem.h doesn't seem to define these properly:
6
7 #define MIDIOUTCAPS MIDIOUTCAPSA
8 #define MIDIINCAPS MIDIINCAPSA
9 #undef midiOutGetDevCaps
10 #define midiOutGetDevCaps midiOutGetDevCapsA
11 #undef midiInGetDevCaps
12 #define midiInGetDevCaps midiInGetDevCapsA
13
14
15 int main()
16 {
17 UINT outs = midiOutGetNumDevs();
18 // UINT ins = midiInGetNumDevs();
19
20 MIDIOUTCAPS outcaps;
21 // MIDIINCAPS incaps;
22
23 int c;
24
25 printf("MIDI output devices: %d\n", outs);
26
27 for (c = 0; c < outs; c ++)
28 {
29 if (midiOutGetDevCaps(c, &outcaps, sizeof(MIDIOUTCAPS)) == MMSYSERR_NOERROR)
30 printf("Device #%d: %s\n", c, outcaps.szPname);
31 }
32
33 printf("Opening MIDI output #0\n");
34
35 HMIDIOUT Handle = NULL;
36 UINT Result = midiOutOpen(&Handle, 0, 0, 0, CALLBACK_NULL);
37 printf("Result == %d Handle == %d\n", Result, (int)Handle);
38
39 // play something:
40 midiOutShortMsg(Handle, 0x007f3090);
41
42 /*
43 printf("\nMIDI input devices: %d\n", ins);
44
45 for (c = 0; c < ins; c ++)
46 {
47 midiInGetDevCaps(c, &incaps, sizeof(incaps));
48 printf("Device #%d: %s\n", c, incaps.szPname);
49 }
50 */
51 return 0;
52 }