Have a look at one of the Tacx trainers;
http://www.tacx.com/en/products/trainers/i-flow
You will need a powerful computer with a good video card, processor and RAM to run it well.
Even if you need to buy a new computer to run it, it might work out cheaper and have better features. You can use it as a basic ergo trainer with all the data you need plus resistance, or you can do VR rides which looks like a computer game and allows you feel the slope of the hills on the course, steer, and compete against 'bots', previous versions of yourself, and also other real riders whose data you can import. You can create or import rides then do them in Google Earth, including 'street view', again, the electronic braking will read the slope and apply resistance. You can buy tacx DVDs, of Mont Ventoux for example, and watch the route in HD whilst riding against the slope. You can ride against real opponents both live online, or by importing their data to ride against.
As an increasingly fair weather cyclist I found it to be an enjoyable and effective way of training over the past chilly winter.