Skip to content

Useful guides from my other github repo.

Nicholas edited this page Jun 11, 2023 · 17 revisions

Creating your rom

To create a rom you would need to download the following tools in a windows machine (dualboot), if you are dualbooting from windows be sure to create a backup with cloning software i personally use acronis but you can use clonezilla if that's a thing; just be sure you have an addtional hard drive around and that drive has enough space for all partitions.

  1. Gpu-Z

Download GPU-Z here

click on what has been circled and click write to file, it will save it as a rom; be sure to save it to where arch has access to it otherwise you will have to create a mount point. For AMD users the process should be the same.

SavingBios

Viewing VBios from arch

To view the vbios from arch you will simply need to install nvidia-settings for nvidia users, then on the GPU tab you will be able to view the vbios.

FahGRWf

then do some google-fu site:techpowerup.com <vbios goes here>

Example site:techpowerup.com 86.04.99.00.06

AMD Users

You would have to try this tool, this does indeed work. just simply follow the instructions on how to save the vbios in linux, do not write.

Patching your ROM

NOTICE FOR APT (ubuntu/debian) Users Bless crashes and is NOT useable, for clearity sake you can just use hexed.it

  1. Go to this download link and download the ROM of your exact GPU (or do some google-fu).
  1. Once you have your rom downloaded, type in sudo pacman -S bless to download the hex editor to patch your rom.

  2. Open your ROM with the Bless hex editor, and as muta says: "This is where the real arcane s#!% happens."

  3. Press CTRL + F to search, and search for "VIDEO" as text.

  1. Then, delete everything before the "U.s" or "U.y" or whatever, and save your ROM as something simple (i.e: patch.rom).
  1. Once your ROM has been patched, open your terminal in the folder which you have your ROM saved in, and type in

    sudo mkdir /var/lib/libvirt/vbios/ && sudo mv <RENAME TO YOUR ROM>.rom /var/lib/libvirt/vbios
    

For Ubuntu/Debian Based it should be placed inside /usr/share/vgabios/, the config libvirt script for Ubuntu should create the dir for you if it doesn't exist, just place it there.

and make sure to rename to what you named your ROM.

  1. Then your ROM should be all patched and good to go!

GPU

  1. Add every PCI device which has to do with your graphics card to the VM.
  1. Pass through your audio device and your USB controller.
  1. usb redirect any usb devices that are having issues, i would redirect your headset for headset users and the mouse. add hardware > usb host device > the desired device

  2. USB redirect with evdev

archwiki

USB Host Redirection example

  1. Remember the ROM we patched? Well we're gonna use it now.

  2. Edit the XML of each passed through PCI device that has to do with your GPU and add the line
    <rom file="/var/lib/libvirt/vbios/<ROMFILE>.rom"/>.
    Make sure to rename ROMFILE to what you named your ROM.

  1. Lastly, remove every spice/qxl device from your virtual machine Note: Only do this after getting the proper drivers from windows update, otherwise your GPU will not work inside the VM.
  1. If you are using an NVIDIA graphics card, add these lines to your XML overview.
Clone this wiki locally