We've finally got some ideas about graphics and have without a doubt learned to draw simple shapes with graphics functions. However, before we go into some of the advanced stuff dealing with graphics we need to move to a somewhat unrelated but very important topic in programming. Of course, we're talking about input processing. Input for a PC based video game comes from 3 main devices: joysticks, keyboards, and mice. On the PC, the keyboard is the most widely available input device around with the mouse running neck-to-neck. This is a bit unfortunate for gamers since the joystick is the most popular input device for games. Of course, PC's were not designed to be game consoles and are certainly very poor in comparison to your average game console in terms of overall performance. However, we all know that the PC's can and are used as game machines and that joysticks are used on them as well, so we will go ahead and learn about the joystick interface with a PC.