[Support] SpaceinvaderOne - Macinabox


Recommended Posts

I have been using Macinabox Monterey on my Unraid for a long time and now I would like to connect my macOS to a monitor without VNC,

 

After a lot of research, I decided AMD Radeon HD 7770, I Dump the Vbios self and also assigned it in Unraid, but when I start it, the VM goes to a CPU 100% and it doesn't run, also downloaded Bios Dump from TechpowerUP same issue.

 

As a test I assign the macOS the Graphics card from my Windows VM, it is an Nvidia Quadro P600, this works, I get screen on the Monitor, but since High Sierra there has been no Nvidia driver for macOS.

 

Tested the AMD HD 7770 on Windows VM with self generated and Downloaded Bios Dump it Works be fine.

 

On the Dortania page I read that I have to include the following in the config.plist "radpg=15" (Fixes initialization for HD 7730/7750/7770/R7 250/R7 250X), I did that too, but still no success.

 

On the Dortania page there is also the following about this AMD HD 7770 card --> InjectAMD: While deprecated, some users require this for proper initialization, avoid unless absolutely necessary,

I didn't understand what is meant by that --> InjectAMD, can anyone comment on it , would be super nice :)

 

My XML --> (Don't be unsettled by the name of the machine in the xml, I'll have to rename it later, I installed BigSur first and then updated it to Monterey)

Spoiler

<?xml version='1.0' encoding='UTF-8'?>
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  <name>Macinabox BigSur</name>
  <uuid>0c84f110-2682-48e5-aad4-1bb2558f7e84</uuid>
  <description>MacOS Big Sur</description>
  <metadata>
    <vmtemplate xmlns="unraid" name="Windows 10" icon="default.png" os="osx"/>
  </metadata>
  <memory unit='KiB'>8388608</memory>
  <currentMemory unit='KiB'>8388608</currentMemory>
  <memoryBacking>
    <nosharepages/>
  </memoryBacking>
  <vcpu placement='static'>8</vcpu>
  <cputune>
    <vcpupin vcpu='0' cpuset='4'/>
    <vcpupin vcpu='1' cpuset='12'/>
    <vcpupin vcpu='2' cpuset='5'/>
    <vcpupin vcpu='3' cpuset='13'/>
    <vcpupin vcpu='4' cpuset='6'/>
    <vcpupin vcpu='5' cpuset='14'/>
    <vcpupin vcpu='6' cpuset='7'/>
    <vcpupin vcpu='7' cpuset='15'/>
  </cputune>
  <os>
    <type arch='x86_64' machine='pc-q35-4.1'>hvm</type>
    <loader readonly='yes' type='pflash'>/mnt/user/system/custom_ovmf/Macinabox_CODE-pure-efi.fd</loader>
    <nvram>/etc/libvirt/qemu/nvram/0c84f110-2682-48e5-aad4-1bb2558f7e84_VARS-pure-efi.fd</nvram>
    <boot dev='hd'/>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-passthrough' check='none' migratable='on'>
    <topology sockets='1' dies='1' cores='4' threads='2'/>
    <cache mode='passthrough'/>
    <feature policy='require' name='topoext'/>
  </cpu>
  <clock offset='localtime'>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='hpet' present='no'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/local/sbin/qemu</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='writeback'/>
      <source file='/mnt/virtualmachines/VirtualMachines/Macinabox BigSur/macos_disk.img'/>
      <target dev='hdc' bus='sata'/>
      <address type='drive' controller='0' bus='0' target='0' unit='2'/>
    </disk>
    <controller type='pci' index='0' model='pcie-root'/>
    <controller type='pci' index='1' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='1' port='0x8'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0' multifunction='on'/>
    </controller>
    <controller type='pci' index='2' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='2' port='0x9'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <controller type='pci' index='3' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='3' port='0xa'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
    </controller>
    <controller type='pci' index='4' model='pcie-root-port'>
      <model name='pcie-root-port'/>
      <target chassis='4' port='0x13'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
    </controller>
    <controller type='sata' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
    </controller>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci2'>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x2'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:5f:d8:d4'/>
      <source bridge='br0'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target type='isa-serial' port='0'>
        <model name='isa-serial'/>
      </target>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <channel type='unix'>
      <target type='virtio' name='org.qemu.guest_agent.0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='tablet' bus='usb'>
      <address type='usb' bus='0' port='1'/>
    </input>
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <audio id='1' type='none'/>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
      </source>
      <rom file='/mnt/user/isos/AMD.Radeon.HD.7700.rom'/>
      <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='pci' managed='yes'>
      <driver name='vfio'/>
      <source>
        <address domain='0x0000' bus='0x04' slot='0x00' function='0x1'/>
      </source>
      <address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
    </hostdev>
    <hostdev mode='subsystem' type='usb' managed='no'>
      <source>
        <vendor id='0x24ae'/>
        <product id='0x2013'/>
      </source>
      <address type='usb' bus='0' port='2'/>
    </hostdev>
    <memballoon model='none'/>
  </devices>
  <qemu:commandline>
    <qemu:arg value='-usb'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='usb-kbd,bus=usb-bus.0'/>
    <qemu:arg value='-device'/>
    <qemu:arg value='************************'/>
    <qemu:arg value='-smbios'/>
    <qemu:arg value='type=2'/>
    <qemu:arg value='-cpu'/>
    <qemu:arg value='Penryn,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+avx2,+aes,+fma,+fma4,+bmi1,+bmi2,+xsave,+xsaveopt,+rdrand,check'/>
  </qemu:commandline>
