How to warm up before a race?



I've been riding on and off the past few years, but really only training properly and now racing MTB XC for the past 4 months, and this weekend will do my first road race. Be doing some criteriums in addition in the next few months as well.

Only problem is I think my warm up procedure is inadequate before the race, as I find it really takes the first 30 mins before I settle in and feel comfortable in a race.

All I have been doing really is going for a 20 min spin, keeping a highish cadence, and heart rate at about 70% max hr shortly prior to the start of the race to warm up.

My question is - how do you warm up for a race (specific routines?), and in particular for races which last only up to about 2 hours in duration? As I say I mostly do MTB XC, short road races and criteriums all of 2 hours duration or less at this stage of my riding so its important that I'm flying from the start to stay near the front, and need some suggestions on what I should be doing to warm up properly!
If the weather isnt going to be really hot,you can use a warm up balm on your legs.Nearly everybody in cold climates who race(like myself),need this on early sat/sun morning races.It penetrates deep into your muscles and gets them warmed up.

You should have a get a good warm up by spinning easy for 10mins or so,then gradually pick up the pace and gearing.Once you feel that your getting warmed,pick up the pace above race pace for a couple of seconds.This will get you ready for the race,so you body wont feel the shock as much.Remember to spin easy and back to the start of race.Try leave as little time as possible when waiting to start.Good warm up around 30/40mins.Can user trainer also.
My routine (right or wrong - I dunno) is:

10 mins at around 60%, 3 x 90% efforts around 2 minutes each (with about 5 minutes between each effort), 10 mins at 60%.

That should keep you warm for about 20 minutes...
For TT's you need to gradually go up to TT pace (best done on a turbo trainer) over about 15 mins but you'll need to experiment. This should be followed by 5 mins of slower riding. You should arrive at the start line with your HR still elivated.

The warm up should be specific (but not fatiquing), so the above could be used for XC as well. 90% of people warm up badly! Most people need to warm up for 20 to 30 mins before they can do a good 4Km pursuit!

The RR should be similar to above but include a couple of maximum efforts, these should be short in duration, explosive and in a easy gear to avoid fatigue.

You suggest that you don't feel ready until 30 mins into the race, why not do similar activities in the warmup so that you have done your '****' 30 mins before the start. A bit literal I know, but ilustrates the use of a warm up.
A warm up some of the pros I know use. Spin in 39-23 for 5 minutes at about 90rpm. Increase cadence(100 - 110rpm) in 21 for next 5 mins. When legs are warm change in to next gear for a minute keeping the cadence up. Repeat until in your 13/12 and then go back up the block. Spin around in a medium gear 39-15 for 5-10 minutes and throw in some very high cadence sprints (in same gear and big ring).
This is good example of a progressive warm up.
Do they perform it on a set of rollers (as it would be hard on the road)?
Also as these guys are pros wouldn't you recomend something less strenuous/more appropriate for the amature?
That warm up can be done on rollers or on the road. Helps if there's relatively flat road that you can ride on for a couple of minutes though. Most race starts head off into the country so not usually a problem.

For most cyclists just being on the bike and riding in small ring with a normal to high cadence (90 - 100rpm) for 20 - 30 minutes is effective. Add in a couple of very short but quite hard sprints to get the heart and legs pumping should do the trick.

My best warm up ride was when I left my 94.7 race number at home once and had to ride 25kms over a rolling course to collect it. I got back just in time for the race start but had to sneak into my starting pen without being detected by officials.
Oh I forgot to add. If you are waiting around in the starting group on a cold morning then make sure to carry on wearing leg warmers till the last few minutes. And in that time stretch those muscles. Not heavy stretching to start breaking down muscle fibres but hold just above where you feeling it starting to get tight.

Why am I the only rider doing this? I may look like a moron but at least I'm fairly happy at the start especially when there's a hill near the start. Most important muscle to stretch is the butt followed by the hammie & quad.