Annotation of ntddk/src/mmedia/synth/dll/driver.h, revision 1.1

1.1     ! root        1: /****************************************************************************
        !             2:  *
        !             3:  *   driver.h
        !             4:  *
        !             5:  *   Copyright (c) 1991 Microsoft Corporation.  All Rights Reserved.
        !             6:  *
        !             7:  ***************************************************************************/
        !             8: 
        !             9: #include <synth.h>
        !            10: 
        !            11: //
        !            12: // Porting stuff
        !            13: //
        !            14: 
        !            15: #define BCODE
        !            16: #define _loadds
        !            17: 
        !            18: #define fEnabled TRUE
        !            19: 
        !            20: #define AsULMUL(a, b) ((DWORD)((DWORD)(a) * (DWORD)(b)))
        !            21: #define AsLSHL(a, b) ((DWORD)((DWORD)(a) << (DWORD)(b)))
        !            22: #define AsULSHR(a, b) ((DWORD)((DWORD)(a) >> (DWORD)(b)))
        !            23: 
        !            24: #define AsMemCopy memcpy
        !            25: 
        !            26: extern HANDLE MidiDeviceHandle;
        !            27: extern SYNTH_DATA DeviceData[];
        !            28: extern int MidiPosition;
        !            29: extern VOID MidiFlush(VOID);
        !            30: extern VOID MidiCloseDevice(HANDLE DeviceHandle);
        !            31: extern MMRESULT MidiOpenDevice(LPHANDLE lpHandle, BOOL Write);
        !            32: extern MMRESULT MidiSetVolume(DWORD Left, DWORD Right);
        !            33: extern VOID MidiCheckVolume(VOID);
        !            34: extern MMRESULT MidiGetVolume(LPDWORD lpVolume);
        !            35: 
        !            36: #define SYNTH_DATA_SIZE 80
        !            37: MMRESULT MidiTranslateStatus(VOID);
        !            38: 
        !            39: extern VOID FAR PASCAL MidiSendFM (DWORD wAddress, BYTE bValue);
        !            40: extern VOID FAR PASCAL MidiNewVolume (WORD wLeft, WORD wRight);
        !            41: extern WORD FAR PASCAL MidiInit (VOID);
        !            42: 
        !            43: extern BYTE gbVelocityAtten[32];
        !            44: 
        !            45: //
        !            46: // End of porting stuff
        !            47: //
        !            48: 
        !            49: /*
        !            50:  * midi device type - determined by kernel driver
        !            51:  */
        !            52: UINT gMidiType;
        !            53: /*
        !            54:  * values for gMidiType - set in MidiOpenDevice
        !            55:  */
        !            56: #define TYPE_ADLIB     1
        !            57: #define TYPE_OPL3      2
        !            58: 
        !            59: 
        !            60: 
        !            61: #define SYSEX_ERROR     0xFF    // internal error code for sysexes on input
        !            62: 
        !            63: #define STRINGLEN               (100)
        !            64: 
        !            65: /* number of windows which we can have registered */
        !            66: #define REGWINDOWS              (10)
        !            67: 
        !            68: 
        !            69: /* volume defines */
        !            70: #define VOL_MIDI                (0)
        !            71: #define VOL_NUMVOL              (1)
        !            72: 
        !            73: #define VOL_LEFT                (0)
        !            74: #define VOL_RIGHT               (1)
        !            75: 
        !            76: /* strings */
        !            77: 
        !            78: #define SR_ALERT                1
        !            79: #define SR_ALERT_IO             2
        !            80: #define SR_ALERT_NOIO           3
        !            81: #define        SR_ALERT_NOPATCH        4
        !            82: 
        !            83: #define SR_STR_DRIVERMIDIOUT    5
        !            84: #define SR_STR_VOLUME           6
        !            85: #define SR_ALERT_BAD            7
        !            86: #define SR_ALERT_CONFIGFAIL     8
        !            87: #define SR_ALERT_FAILREMOVE     9
        !            88: 
        !            89: #define IDS_MENUABOUT           10
        !            90: 
        !            91: 
        !            92: /* MIDI defines */
        !            93: /* errors */
        !            94: #define ERR_OUTOFMEMORY         (1)
        !            95: 
        !            96: #define NUMCHANNELS                     (16)
        !            97: #define NUMPATCHES                      (256)
        !            98: #define DRUMCHANNEL                     (9)     /* midi channel 10 */
        !            99: 
        !           100: /****************************************************************************
        !           101: 
        !           102:        typedefs
        !           103: 
        !           104:  ***************************************************************************/
        !           105: 
        !           106: 
        !           107: // per allocation structure for midi
        !           108: typedef struct portalloc_tag {
        !           109:     DWORD               dwCallback;     // client's callback
        !           110:     DWORD               dwInstance;     // client's instance data
        !           111:     HMIDIOUT            hMidi;          // handle for stream
        !           112:     DWORD               dwFlags;        // allocation flags
        !           113: }PORTALLOC, NEAR *NPPORTALLOC;
        !           114: 
        !           115: 
        !           116: 
        !           117: 
        !           118: /****************************************************************************
        !           119: 
        !           120:        strings
        !           121: 
        !           122:  ***************************************************************************/
        !           123: 
        !           124: #if DBG
        !           125: #ifndef NOSTR
        !           126:     extern char FAR STR_DRIVER[];
        !           127:     extern char FAR STR_MMDEBUG[];
        !           128: #endif // NOSTR
        !           129:     extern WCHAR STR_CRLF[];
        !           130:     extern WCHAR STR_SPACE[];
        !           131: #endif
        !           132: 
        !           133: #define STR_HELPFILE TEXT("synth.hlp")
        !           134: #define INI_STR_PATCHLIB TEXT("Patches")
        !           135: #define INI_SOUND        TEXT("synth.ini")
        !           136: #define INI_DRIVER       TEXT("Driver")
        !           137: 
        !           138: 
        !           139: /****************************************************************************
        !           140: 
        !           141:        globals
        !           142: 
        !           143:  ***************************************************************************/
        !           144: 
        !           145: /* midi.c */
        !           146: extern BYTE    gbMidiInUse;            /* if MIDI is in use */
        !           147: 
        !           148: 
        !           149: // in init.c
        !           150: extern HMODULE  ghModule;           // our module handle
        !           151: 
        !           152: 
        !           153: 
        !           154: 
        !           155: 
        !           156: /***************************************************************************
        !           157: 
        !           158:     prototypes
        !           159: 
        !           160: ***************************************************************************/
        !           161: 
        !           162: BOOL NEAR PASCAL modSuspend(void);
        !           163: BOOL NEAR PASCAL modReactivate(void);
        !           164: 
        !           165: 
        !           166: // config.c
        !           167: int DrvInstall(void);
        !           168: extern int DlgAboutProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam);
        !           169: extern LRESULT ConfigRemove(HWND hDlg);
        !           170: 
        !           171: // drvproc.c
        !           172: LRESULT DriverProc(DWORD dwDriverID, HDRVR hDriver, UINT uiMessage, LPARAM lParam1, LPARAM lParam2);
        !           173: 
        !           174: 
        !           175: // init.c
        !           176: void cdecl AlertBox(HWND hwnd, UINT wStrId, ...);
        !           177: WORD GetWindowsVersionCorrectly(void);
        !           178: 
        !           179: 
        !           180: 
        !           181: /* midi.c */
        !           182: VOID NEAR PASCAL MidiMessage (DWORD dwData);
        !           183: DWORD  modMessage(UINT id,
        !           184:         UINT msg, DWORD dwUser, DWORD dwParam1, DWORD dwParam2);
        !           185: UINT MidiOpen (VOID);
        !           186: VOID MidiClose (VOID);
        !           187: void MidiReset(void);
        !           188: void modGetDevCaps(LPBYTE lpCaps, UINT wSize);
        !           189: 
        !           190: 
        !           191: 
        !           192: /****************************************************************************
        !           193: 
        !           194:        Debug output
        !           195: 
        !           196:  ***************************************************************************/
        !           197: #if DBG
        !           198:     extern WORD  wDebugLevel;     // debug level
        !           199:     #define D1(sz) if (wDebugLevel >= 1) (OutputDebugStr(STR_CRLF),OutputDebugStr(TEXT(sz)))
        !           200:     #define D2(sz) if (wDebugLevel >= 2) (OutputDebugStr(STR_SPACE),OutputDebugStr(TEXT(sz)))
        !           201:     #define D3(sz) if (wDebugLevel >= 3) (OutputDebugStr(STR_SPACE),OutputDebugStr(TEXT(sz)))
        !           202:     #define D4(sz) if (wDebugLevel >= 4) (OutputDebugStr(STR_SPACE),OutputDebugStr(TEXT(sz)))
        !           203: #else
        !           204:     #define D1(sz) 0
        !           205:     #define D2(sz) 0
        !           206:     #define D3(sz) 0
        !           207:     #define D4(sz) 0
        !           208: #endif
        !           209: 
        !           210: 
        !           211: 
        !           212: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.