I'm working with ctypes on a bridge (?) from WiiUse; a new and improved PyWiiUse, but I'm having a problem:
When connecting to the wiimotes with the init function it gives me back an array with pointers. Every pointer points to a WiiMote structure, this all goes well. Now when trying to poll the wiimotes (check for events like button presses) it should edit the WiiMote structures where's button presses using bit-flags, but it doesn't. Here's a bit of code: wiimotes = pywiiuse.init(1) # connect to the wiimotes (...) pywiiuse.rumble(wiimotes[0], 1) # little example of how it works init function: def init(nwiimotes): c_array = wiimote_p * nwiimotes wiiusedll.wiiuse_init.restype = c_array return wiiusedll.wiiuse_init(c_int(nwiimotes)) Now I'm going to poll it: while True: if pywiiuse.poll(wiimotes, 1): i = 0 while i < 1: print 'EVENT:' print pywiiuse.is_pressed(wiimotes[0], pywiiuse.button['Right']) i += 1 pywiiuse.button['Right']is 0x0200 This is the is_pressed function: def is_pressed(dev, button): return (dev.contents.btns & button) == button To be honest: I have no idea what is_pressed actually does, but it should return True or False? After testing around a bit I found out that dev.contents.btns always equals 420. Martijn
-- http://mail.python.org/mailman/listinfo/python-list