</domain>

 

My System: MSI B550 Gaming Plus, Ryzen 3700X, 32GB DDR4 3200MHz Ram,

Windows 10 VM Passthrough´ed NVIDIA Quadro P600 Works fine.

issue, wold be like Passthrough AMD HD 7770 to macOS

 

I'm grateful for every tip and help

 

cYa BUSTER

 

 

Link to comment
22 minutes ago, BUSTER said:

I didn't understand what is meant by that --> InjectAMD, can anyone comment on it , would be super nice

 

InjectAMD

is a boot-arg you can add into the config.plist, but it's deprecated.

 

Not all 7770 work in mac os, enable logging to file in opencore config.plist and maybe you will find where/why it hangs.

Check that your gpu has uefi rom, or if you are using a vbios file check that the rom file has the uefi part.

Apply multifunction for gpu in the xml.

  • Like 1
Link to comment
8 hours ago, ghost82 said:

 

InjectAMD

is a boot-arg you can add into the config.plist, but it's deprecated.

 

Not all 7770 work in mac os, enable logging to file in opencore config.plist and maybe you will find where/why it hangs.

Check that your gpu has uefi rom, or if you are using a vbios file check that the rom file has the uefi part.

Apply multifunction for gpu in the xml.

 

https://prnt.sc/sxdEQ2N0i8v-

 

Okay.. after i have add radpg=15 in right place and found another Vbios file (Attached) from TechPowerUP issue solved,

now i can use the XFX Ghost Edition AMD HD 7770 in Monterey :)

thank you verry mutch ghost82 for assist

 

cYa BUSTER

 

 

XFX.GHOST.HD7770.1024.121106.rom

  • Like 1
Link to comment
1 hour ago, tasmith88 said:

I know that the docker script is outdated and doesn't work for Monterey, but it seems that some people have gotten it to work. Can someone walk me through doing this as I would like to get it going for myself? I would appreciate it. Thanks.

 

Monterey Install over MacInaBox not Possible, you must install BigSure, configured and after that must be start Update to Monterey

 

cYa BUSTER

Link to comment
3 hours ago, BUSTER said:

 

Ventura currently not possible, dont try to update from Monterey to Ventura i´ll will be destroy VM

 

cYa BUSTER

Appreciate it. One last question. I have the Radeon 6600XT GPU and trying to get the VM to start through there. Any help would be appreciated as it is stuck at the Apple logo and won't load. The boot-args I used was agdpmod=pikera. 

Link to comment
13 hours ago, BUSTER said:

and found another Vbios file

Just to add more info to this, when using a downloaded vbios file, always make sure that it corresponds to your gpu, especially for:

- amount of memory

- gpu clock

- memory clock

- memory type

- (memory brand)

- if running a vm with ovmf gpu must support UEFI

 

It's possible to use a different vbios (by different I mean same gpu model, but different brand) other than that of the real gpu, but the gpu will fail if these things do not match with the actual gpu.

Edited by ghost82
Link to comment
3 hours ago, ghost82 said:

