code: public void initControllers() throws SlickException {
  		if (controllersInited) {
  			return;
  		}
  		
  		controllersInited = true;
  		try {
  			Controllers.create();
  			int count = Controllers.getControllerCount();
  			
  			for (int i = 0; i < count; i++) {
  				Controller controller = Controllers.getController(i);
  
  				if ((controller.getButtonCount() >= 3) && (controller.getButtonCount() < MAX_BUTTONS)) {
  					controllers.add(controller);
  				}
  			}
  			
  			Log.info("Found "+controllers.size()+" controllers");
  			for (int i=0;i<controllers.size();i++) {
  				Log.info(i+" : "+((Controller) controllers.get(i)).getName());
  			}
  		} catch (LWJGLException e) {
  			if (e.getCause() instanceof ClassNotFoundException) {
  				throw new SlickException("Unable to create controller - no jinput found - add jinput.jar to your classpath");
  			}
  			throw new SlickException("Unable to create controllers");
  		} catch (NoClassDefFoundError e) {
  			// forget it, no jinput availble
  		}
  	}
docs: Initialise the controllers system
  
  @throws SlickException Indicates a failure to use the hardware