I just purchased a BeamHit system. This is a laser device that is inserted into the barrel of the gun. When the gun is dry fired it emits a pulse of laser light that shows up momentarily on the special target. The latter can be programmed to beep when hit and to be active for only a pre-determined period of time (i.e. you have X secs to make the hit). This system makes a lot of difference to a dry fire session because you can see your hits. It's amazing how much a less-than-perfect trigger pull shows up.....
John Francis