Author Topic: megawolf cards intended for use only with FREEMIDI *NOT* Opcode OMS  (Read 6536 times)

supernova777

  • Guest
http://web.archive.org/web/19990505184713/http://www.hinton.demon.co.uk/mac/macmidi.html

this page makes reference to the megawolf cards being intended to be used with FREEMIDI instead of OMS.. 
running FREEMIDI in "oms" compatibility mode... but not installing opcodes OMS at all.

this article also provides insight into the midi subsystem on the macintosh

Quote
"Why is MIDI timing on a Mac so bad?"

The Macintosh has been around almost as long as MIDI itself and has long been the computer of choice by the majority of music industry professionals. Why then is timing accuracy that leaves a lot to be desired tolerated?
Firstly, there is not much choice, whatever criticism can be levelled against the Mac other platforms are worse - far worse! Secondly, until recently there was nothing much that could be done about it.

The Problem

The original Macintosh only had two serial ports and only ran one application at a time. Although it had an advanced USART, the Zilog Z8530 SCC, it was incapable of being set to the correct baud rate for MIDI use so an external clock had to be supplied. The SCC was also the poor relation in terms of interrupting the CPU and there were some strange tricks to keep it working during disk accesses. As the Macintosh design advanced the serial communications capability did not improve correspondingly and even got worse. With the introduction of System 7 when multitasking was no longer optional and the increase in demand in serial communications for the Internet, the Printer and Modem ports became oversubscribed.
To meet the demand for more and more MIDI ports the "Multiport Interface" evolved, but this brought a whole new range of problems. All data passing through them was delayed (twice if coming in and then out) and a bottleneck was created between the interface and the serial port. The larger the system and the more MIDI traffic the worse the performance.

From the time of the Centris 660av through to the Power Macintosh 8100/110 (1993-1994) the SCC was integrated into an Apple ASIC with a DMA controller supported by a SerialDMA driver. However the first design was flawed and it is essential to ensure that SerialDMA 2 is used. Later Power Macintoshes up to the beige G3s have an improved ASIC. For the full story lookup Technote 1018 on Apple's web site. To make matters worse the SerialDMA bugs were especially bad for high data rates with Xon/Xoff handshaking which is just what the Multiport Interfaces require. This episode led to to all sorts of myths like "MIDI can only work on one port on a Power Mac".

On early (<100MHz) Power Macintoshes much of the serial support was still 68k code run under emulation so it was actually running slower than on the models it superceded. Even on later Power Macintoshes and even with OS 8.5 which is "95% native" the Device Manager serial support is still 68k code. Every time the PPC switches between 68k code and native code up to 50 microseconds is wasted (depending on model and OS version) and this may happen several times for every MIDI byte transmitted and received. This can seriously limit the CPU bandwidth available for other important tasks like audio processing.

Although modern computers are very good at processing large amounts of data at high rates they only do it on their own terms. They can handshake and retry when an error occurs and normally the user is unaware that this is even happening. However they are still poor at handling single events where there is no chance of a second try which is exactly what MIDI requires.

Apple's bombshell this year has been to throw away asynchronous serial communications altogether and to tell everybody to use USB while they had not yet been able to supply an USB Driver with a granularity of better than 4ms - which although adequate for computer devices is of no use for MIDI. A new driver was promised for "Spring" which has been further delayed now until "Summer" and even if the granularity is improved to the theoretical minimum of 1ms it is doubtful if this will be enough for serious MIDI usage, especially if timecode synchronisation is required as well.

The Solution

The solution has always been obvious - get more ports directly onto the main CPU bus, get rid of software routing devices and try to get a Note On from one place to another within 1 millisecond as originally intended.
Previous attempts to provide more ports on NuBus cards on 68k Macs failed to have suitable performance for MIDI applications. Now MegaWolf Inc. have introduced a PCI card with highly specified UARTs and fully native PPC software support so now the question is:

"Why is MIDI timing on a Mac so good?"

and the answer is:

Romulus & Remus PCI Serial Port Cards

Offline MacTron

  • Global Moderator
  • Platinum Member
  • *****
  • Posts: 2116
  • keep it simple
Re: megawolf cards intended for use only with FREEMIDI *NOT* Opcode OMS
« Reply #1 on: August 22, 2015, 09:01:33 AM »

running FREEMIDI in "oms" compatibility mode... but not installing opcodes OMS at all.


I've never achieved to run OMS apps in Free Midi "OMS compatibility mode" without installing OMS itself ...
... and I have read that's impossible.
I'll will be really  glad to know how to do it.
Please don't PM about things that are not private.

supernova777

  • Guest
Re: megawolf cards intended for use only with FREEMIDI *NOT* Opcode OMS
« Reply #2 on: August 22, 2015, 09:03:53 AM »
definately a grey area.... that needs specialized expertise

Offline MacTron

  • Global Moderator
  • Platinum Member
  • *****
  • Posts: 2116
  • keep it simple
Re: megawolf cards intended for use only with FREEMIDI *NOT* Opcode OMS
« Reply #3 on: August 22, 2015, 09:58:24 AM »
Some info:

"Digital Performer 3 ships with FreeMIDI 1.4 or later. This version includes OMS compatibility (not OMS emulation as in previous versions of FreeMIDI). OMS compatibility offers the advantage of the IAC bus (interapplication sync with other OMS applications)."

... so if we want a real OMS emulation we have to go to a version older than 1.4.
Now I begin to understand the issue I had. LOL

Please don't PM about things that are not private.

Offline MacTron

  • Global Moderator
  • Platinum Member
  • *****
  • Posts: 2116
  • keep it simple
Re: megawolf cards intended for use only with FREEMIDI *NOT* Opcode OMS
« Reply #4 on: August 22, 2015, 10:11:41 AM »
Confirmed!
It worked. OMS applications are running without OMS extension installed. With FreeMIDI 1.3.6 emulating OMS :)
Please don't PM about things that are not private.

supernova777

  • Guest
Re: megawolf cards intended for use only with FREEMIDI *NOT* Opcode OMS
« Reply #5 on: August 22, 2015, 10:14:35 AM »
that page reccommended FreeMidi v1.38 for use with the megawolf pci cards

macStuff

  • Guest
Re: megawolf cards intended for use only with FREEMIDI *NOT* Opcode OMS
« Reply #6 on: November 28, 2017, 04:53:01 PM »
any chance Mactron, that you could post the freeMidi v1.3.6 driver? ive not been able to find this version available to download anywhere online

im guessing this v1.3.6 is from 1998?

http://www.motu.com/techsupport/technotes/document.2000-04-14.9182637522
this document further describes using both freemidi + OMS

Offline MacTron

  • Global Moderator
  • Platinum Member
  • *****
  • Posts: 2116
  • keep it simple
Re: megawolf cards intended for use only with FREEMIDI *NOT* Opcode OMS
« Reply #7 on: November 30, 2017, 01:30:20 PM »
any chance Mactron, that you could post the freeMidi v1.3.6 driver? ive not been able to find this version available to download anywhere online

im guessing this v1.3.6 is from 1998?

http://www.motu.com/techsupport/technotes/document.2000-04-14.9182637522
this document further describes using both freemidi + OMS

OK, No problem,  :)
Here it is (attached):
Please don't PM about things that are not private.