A few days ago I added flashrom support for the RayeR SPIPGM hardware by Martin Rehak. It is basically one capacitor and a few resistors attached to a classic parallel port cable, and you can use it to reflash SPI chips. Many recent mainboards from MSI, Gigabyte, VIA and other vendors have either removable SPI flash chips or a JSPI/JSPI1/SPI header where you can attach RayeR’s programmer to perform a BIOS recovery. See http://rayer.ic.cz/elektro/spipgm.htm for schematics and instructions.
If you want to test it, compile flashrom version 0.9.2-r1093 or later. RayeR support is enabled by default. To invoke the RayeR driver, run
flashrom -p rayer_spi
The current rayer_spi driver is a bit slow, and I created a patch which uses pin value caching to speed up the driver in flashrom by a factor of two, matching the speed of RayeR’s original utility. If you want to test that patch, get it at http://patchwork.coreboot.org/patch/1666/. That patch also adds the ability to specify the I/O base address of your parallel port in case you have more than one or yours is at a non-standard address (i.e. not 0×378).