MIDI apps in BII

About BasiliskII, a 68k Mac emulator for Windows, MacOSX, and Linux that can run System 7.x through MacOS 8.1.

Moderators: Cat_7, Ronald P. Regensburg

Post Reply
KingVidiot
Student Driver
Posts: 13
Joined: Sun Aug 05, 2012 1:30 am

MIDI apps in BII

Post by KingVidiot »

I'm wondering if people are having any luck with MIDI sequencing apps in BII since MIDI in/out appears to be unsupported in Sheep Shaver. I also have a classic MIDI synth editor/librarian app that I would like to use to edit a few synths I have lying around. They never made a OSX version of the app.

I can get MIDI to go through my USB MIDI dongle using VMWare Fusion running WinXP on OSX, but I need to get the actual Mac side of things covered.
KingVidiot
Student Driver
Posts: 13
Joined: Sun Aug 05, 2012 1:30 am

Re: MIDI apps in BII

Post by KingVidiot »

No MIDI users on Basilisk II, huh?

Oh well, I'll try some more experiments to see what happens.
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: MIDI apps in BII

Post by adespoton »

http://www.emaculation.com/forum/search ... mit=Search

[edit] Oh, and just so you know: BII and SheepShaver have the same keyboard ADB emulation AFAIK (and no USB-> serial emulation). Your only hope for serial emulation is to pipe the modem and printer ports to some /dev/ shim -- possibly bluetooth, although that would be a bit tricky to set up. And having said that, MIDI depends on clock-synced devices, and so is not likely to work over a buffered "port" -- it needs a 0 latency direct serial connection.
KingVidiot
Student Driver
Posts: 13
Joined: Sun Aug 05, 2012 1:30 am

Re: MIDI apps in BII

Post by KingVidiot »

Damn, thanks for the update. :sad:

This is one major problem with Mac emulation. Too bad no one was around to champion the MIDI cause for either emulator back then.
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: MIDI apps in BII

Post by adespoton »

The problem is that with the low latency tolerance, you've got to tie the emulator to the host's hardware, which means re-writing the hardware emulation every time the hardware changes.

What would be a better solution is a MIDI driver for older Macs that could do BTMidi, and then a fake bluetooth driver to enable the emulators to talk serial over bluetooth. With these two things in place, you could then patch MIDI in over BTMidi. Because you're not going to have any luck getting a basic MIDI serial interface to function in any useful way.
yksoft1
Master Emulator
Posts: 394
Joined: Tue Aug 14, 2007 4:32 pm
Location: People's Republic of China

Re: MIDI apps in BII

Post by yksoft1 »

The problem using music-related applications in BII or SS is not connectivity, it's unstable timing...
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: MIDI apps in BII

Post by adespoton »

The problem using music-related applications in BII or SS is not connectivity, it's unstable timing...
Yes, as discussed elsewhere, the clocks won't stay synced, which is a usability issue -- but getting it to work at all is a separate connectivity issue.
KingVidiot
Student Driver
Posts: 13
Joined: Sun Aug 05, 2012 1:30 am

Re: MIDI apps in BII

Post by KingVidiot »

Hopefully it can be solved at some point.

It seems to be a trivial issue in VMWare running WinXP on the Mac, where I can send MIDI in and out of the VMWare environment to hardware/software on the Mac. It also has the USB support that the Mac emus are missing (USB MIDI interface works fine).

Why is the timing not an issue in the VMWare setup vs. the Mac emu setup?


Grrrr... :mad:
User avatar
adespoton
Forum All-Star
Posts: 4227
Joined: Fri Nov 27, 2009 5:11 am
Location: Emaculation.com
Contact:

Re: MIDI apps in BII

Post by adespoton »

KingVidiot wrote:Hopefully it can be solved at some point.

It seems to be a trivial issue in VMWare running WinXP on the Mac, where I can send MIDI in and out of the VMWare environment to hardware/software on the Mac. It also has the USB support that the Mac emus are missing (USB MIDI interface works fine).

Why is the timing not an issue in the VMWare setup vs. the Mac emu setup?
It's a trivial issue in VMWare because VMWare isn't emulating anything -- you're using the hardware clock on the host for the MIDI timing. The whole point of VMs is that they virtualize the machine layer by creating a shim layer that talks to actual hardware. A few bits need to be emulated here and there, but for the most part, you're using sandboxed memory on the host, and everything else is exposed to the VM as-is.

Compare that to an emulator, where the entire hardware set has to be implemented in software. Unless the actual hardware is fast enough, any emulation of a clock chip won't be constant -- and MIDI falls down pretty fast if the clocks get out of sync.

Now, it's possible to use the host's USB and clock hardware instead of emulating, but at some point you've got to patch that back into the emulated OS's toolbox calls, or the internal software still won't be able to access it. For input devices, that's not too difficult; USB devices are captured and their data is fed in as if it was from ADB devices, and just patches the coordinate system directly into the toolbox. But for MIDI, things would be a tad more difficult, as you have to deal with the sound manager, Quicktime, AND the system toolbox. It would be possible to patch it, but you're going to have to make BII be able to connect to the Audio/MIDI setup system as a MIDI client, and then pass that directly through to a set of MIDI channels in the guest OS, without any delay.

Does that help clarify the issue?
KingVidiot
Student Driver
Posts: 13
Joined: Sun Aug 05, 2012 1:30 am

Re: MIDI apps in BII

Post by KingVidiot »

Yes, thanks for further clarification.

It's possible but it's more work than most people would spend on a free project.
Given the correct setup and a lot of work, a current speedy Mac should be able to emulate and keep the timing. At least it's good to know it's possible.
Post Reply