ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

test.c
Go to the documentation of this file.
00001 #include <stdio.h>
00002 #include <windows.h>
00003 #include <ntddk.h>
00004 #include "mpu401.h"
00005 
00006 int main()
00007 {
00008 //    NTSTATUS s;
00009 //    PHANDLE Handle;
00010 //    PIO_STATUS_BLOCK Status;
00011     DWORD BytesReturned;
00012     BYTE Test[3]; // Will store MIDI data
00013     BYTE Notes[] = {50, 52, 54, 55, 57, 59, 61};
00014     HANDLE Device;
00015     UINT Note;
00016     UINT Junk;
00017 
00018     printf("Test program for MPU401 driver\n");
00019 
00020     Device = CreateFile("\\\\.\\MPU401_Out_0", GENERIC_READ | GENERIC_WRITE,
00021                         FILE_SHARE_READ | FILE_SHARE_WRITE,
00022                         NULL,
00023                         OPEN_EXISTING,
00024                         FILE_FLAG_NO_BUFFERING,
00025                         NULL);
00026 
00027     if (Device == INVALID_HANDLE_VALUE)
00028     {
00029         printf("Device is busy or could not be found.\n");
00030         return -1;
00031     }
00032 
00033     printf("Device is open, let's play some music...\n");
00034 
00035         Test[0] = 0x90;
00036         Test[2] = 0x7f;
00037 
00038     for (Note = 0; Note < sizeof(Notes); Note ++)
00039     {
00040         Test[1] = Notes[Note];
00041 
00042     DeviceIoControl(
00043         Device,
00044         IOCTL_MIDI_PLAY,
00045         &Test,
00046         sizeof(Test),
00047         NULL,
00048         0,
00049         &BytesReturned,
00050         NULL
00051         );
00052 
00053         for (Junk = 0; Junk < 100000; Junk ++);   // Pause
00054     }
00055 
00056 
00057 /*    s = IoCreateFile(Handle, GENERIC_READ | GENERIC_WRITE,
00058                      OBJ_KERNEL_HANDLE,
00059                      Status,
00060                      0,
00061                      FILE_SHARE_READ | FILE_SHARE_WRITE,
00062                      FILE_OPEN,
00063                      FILE_NON_DIRECTORY_FILE,
00064                      NULL,
00065                      0,
00066                      CreateFileTypeNone,
00067                      NULL,
00068                      0);
00069 */
00070 }

Generated on Sun May 27 2012 04:27:59 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.