Format of MIDI Service structure:
Offset	Size	Description	)
 00h	4 BYTEs	name of the structure ("MIDS")
 04h	DWORD	structure length
 08h 16 WORDs	patches loaded table bit field
 28h 16 BYTEs	for future expansion
---entry points (details???)---
 38h	DWORD	device check
		11h return available tones
		12h return TRUE/FALSE if patch is understood
		13h set preference
		14h allow/disallow voice stealing
		15h get FIFO sizes
		16h get DMA,IRQ
		17h get IO address
		18h get mem address
		19h get mem free
		80h-.. vendors can add DevChks above 0x80
 3Ch	DWORD	global reset
 40h	DWORD	MIDI msg
 44h	DWORD	poll MIDI
 48h	DWORD	preload patch
 4Ch	DWORD	unload patch
 50h	DWORD	timer tick
 54h	DWORD	get last error
		01h unsupported feature/function
		02h unknown patch type (see #00121)
		03h all tones are used
		04h messages are out of sync
		05h an incoming patch was incomplete
		06h an incoming patch couldn't be stored
		07h had to drop an incoming byte
		08h driver is failing a patch download
		80h-.. vendors specific errors
 58h	DWORD	Patch Block free callback
 5Ch	DWORD	MIDI byte avail. callback
SeeAlso: #00116,#00124