Log into a Admin account on the machine and open your Applications/Utilities folder and launch Terminal program.
Paste this line in, press enter and enter your admin password, you might be lucky and not have to open the machine.
python -c “print ”.join(chr(int(c, 16) ^ 170) for c in ‘`sudo nvram security-password`’.split(‘%’)[1:])”
This should hopefully give you the firmware password, so write it down.
Reboot holding command and r keys down and under the Utilities menu is the firmware reset, so use the password and unlock it.
Now reboot and the reset PRAM should work.
If not then your going to have to remove one memory stick from the machine, reset the PRAM 5 times in a row by holding it down for 5 chimes, then shutdown the machine and reinsert the RAM, then boot normally.