Jump to content


  • Content count

  • Joined

  • Last visited

About kode54

  • Rank
    InsanelyMac Protégé
  1. I managed to get it working, both with the distribution stock OVMF and the repository supplied OVMF. The issue with that was replacing the VARS image with the one matching the correct CODE image, or else it wouldn't boot at all. My XML: <domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'> <name>macOS High Sierra</name> <uuid>420e255f-cd8c-4938-a9a5-6d0d423c0d57</uuid> <memory unit='KiB'>16777216</memory> <currentMemory unit='KiB'>16777216</currentMemory> <memoryBacking> <hugepages/> </memoryBacking> <vcpu placement='static'>8</vcpu> <os> <type arch='x86_64' machine='pc-q35-2.10'>hvm</type> <loader readonly='yes' type='pflash'>/var/lib/libvirt/images/OVMF_CODE-pure-efi.fd</loader> <nvram>/var/lib/libvirt/qemu/nvram/macOS_VARS.fd</nvram> <boot dev='hd'/> </os> <features> <acpi/> </features> <cpu mode='custom' match='exact' check='partial'> <model fallback='allow'>Penryn</model> <topology sockets='1' cores='4' threads='2'/> <feature policy='require' name='invtsc'/> <feature policy='require' name='aes'/> <feature policy='require' name='xsave'/> <feature policy='require' name='avx'/> <feature policy='require' name='xsaveopt'/> <feature policy='require' name='smep'/> </cpu> <clock offset='utc'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>destroy</on_crash> <devices> <emulator>/usr/bin/qemu-system-x86_64</emulator> <disk type='file' device='disk'> <driver name='qemu' type='qcow2'/> <source file='/var/lib/libvirt/images/clover.qcow2'/> <target dev='hda' bus='sata'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk> <disk type='file' device='disk'> <driver name='qemu' type='qcow2'/> <source file='/var/lib/libvirt/images/mac_hdd.qcow2'/> <target dev='hdb' bus='sata'/> <address type='drive' controller='0' bus='0' target='0' unit='1'/> </disk> <controller type='usb' index='0' model='piix3-uhci'> <address type='pci' domain='0x0000' bus='0x02' slot='0x01' function='0x0'/> </controller> <controller type='sata' index='0'> <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/> </controller> <controller type='pci' index='0' model='pcie-root'/> <controller type='pci' index='1' model='dmi-to-pci-bridge'> <model name='i82801b11-bridge'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x1e' function='0x0'/> </controller> <controller type='pci' index='2' model='pci-bridge'> <model name='pci-bridge'/> <target chassisNr='2'/> <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/> </controller> <controller type='pci' index='3' model='pcie-root-port'> <model name='pcie-root-port'/> <target chassis='3' port='0x10'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/> </controller> <controller type='pci' index='4' model='pcie-root-port'> <model name='pcie-root-port'/> <target chassis='4' port='0x11'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/> </controller> <input type='mouse' bus='ps2'/> <input type='keyboard' bus='ps2'/> <hostdev mode='subsystem' type='pci' managed='yes'> <source> <address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <source> <address domain='0x0000' bus='0x01' slot='0x00' function='0x1'/> </source> <address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <source> <address domain='0x0000' bus='0x00' slot='0x14' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x02' slot='0x02' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <source> <address domain='0x0000' bus='0x00' slot='0x1a' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x02' slot='0x03' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <source> <address domain='0x0000' bus='0x00' slot='0x1d' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x02' slot='0x04' function='0x0'/> </hostdev> <memballoon model='none'/> </devices> <qemu:commandline> <qemu:arg value='-device'/> <qemu:arg value='isa-applesmc,osk=ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc'/> <qemu:arg value='-smbios'/> <qemu:arg value='type=2'/> <qemu:arg value='-cpu'/> <qemu:arg value='Penryn,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,+aes,+xsave,+avx,+xsaveopt,+smep'/> </qemu:commandline> </domain> Note the overriding CPU flags. I also had to leave out AVX2, since my CPU doesn't support that. It boots, it gets past hardware enumeration if I set Clover to boot in verbose mode, but when it gets to loading the hardware drivers, it fails to attach either my display or my USB interfaces, leaving them in a seemingly detached state. The displays shut off, the USB mouse disconnects, but my USB keyboard appears to recognize caps lock and toggles its state LED. There doesn't appear to be much I can do with the machine at that point. E: I managed to get it to boot, by configuring Clover with Graphics > RadeonDeInit, but now I have stuttering audio that I did not experience under my Windows VM. I assume that this stupid thing is too sensitive and needs CPU core isolation, which is total bullpucky.
  2. I have created a 10.13.3 install image, and installed to a 128GiB qcow2 image, using the Kholia/OSX-KVM boot-macOS-HS.sh script, doctored to use a bridge network interface, but I can't boot with a passthrough, and the libvirt image doesn't want to boot, either. The script I used: #!/bin/bash MY_OPTIONS="+aes,+xsave,+avx,+xsaveopt,+smep" qemu-system-x86_64 -enable-kvm -m 3072 -cpu Penryn,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,$MY_OPTIONS\ -machine pc-q35-2.9 \ -smp 4,cores=2 \ -usb -device usb-kbd -device usb-tablet \ -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ -drive if=pflash,format=raw,readonly,file=OVMF_CODE-pure-efi.fd \ -drive if=pflash,format=raw,file=OVMF_VARS-pure-efi-1024x768.fd \ -smbios type=2 \ -device ich9-intel-hda -device hda-duplex \ -device ide-drive,bus=ide.2,drive=Clover \ -drive id=Clover,if=none,snapshot=on,format=qcow2,file=./'Clover.qcow2' \ -device ide-drive,bus=ide.1,drive=MacHDD \ -drive id=MacHDD,if=none,file=./mac_hdd.img,format=qcow2 \ -device ide-drive,bus=ide.0,drive=MacDVD \ -drive id=MacDVD,if=none,snapshot=on,media=cdrom,file=./'HighSierra-10.13.3.iso' \ -netdev bridge,id=net0,br=br0,"helper=/usr/lib/qemu/qemu-bridge-helper" -device e1000-82545em,netdev=net0,id=net0,mac=52:54:00:c9:18:27 \ -monitor stdio The boot-passthrough.sh script, doctored to pass in my AMD RX 480, 01:00.0 and 01:00.1, and my USB interfaces, 00:14.0 00:1a.0 and 00:1d.0, using separate device lines, fails: qemu-system-x86_64: -device vfio-pci,host=01:00.0: vfio: error opening /dev/vfio/1: No such file or directory The non-working boot-passthrough.sh script I produced: #!/bin/bash qemu-system-x86_64 -enable-kvm -m 16384 -mem-prealloc -mem-path /dev/hugepages/macos -cpu Penryn,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on \ -machine pc-q35-2.9 \ -smp 8,cores=4 \ -vga none \ -device vfio-pci,host=01:00.0,id=hostdev0,bus=pcie.0,multifunction=on \ -device vfio-pci,host=01:00.1,id=hostdev1,bus=pcie.0 \ -device vfio-pci,host=00:14.0,id=hostdev2,bus=pcie.0 \ -device vfio-pci,host=00:1d.0,id=hostdev3,bus=pcie.0 \ -device vfio-pci,host=00:1a.0,id=hostdev4,bus=pcie.0 \ -usb -device usb-kbd -device usb-tablet \ -device isa-applesmc,osk="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc" \ -drive if=pflash,format=raw,readonly,file=OVMF_CODE-pure-efi.fd \ -drive if=pflash,format=raw,file=OVMF_VARS-pure-efi-1024x768.fd \ -smbios type=2 \ -device ide-drive,bus=ide.2,drive=MacHDD \ -drive id=MacHDD,if=none,file=./mac_hdd.img \ -netdev bridge,id=net0,br=br0,"helper=/usr/lib/qemu/qemu-bridge-helper" -device e1000-82545em,netdev=net0,id=net0,mac=52:54:00:c9:18:27 \ -monitor stdio And the libvirt script fails to boot it. I modified it to use 4 core, 8 thread, host CPU (i7 3770), no virtual graphics, passing through all of the devices mentioned above, and it simply boots to the Tianocore logo, spinning all 8 threads, then eventually getting stuck spinning only one core, without actually hitting Clover. I notice the libvirt scripts have been updated, but the boot-passthrough.sh script hasn't been updated in a few months. I would prefer to get this working with the libvirt method, as that's what I use to maintain my other virtual machines, including automatic startup on system boot, and automatic shutdown on host reboot or shutdown.
  3. Airport - PCIe Half Mini

    I found the cause of my problems. Clover needs its Airport fix to be disabled for the SSDT patch to work.
  4. Airport - PCIe Half Mini

    And yet it works just fine if I edit the 4360 kext plist to add the device ID 43b1 in the same place as 43a0. The only side effect is that it also seems to activate the 43224 kext, causing a kernel panic unless I remove it from my system on each system update. Are you sure this device isn't supported somehow? Or that perhaps Clover is messing with its device description?
  5. Airport - PCIe Half Mini

    It's not an Atheros card. It's this card, which is most definitely Broadcom: http://www.amazon.com/gp/product/B00HRFS1GQ/ref=oh_details_o01_s00_i00?ie=UTF8&psc=1 IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/RP05@1C,4/IOPP/ARPT@0 compatible = <"pci1a3b,2123", "pci14e4,43b1", "pciclass,028000", "ARPT"> IOName = "pci14e4,43b1"
  6. Airport - PCIe Half Mini

    1. Description of WiFi problem WiFi card does not appear, and according to IOReg, still lists its original compatibility field, after applying SSDT patch with Clover. 2. OS X version/motherboard model/BIOS version/processor/graphics 10.9.5 13F18 / MSI Z77A-GD65 / is this really necessary? / Core i5 3570K / Radeon R9 270X 3. Procedure/Guide Used Your SSDT guide. Opened 43xx patch, edited the RP04 to RP05, the PCI root ID that contains my card. 4. Copy of IOReg/IORegistryExplorer_v2.1.zip (View Raw) http://cl.ly/3T2y3N1L0S1g Console/All Messages/kernel airport - select/Save Selection As: Not sure what this means, as there is no "kernel airport" selection under All Messages, nor anything else. My kernel log is filling up with mdworker messages about Import: Bad path:, which is unrelated to this. DPCIManager/Status https://www.dropbox.com/s/ey9vprx6bem6t1u/Screenshot%202014-08-21%2002.45.07.png System Information/Hardware/Network/WiFi https://www.dropbox.com/s/17vzccqhntmd0ia/Screenshot%202014-08-21%2002.47.00.png Clover (if installed) 1. EFI/Clover/config.plist http://cl.ly/3u0A0E3R2d04 2. EFI/Clover/misc/debug.log (Set config.plist/Boot/Log/true) http://cl.ly/0A3Z0v0X2i1h EFI/Clover/ACPI/Patched/dsdt.aml Didn't touch this file. There is no dsdt.aml in my Clover configuration. EFI/Clover/ACPI/Patched/ssdt.aml (if WiFi edited) http://cl.ly/2x0p3a2c3C2i
  7. Airport - PCIe Half Mini

    Why yes, I do believe that is what the included cable is for.
  8. I forgot about PlistBuddy. Yeah, that'll do it much quicker and easier.
  9. sudo kextunload /System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns/AppleIntelE1000e.kext sudo vi /System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns/AppleIntelE1000e.kext/Contents/Info.plist Type: /NETIF_F_TSO<Enter> to find the relevant setting. Change the associated <true/> to <false/>, by moving the cursor to the /, pressing the i key to switch to insert mode, backspace the word, and type in false. Then press Escape, then :wq to write out the file and quit. Then you can reload it with: sudo kextload /System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns/AppleIntelE1000e.kext You're welcome to copy the plist out and make the change with Xcode, but I think that goes a little overboard. Nano -w is also fine, if you already know your way around search, edit, and save with that. As mentioned above, this feature will probably be disabled by default in future releases. Further disputing the usefulness of TSO, when it's already proven to be quite buggy. The fact that it's enabled by default on Windows for some newer chipsets does not mean that it suddenly works properly on older chipsets. Or even that it has been fully tested on newer hardware. Intel probably likes to use their install base as a testbed, then cleans up the mess with later driver releases. You're welcome to argue this, but perhaps for now, you could put a notice in the OP to disable this option if TX unit hangs are encountered, and for future versions, enable it at your own risk. You may also opt to make the edit and reboot instead of using the kextunload/kextload cycle, but I've found that a reboot is not entirely necessary to fix the hardware hang issue, now that I've already had to experience it a few times from attempting to back up over 40GB of data over even just a 100Mbps link. Since making this configuration change, I have been able to back up over 1TB of data over the same link without any errors.
  10. Thank you. I just thought I'd like to point out, that this feature is not broken through any fault of your own. It is likely broken in the hardware implementation, and that is why it is off by default. The fact that it can still be turned on in Windows is probably so know-it-alls can try to turn it back on, only to eventually discover why it was turned off in the first place. Linux team was probably independent of the Windows team, so was not aware of the design error, or hadn't dealt with it enough. I have an experienced and apparently wise Windows and Unix developer friend who even asked me about fragmentation offload when I told him about problems with my Intel NIC. Then one of our other friends tried turning it on with his Windows machine, and found his gigabit line throughput decreased by 9% when he did so, and turned it back off again. Incidentally, turning that off has fixed my lengthy copy operation, and I have not had any further TX unit failures since. At least experienced users may be interested to know that such a string of failures is soft recoverable, as the hardware appears to reset itself if the kext is unloaded and reloaded. Handy way to test out whether that TSO flag has any effect on things, at least.
  11. I was running with version 3.0.4, which I just swapped out with a kextunload, copied in the latest, and kextload-ed it. I'm awaiting results on this version, but with 3.0.4, when I attempted to run a Time Machine backup to my Time Capsule, or attempted to copy previous backups over my (unfortunately) 100Mbps link (spliced cable for reasons), it will eventually lose connection after about 13GB of transfer, due to the TX unit hardware hang. This may be relevant, including the fix, which is probably impossible to do on OS X: http://serverfault.com/questions/193114/linux-e1000e-intel-networking-driver-problems-galore-where-do-i-start Based on some feedback from a friend regarding Linux kernel drivers, how do I disable all of the "smart" features, like all the hardware offload things that are normally disabled by default in Windows? EDIT: Like Large Send Offload, which is buggy. (Ah, would that be TSO?) EDIT 2: It appeared again with the latest version. Yes, it does seem I can reset the device and try again by kextunload/kextload cycling it. And I disabled TSO this time, we'll see if it fixes my issue. Issue is specifically trying to copy 29 old local Time Machine backups to a newly purchased Time Capsule, totaling 130GB or 330k files, most of them mirrored throughout the set by the hard links that Finder is optimizing back into hardlinks on the target when it performs the copy. Somebody remind me again why TSO is enabled by default? Because the Linux driver does it? Note how the Windows driver disables it by default, and often times, it actually slows down the connection throughput.
  12. My system log is being flooded with this nonsense: Jul 29 22:17:30 Umaro blued[71661]: Release the WiFi lock Jul 29 22:17:30 Umaro blued[71661]: HID Page timeout 4000 Jul 29 22:17:31 Umaro blued[71661]: hciControllerOnline; HID devices? 1 Jul 29 22:17:31 Umaro blued[71661]: Acquiring the wifi lock Jul 29 22:17:31 Umaro blued[71661]: hostControllerOnline - Number of Paired devices = 1, List of Paired devices = ( "b8-78-2e-f0-e9-0b" ) Jul 29 22:17:31 Umaro coreaudiod[307]: 2014-07-29 10:17:31.039359 PM [AirPlay] BTLE client updated state: 3 (on) Jul 29 22:17:31 Umaro coreaudiod[307]: 2014-07-29 10:17:31.039458 PM [AirPlay] BTLE client stopping to browse for AirPlay Solo Target Presence. Jul 29 22:17:31 Umaro coreaudiod[307]: 2014-07-29 10:17:31.039548 PM [AirPlay] BTLE client starting to browse for AirPlay Solo Target Presence. Jul 29 22:17:31 Umaro coreaudiod[307]: 2014-07-29 10:17:31.039986 PM [AirPlay] BTLE client stopped to browse for AirPlay Solo Target Presence. Jul 29 22:17:31 Umaro coreaudiod[307]: 2014-07-29 10:17:31.040470 PM [AirPlay] BTLE client started to browse for AirPlay Solo Target Presence. Jul 29 22:17:31 Umaro blued[71661]: ****** properties = 0x118, permissions = 0x8, write? 0, w/o res? 0 Jul 29 22:17:31 Umaro blued[71661]: -[IOBluetoothHostController BroadcomHCILEResetAdvancedMatchingRules:matchingRemaining:]: unrecognized selector sent to instance 0x7fdaea41e6b0 Jul 29 22:17:31 Umaro blued[71661]: *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[IOBluetoothHostController BroadcomHCILEResetAdvancedMatchingRules:matchingRemaining:]: unrecognized selector sent to instance 0x7fdaea41e6b0' *** First throw call stack: ( 0 CoreFoundation 0x00007fff95572bec __exceptionPreprocess + 172 1 libobjc.A.dylib 0x00007fff8d47270e objc_exception_throw + 43 2 CoreFoundation 0x00007fff95575b1d -[NSObject(NSObject) doesNotRecognizeSelector:] + 205 3 CoreFoundation 0x00007fff954bd514 ___forwarding___ + 1028 4 CoreFoundation 0x00007fff954bd088 _CF_forwarding_prep_0 + 120 5 blued 0x0000000108c68a95 blued + 76437 6 blued 0x0000000108c68728 blued + 75560 7 Foundation 0x00007fff98502993 NSKeyValueNotifyObserver + 382 8 Foundation 0x00007fff98501b68 NSKeyValueDidChange + 463 9 Foundation 0x00007fff9850666d -[NSObject(NSKeyValueObserverNotification) didChangeValueForKey:] + 118 10 blued 0x0000000108c79708 blued + 145160 11 blued 0x0000000108ca91f1 blued + 340465 12 blued 0x0000000108c92cb1 blued + 249009 13 libxpc.dylib 0x00007fff934a8b09 _xpc_connection_call_event_handler + 58 14 libxpc.dylib 0x00007fff934a75cb _xpc_connection_mach_event + 1901 15 libdispatch.dylib 0x00007fff96037868 _dispatch_client_callout4 + 9 16 libdispatch.dylib 0x00007fff96038694 _dispatch_mach_msg_invoke + 400 17 libdispatch.dylib 0x00007fff96035ef2 _dispatch_queue_drain + 581 18 libdispatch.dylib 0x00007fff960372cc _dispatch_mach_invoke + 184 19 libdispatch.dylib 0x00007fff9603d410 _dispatch_main_queue_callback_4CF + 420 20 CoreFoundation 0x00007fff954c66f9 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 9 21 CoreFoundation 0x00007fff954827bd __CFRunLoopRun + 2173 22 CoreFoundation 0x00007fff95481cf8 CFRunLoopRunSpecific + 296 23 Foundation 0x00007fff98563649 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 278 24 Foundation 0x00007fff9865e1ff -[NSRunLoop(NSRunLoop) run] + 74 25 blued 0x0000000108c6dc99 blued + 97433 26 libdyld.dylib 0x00007fff8c0595c9 start + 1 ) Jul 29 22:17:31 Umaro coreaudiod[307]: 2014-07-29 10:17:31.313603 PM [AirPlay] BTLE client updated state: 1 (resetting) Jul 29 22:17:31 Umaro coreaudiod[307]: 2014-07-29 10:17:31.313698 PM [AirPlay] *** Re-setup BTLE on reset Jul 29 22:17:31 Umaro coreaudiod[307]: 2014-07-29 10:17:31.313761 PM [AirPlay] BTLE client stopping to browse for AirPlay Solo Target Presence. Jul 29 22:17:31 Umaro wirelessproxd[50]: trying to stop a scan while the central isn't available Jul 29 22:17:31 Umaro com.apple.xpc.launchd[1] (com.apple.blued[71661]): Service exited due to signal: Abort trap: 6 Jul 29 22:17:31 Umaro com.apple.xpc.launchd[1] (com.apple.blued): Service only ran for 0 seconds. Pushing respawn out by 10 seconds.
  13. Mavericks Realtek ALC AppleHDA Audio

    Here, have another IOReg, because I never get tired of redumping and uploading those. Also redownloading all 5.32GB of the Install OS X Mavericks.app, because the one I downloaded last week still had a 2.6.0f1 kext inside, unless I need to actually install it, or at least prepare boot media using myHack, to get at the 10.9.3 version of the AppleHDA.kext bundle. Umaro.ioreg.zip
  14. Mavericks Realtek ALC AppleHDA Audio

    Right, I changed the InjectKexts option from its default of Detect to Yes, and I will reboot in a moment. For now, here's the output of information on my AppleHDA.kext. du -h AppleHDA.kext > AppleHDA_du.txt find AppleHDA.kext -type f -exec ls -l {} \; > AppleHDA_ls.txt Do note that this is version 2.6.0f1, because Apple hasn't yet updated their Install OS X Mavericks.app past 10.9.2, and I would have to reinstall that and update to 10.9.3 again to get the "proper" 2.6.1 extension. AppleHDA_du.txt AppleHDA_ls.txt
  15. Mavericks Realtek ALC AppleHDA Audio

    What do you mean, not a native AppleHDA.kext? I packed it up directly from the installer. open /Applications/Install\ OS\ X\ Mavericks.app/Contents/SharedSupport/InstallESD.dmg open /Volumes/OS\ X\ Install\ ESD/BaseSystem.dmg cd /Volumes/OS\ X\ Base\ System/System/Library/Extensions ditto -ck --keepParent --sequesterRsrc --zlibCompressionLevel 9 AppleHDA.kext ~/Documents/AppleHDA.kext.zip And that's precisely what I uploaded in my last post. The patched kext is what I currently have in /S/L/E after running the ~/Downloads/audio_ALC898-master/cloverALC/audio_cloverALC898-90_patch.command from Finder, which merely inserted the modified layout files from 898.zip renamed to .zml.zlib. I'll attach screen shots and an IOReg from the current state of the system. If you want IOReg and screen shots from when I rebooted without any injection, and with just the native kext, I already attached those to a previous post. Current IOReg dump exported as Umaro.ioreg, packed to attached Umaro.ioreg.zip. Screen shot of System Information -> Hardware -> Audio -> Intel High Definition Audio attached. Bonus screen shot of Audio MIDI Setup thrown in, highlighting the one Line Input that registers, also attached. Umaro.ioreg.zip