Note: The following works in later versions of photoshop (cs3 and 4 for sure, 7 is right out)

Go to your Analysis menu (it is visible still right? you didn't use menu customization to hide it? good!). Move down to Set Measurement Scale, then choose Custom.


Now you can set your scale however you like! Be careful though, it's not immediately intuitive, I had to mess with it for awhile.. For example, you've decided your pixels are 1 mile across (typical regional map). In order to get the scale bar to display at a size you need I would recommend multiplying each value by 10 or 100 or something similar - saying 1px=1mile, you get a 1px length scale bar -)


So our example values:-
Pixel Length: 100
Logical Length: 100
Logical units: Miles

Then tell it Ok, or Save Preset if you think you will use it again.

Now the fun part, go back to the Analysis menu, then choose Place Scale Marker.

Under Length, if you place a 1 it will give you a 100 pixel line that represents 100 miles. If you put 2, you will get a 200 pixel line that represents 200 miles, and the text will update accordingly. The other options are entirely up to you (if you plan on making your own scale after you get the basics from this you may not need them).


Final result will give you the following:


Now, this is pretty basic, but where this really comes out is dealing with nonstandard lengths that are not so easy to calculate quickly.
For example, working at 1px equals 35 feet, setting it at those values gives you a 1 px line - so if we multiply each by 10 we get something useful - 10px=350feet. In this case, i set the placement value to 2 instead of 1 (no matter how hard i tried, i couldn't get that window to screenshot, argh) and got the results as shown:




In a lot of cases, we may want to do a completely different kind of scale as a final result, but this gives us a nice bar of the correct length to work with.