Building custom gateware

Building custom PCILeech-fpga gateware for the Screamer.

Gateware is a more accurate term than Firmware for the code we put on the FPGA device.

An important part of cheating with a DMA device is building custom gateware. The device gateware is what makes or breaks you. If you try playing a game with the stock gateware, you may get banned. This is because the OS can probe your PCIe lanes and get some information about the devices plugged in. This is most often used to acquire the default device drivers when you plug a new USB expansion card in.

The PCILeech-FPGA Repo

The factory gateware for this device is for PCILeech. This gateware is open-source on GitHub. When building your first custom gateware, I highly recommend simply customizing this code. For now, Bastian and others have not come up with new approaches to detecting modified versions of this public gateware, so you should be safe.

Clone the repository and look into the ScreamerM2 directory. Here you will find detailed instructions on building and customizing the gateware for your device.

Xilinx Vivado WebPACK

In order to build the custom gateware, you need the free version of Xilinx Vivado. This is available on Xilinx's website. It is important that you download version 2020.2 or newer.

Building PCILeech Gateware

To start, I recommend testing your device before building and flashing custom gateware.

After you've confirmed the device works (or you're out of options and this is your only hope of making it work), you can follow the build instructions from the PCILeech-FPGA repo to use Xilinx. I believe it's best to start by building and flashing the factory gateware first, and then coming back to follow the advanced customization instructions.

If you would like to follow the customization instructions, you can learn more about them in the Device Spoofing section

Device Spoofing

After you've built your custom gateware, follow the instructions in the flashing custom gateware section.

Flashing custom gateware

Last updated