So after a lot of research, here is the information for programming the BIOS over the SPI header using a simple cable and a few DOS tools.
Things you will need
4 x 150 Ohm Resistor
1 x D-Sub 25 pin Male connector
1 x 2x4 Female Header (Straight Pin)
1 or more Decoupling Capacitor (minimum 1uF)
1.5 ft of CAT5e cable
Matching Heat Shrink
Windows Computer With Windows 98 to Windows XP and LPT port
3VDC Power Source (I used 2 AAA batteries with a battery clip)
Intermediate to Advanced knowledge of windows/dos software
Mid level soldering skills.
CABLE CONSTRUCTION:
Trim your resistors down to leave enough lead to attach them to the D-SUB connector and the wire, then tin the leads.
Strip the CAT5e on both ends exposing the twisted pairs by 2 inches on each end.
Strip the twisted pairs about half an inch and tin the wires.
**Remember to add the heat shrink as you go to prevent crossed connections later.**
Solder (or crimp depending on your choice of D-SUB) the resistors to pins 7,8,9,10
Solder the following wires to the open end of the resistors on the D-Sub connector pins: Solid Blue wire to pin 7, Dotted Blue to Pin 8, Solid Green to Pin 9, Dotted Green to Pin 10.
Solder the Solid Orange wire to Pin 18
Solder one lead of the Capacitor and the Dotted Orange wire to Pin 1 of the Female Header (Use the side of the cable that is unused)
Solder the second lead of the Capacitor and the Solid orange wire to Pin 2 of the Female Header (Use the same side of the cable that was used for the Dotted Orange wire in the previous step)
Solder the remaining Solid Blue wire to Pin 3 of the Female Header
Solder the remaining Dotted Blue wire to Pin 4 of the Female Header
Solder the remaining Dotted Green wire to Pin 5 of the Female Header
Solder the remaining Solid Green wire to Pin 6 of the Female Header
Solder the Dotted Brown wire to Pin 7 of the Female Header.
Connect the Dotted Brown wire and the Dotted Orange wire to Positive side of the 3VDC power source (for this I used 2 AAA batteries. AC Power supplies that convert AC to DC will need to be filtered with more or stronger Decoupling Capacitors. This will vary by power supply.)
Cable Testing and BIOS Programming
Once your cable is complete, make sure the power supply is disconnected from the board then remove all extra items from the board (RAM, Processors, USB connections, add-in cards, ect.) This reduces the possibility of interference from other devices.
Connect the Female header of the cable to the SPI header of on the board. Make sure that the odd number pins (1,3,5,7) are on the side that has 4 pins. The even pins should be on the side that has 3 pins.
Connect the D-Sub connector to the LPT1 port of your working Computer.
Connect your 3VDC power supply to the cable.
Download SPIPGM
here. (Thanks Rayer)
Extract the contents of the zip file to C:\
Download and extract the BIOS of choice to the same folder. OEM BIOS can be found
here.
Open a command prompt (windows key + r then type 'cmd' and press enter)
Type 'cd c:\spipgm'
Type spipgmw -i
You should get something that resembles the following
(Will update picture later)
If you get an error, there is likely a problem with the cable, check your wiring and connections.
If you get an ID other than FFFFF0 then you are ready to flash.
1. Type 'spipgmw -u' (this enables writing on the chip)
2. Type 'spipgmw -e' (this erases the chip)
3. Type 'spipgmw -p yourbiosfile.bin'
4. Type 'spipgmw -v yourbiosfile.bin' (this verifies the information on the chip compared to the bios file you specify) - If you receive any errors during this step, you may not have a clean enough power source and will need to add stronger capacitors or your cable is damaged. Check these items then repeat steps 1 - 4 until there are no errors.
I will edit the rest of the information in later during the day.
Thanks to Rayer from
http://rayer.ic.cz for the progs and SPI info.
Thanks to Jack from the MSI forums for testing the SPI interface for MSI boards and posting his findings.
Much of the info here was taken or modified from
http://rayer.ic.cz/elektro/spipgm.htm Please check this page for more information concerning SPI programming on a variety of SPI chips.