Things you'll need:
A USBasp dongle (http://www.aliexpress.com/item/WholeSale-New-USBASP-USBISP-AVR-Programmer-USB-ATMEGA8-ATMEGA128/676088426.html)
An AVR programmer (I used an arduino with an ISP sketch + AVRdude.)
A jack plug on a lead (assuming your radio has a jack trainer socket) I used some crappy old headphones.
Soldering Iron etc.
There are loads of different USBasp dongles out there, just make sure it's got an ATMEGA8, and you can get at the pins relatively easily. Luckily there's only one pin to reroute.
Step 1: Hacking (literally)
So first just scrape off the solder mask from the track coming from pin 12, then cut it so you can solder onto both sides.
Step 2: Rewiring
So just get a bit of wire and solder it in there! (It's the one on the left in the picture)
We then need to get the PPM signal into pin 12, so just solder a wire from the track to the NC pin. That conveniently gives us a ground and signal on the header.
Then just wire up an old jack plug so the tip is connected to NC and the base is connected to GND on the header.
Step 3: Programming
You'll now need an AVR programmer. Arduino has an example sketch called Ardunio ISP you can use with AVRdude.
Either way, hook up the MISO,MOSI,SCK,VCC,RST,GND lines on the header to the appropriate places (check the instructions for your programmer)
Program the attached hex binary onto the device. (This was modified off of PPM2USB to change the D+ pin over to D5, and to allow the device to enumerate even if a TX is not plugged in.)
Step 4: Have Fun!
On my 9x transmitter I had to change the "Shift Sel" to NEG in the setup page (page 2)
Then just plug it in a USB hole and a joystick appears!