Just to add more info to this, when using a downloaded vbios file, always make sure that it corresponds to your gpu, especially for:

- amount of memory

- gpu clock

- memory clock

- memory type

- (memory brand)

- if running a vm with ovmf gpu must support UEFI

 

It's possible to use a different vbios (by different I mean same gpu model, but different brand) other than that of the real gpu, but the gpu will fail if these things do not match with the actual gpu.

 

 

I have to say first that I don't have that much of a clue as to how to find out all this data you asked above, if you can help me how i check all these, i am happy to check this data together with you, you can log into my system via teamviewer and we can do it together apparently no problem.

 

you gave me a tip that the bios must be uefi capable, so I'm looking for another vbios rom, the vbios that i created myself with gpuz didn't work, on the techpowerup site there are 13 different vbios for the device XFX AMD AD 7770 Ghost Edition, none of them worked, then there are vbios from other manufacturers, the Powercolor.HD7770. 1024.121031.rom worked, so the graphics card has been put into operation, the system runs very well, drivers have been recognized and that counts for me.

 

cYa BUSTER

Edited by BUSTER
Link to comment
5 minutes ago, BUSTER said:

the vbios that i created myself with gpuz didn't work

Did you hex edit the gpu-z dumped file to remove the nvflash header?

When dumped with gpu-z rom files contain the so-called nvflash header, because with that header you will be able to flash that rom with the nvflash utility into the gpu.

With vms we do not need to flash the gpu, but qemu doesn't like that header, so you have to remove it; the rom must start with 0x55AA (hex)

Edited by ghost82
  • Like 1
Link to comment
7 minutes ago, ghost82 said:

Did you hex edit the gpu-z dumped file to remove the nvflash header?

When dumped with gpu-z rom files contain the so-called nvflash header, because with that header you will be able to flash that rom with the nvflash utility into the gpu.

With vms we do not need to flash the gpu, but qemu doesn't like that header, so you have to remove it; the rom must start with 0x55AA (hex)

 

no i didn't edit it with a hex editor, maybe that's the reason why it didn't work.

I did not know that must start with 0x55AA (hex)

thank you for give the info about qemu doesn't like that header.

 

cYa BUSTER

 

Link to comment
6 hours ago, tasmith88 said:

Have you been able to get a 6600xt GPU running on the Monterey VM? Every time I try, it isn't connecting. I have tried the boot-args as well. I have the ASUS ROG Strix OC 6600XT GPU and have also used the rom as well. Any help is appreciated.

 

macOS Monterey 12.1 Release Notes

Displays New Features, You can now use graphics cards that integrate the AMD Radeon RX 6600 XT GPU. (82532062)

must be check of your card runs with vbios from RX 6600 XT, also check waht has ghost82 saying about Vbios an Quemu dont likes nvflash header, so you have to remove it; the rom must start with 0x55AA (hex)

 

cYa BUSTER

Link to comment
1 minute ago, BUSTER said:

 

macOS Monterey 12.1 Release Notes

Displays New Features, You can now use graphics cards that integrate the AMD Radeon RX 6600 XT GPU. (82532062)

must be check of your card runs with vbios from RX 6600 XT, also check waht has ghost82 saying about Vbios an Quemu dont likes nvflash header, so you have to remove it; the rom must start with 0x55AA (hex)

 

cYa BUSTER

How would I go about finding and doing that?

Link to comment
2 hours ago, tasmith88 said:

How would I go about finding and doing that?

really ? we are here in SpaceinvaderOne - Macinabox Thread, he has so many tutorials uploaded on Youtube :D

 

look here Asus RX 6600 XT 8 GB BIOS --> Click with mouse

same bios Asus, ROG Strix OC, AMD Radeon RX 6600 XT, Micron VRAM (2428 / 2000)

 

cYa BUSTER

 

Edited by BUSTER
Link to comment
12 hours ago, BUSTER said:

really ? we are here in SpaceinvaderOne - Macinabox Thread, he has so many tutorials uploaded on Youtube :D

 

look here Asus RX 6600 XT 8 GB BIOS --> Click with mouse

same bios Asus, ROG Strix OC, AMD Radeon RX 6600 XT, Micron VRAM (2428 / 2000)

 

cYa BUSTER

 

Honestly didn't even to look and completely forgot about that video. I have tried that bios and it hasn't worked. I will keep looking to see what it going on. Thanks.

