This is a screenshot from my latest demo (available with source here:
http://esprit.campus.luth.se/~humus/ ).
It shows some perpixel phong lighting with shadowmapping. It's done through
a fragment program in OpenGL, so it requires a Radeon 9700.

The shadowmapping works for pointlights by rendering the radial distance
into a cubemap. To conserve memory and keep high precision I multiply it
with 256 and store the fraction in the red channel and the floor in the
blue channel. This is the extracted in the fragment program. This way I can
get 16bit precision even though I only have 8 bits / channel.