Making the Arduino Uno R3 an Snes9x emulator controller


I am attempting to connect my Uno to a computer and make the computer recognize it as a controller so I can use it in an emulator such as the Snes9x. I know that the Arduino can speak to the computer with a terminal program. However, how do I make it actually act as a controller? Where do I start searching? Also, I am not using normal Arduino programming, instead I am programming it with C. I google searched it, but I could only find the actual Arduino controller. Thanks in advance.