Link to comment
2 hours ago, tasmith88 said:

Honestly didn't even to look and completely forgot about that video. I have tried that bios and it hasn't worked. I will keep looking to see what it going on. Thanks.

 

okay.. i have checked for you the rom if theay starts with 055AA,

an it is so theay has not nvflash header, --> https://prnt.sc/b9SvA0ce3Zrj

try to use an other PCIe slot, ore try give the kart on Windows Machine with the rom

and take a screen about your boot-args and upload here.

 

cYa BUSTER

Link to comment
1 hour ago, BUSTER said:

 

okay.. i have checked for you the rom if theay starts with 055AA,

an it is so theay has not nvflash header, --> https://prnt.sc/b9SvA0ce3Zrj

try to use an other PCIe slot, ore try give the kart on Windows Machine with the rom

and take a screen about your boot-args and upload here.

 

cYa BUSTER

See the pic. If the rom is right, then I shouldn't have to add it to the VM itself as it should automatically load up correct?

image.png

Link to comment
1 hour ago, tasmith88 said:

See the pic. If the rom is right, then I shouldn't have to add it to the VM itself as it should automatically load up correct?

image.png

boot-args string is correct it should stay there, even with the right vbios the string must be stay

Try give the gpu to windows vm with the Vbios and test it of works in Windows, try same gpu from other manufactors vbios rom

 

cYa BUSTER

Link to comment
2 minutes ago, BUSTER said:

boot-args string is correct it should stay there, even with the right vbios the string must be stay

Try give the gpu to windows vm with the Vbios and test it of works in Windows, try same gpu from other manufactors vbios rom

 

cYa BUSTER

tried the gpu with windows and it also works. Just don't understand why it isn't working with the Macinabox VM. I created a FreeBSD VM following PAVO Hacintosh and when starting the VM, i get this error.

2BBF90C0-EAF6-4EFC-9251-2EB397B7A906 (1).jpg

Link to comment
1 hour ago, tasmith88 said:

tried the gpu with windows and it also works. Just don't understand why it isn't working with the Macinabox VM. I created a FreeBSD VM following PAVO Hacintosh and when starting the VM, i get this error.

2BBF90C0-EAF6-4EFC-9251-2EB397B7A906 (1).jpg

Got it to work, but sound is a little distorted. Will have to work on that and figure out what is going on there. Otherwise, I'm happy to see that Mac is running now. Thanks for your help. I had to bind the audio and video.

  • Like 1
Link to comment
  • 2 weeks later...

Hey All - I had an old version of macinabox running fine but wanted to upgrade OS systems - removed everything (appdata, domains, and custom_ovm files - but getting this weird state after installing OS (Big Sur or any other) - just goes back to an install window with MacOS Base System, OS Installer or Recovery DMG. Is there something I'm missing here?  If I click on any of those options it just dumps me to the installer again.

 

 

Screenshot 2022-12-30 200455.jpg

  • Like 1
Link to comment

This is my first foray into using a VM on unRAID and I'm following SpaceInvader One's video to do the installation of High Sierra.  However, when I get to the point of connecting with VNC, I get

 

Failed to connect to server

 

I'm sorry to be dense, but I'm not sure how to fix this.

 

Any help appreciated.

 

Thank you.

 

Kevin

Link to comment

First post to the forum and a fairly new Unraid user.  I have a W11 VM installed and recently installed a Big Sur VM using the awesome Macinabox app/process.  The Big Sur VM seems to be working just fine/without issue but with one exception.  Every time I shut the VM down and restart it, I receive the "Your computer was restarted because of a problem." error message.  Although the error pops up, everything still seemingly functions as expected.  I can click ignore in response to the error and the VM continues on without issue.  But, being slightly obsessive by nature, I can't just ignore this issue.  I have searched the forums and the interwebs high and low.  The only similar issue I came across actually prevented the VM from booting.  However, that is not my issue.

 

I am fully updated with my Unraid install, plugins, etc. and the version of Big Sur that was installed is 11.7.2.  The only deviation from the tutorial/posts in this thread that I seemed to have made anywhere along the way was to install an update to Safari that was a security fix through the System Settings application within the VM.  

 

Any help or insight would be greatly appreciated!  Thanks in advance!

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.