Mac OS 9 Lives

Mac OS 9 Discussion => Development & Programming => Topic started by: teroyk on November 29, 2017, 02:28:23 PM

Title: All the ways to support MIDI-ports in your Mac OS 9 programs
Post by: teroyk on November 29, 2017, 02:28:23 PM
UPDATED v.1.1

All the ways to support MIDI-ports in your Mac OS 9 programs:

Direct to Serial port low level programming:
You should not use this in Mac OS 9.
more about that:
http://macos9lives.com/smforum/index.php/topic,4073.0.html

Motu Midi Time Piece:
First this was advanced protocol to use multi port MIDI interfaces
directly with serial ports. Later this protocol is supported many multiport
serial interface drivers, but programmer has to use OMS or Freemidi.
Not more about this, low level documentation missing.

Apple Midi Manager:
Old, but good and flexible way to support MIDI. You can support
OMS and Freemidi with AMM too.
More about that:
http://macos9lives.com/smforum/index.php/topic,4063.0.html

Opcode OMS:
Most used way, but not the best way.
More about that:
http://macos9lives.com/smforum/index.php/topic,4082.0.html

Motu FreeMidi:
The last versions get full use of Mac OS 9 and PPC.
not yet more about this, SDK missing, but Motu has given it for some developers!!

QuickTime Music Architecture:
More about use playing MIDI with Quicktime virtual instrument, but it can be used with Midi Manager and/or OMS with real hardware ports.
More about that:
https://web.archive.org/web/20001117165900fw_/http://developer.apple.com:80/techpubs/quicktime/qtdevdocs/RM/tp_rm_qtma.htm

USB class compliant protocol:
I don't know is there any drivers for Mac OS 9 that actually is generic USB MIDI driver,
but there is generic USB audio drivers, so I don't know any reason why there is not MIDI driver.
Documentation to this protocol: www.usb.org/developers/docs/devclass_docs/midi10.pdf

I try update this message later.
Title: Re: All the ways to support MIDI-ports in your Mac OS 9 programs
Post by: GaryN on November 29, 2017, 05:57:17 PM
Opcode OMS:
Most used way, but not the best way.
More about that:
http://macos9lives.com/smforum/index.php/topic,4082.0.html
OMS is the "most used way" precisely because it IS the best way. What makes you think is isn't?
Apple happily abandoned MIDI development when OMS was introduced… bye bye MIDI Manager
FreeMIDI was / is a marketing strategy by MOTU to enable their own ecosystem without using Opcode tech.
Title: Re: All the ways to support MIDI-ports in your Mac OS 9 programs
Post by: macStuff on November 29, 2017, 06:08:33 PM
Motu FreeMidi:
The last versions get full use of Mac OS 9 and PPC.
not yet more about this, SDK missing, but Motu has given it for some developers!!

https://www.sweetwater.com/sweetcare/articles/motu-issue-developer-kit-for-freemidi-mas-unisyn-profile/
http://www.motu.com/techsupport/technotes/how-to-get-a-developer-kit
Title: Re: All the ways to support MIDI-ports in your Mac OS 9 programs
Post by: teroyk on December 05, 2017, 01:11:01 PM
Opcode OMS:
Most used way, but not the best way.
More about that:
http://macos9lives.com/smforum/index.php/topic,4082.0.html
OMS is the "most used way" precisely because it IS the best way. What makes you think is isn't?
Apple happily abandoned MIDI development when OMS was introduced… bye bye MIDI Manager
FreeMIDI was / is a marketing strategy by MOTU to enable their own ecosystem without using Opcode tech.

Apple stopped Apple MIDI Manager, because Apple Records lawyers asking stop and original developers go away.
Luckily makers of version 2.0 think that Apple computers can change a lot and they make it very flexible.
But you can read from documents that Apple keeping testing that it works with Mac OS 8.6 PPC and Quiktime 4,
but sadly because it works so fine they didn't make new version and they left 68k code in it.
And I have tested that it works fine with Mac OS 9.2.2, but you need also OMS and/or Freemidi for support USB and Firewire ports with AMM,
because I think nobody has make modern drivers. But I think that best thing in it is that you can use it with OMS and Freemidi and some
interesting old software for AMM is there. And how many has noticed that last Emagic Logic 6 (OS 9 only) has support for AMM?

Even OMS 2.0 is originally made for System 7 68k and serialports, but luckily last versions is fixed to work with Mac OS 8.6 PPC (but there is left some 68k code) and USB, but it can very buggy sometimes with Mac OS 9 especially with two USB devices. It is most used because it has lot of drivers and software.

From start Freemidi was marketing strategy as you said, but when OMS developing stops MOTU has to continue someway
and it's last versions are only MIDI ecosystems that are made for PPC and Mac OS 9 and it dosn't think that macs has serial port, but it has good support for PCI serial cards.
And if you get it work with your devices, it works very well in Mac OS 9. But there is not many softwares and devices that support

So what is the best? None. Or actually best is direct serialport programming if Mac has build-in serialport and if you use only one MIDI-device and if you use only one program :)
Second best might be Midi timepiece protocol, but it also has many ifs..
So I think we should make new version of Midi Manager, because there user can choose what to use.


Title: Re: All the ways to support MIDI-ports in your Mac OS 9 programs
Post by: MacTron on December 06, 2017, 07:50:49 AM
A few things:
#1 You are forgetting MidiShare.
#2 ... and MROS. Steinberg Midi Real Time Operating System.

So I think we should make new version of Midi Manager, because there user can choose what to use.

#3 Not really, I was a fan of AMM, but I was forced to use the horible OMS because most of the software I use, works with OMS. So enhacing AMM -unfortunatelly- has no meaning to me and most of us.
Title: Re: All the ways to support MIDI-ports in your Mac OS 9 programs
Post by: teroyk on December 06, 2017, 10:35:17 AM
A few things:
#1 You are forgetting MidiShare.
#2 ... and MROS. Steinberg Midi Real Time Operating System.

So I think we should make new version of Midi Manager, because there user can choose what to use.

#3 Not really, I was a fan of AMM, but I was forced to use the horible OMS because most of the software I use, works with OMS. So enhacing AMM -unfortunatelly- has no meaning to me and most of us.

Oh, I forget Midishare and I didn't know that Steinberg used MROS also with Mac.
#3 But how about if we enhacing/rewrite AMM that you can use OMS calls directly with it, too. I don't say it is easy, but its not impossible.

Hmm.. I cannot edit that first post anymore :(

so

More about Midishare: http://macos9lives.com/smforum/index.php?topic=601.0

But does anybody have programming documents about MROS?